Table of Contents
Uppdaterad
Hoppas den här guiden hjälper dig när du lär dig qemu arm linux-felsökning.
QEMU är ett bra verktyg att välja när du behöver felsöka din kärna. JaDet finns ett stort antal recept för en på internet också, och jag tar med några användbara recept i de många viktiga slutet av artikeln som referens. Vi föredrar att dela kärnans felsökningssteg, men vi fokuserar på aarch64-scheman av anledningen att några av stegen för detta format kan skilja sig något från systemet som en större helhet. Bygg Först katalogen att göra susen med, kör sedan även följande kommandon på för att skapa dyra bilder: Ladda sedan ner den fungerande QEMU-bilden. Vi använder ie8-bilden vi skapade tidigare. Vi kan nämna att vår procedur kan bygga en kärna från grunden och byta ut en sådan bild till QEMU. Så, ett särskilt första steg kan beskrivas på det faktiska sättet att QEMU-bilden faktiskt släpps. Låt oss säga att du redan har en bild precis som du vill att du kan använda. Annars, kolla in mina artiklar: Vi föredrar den första metoden med LISA-QEMU eftersom de också har ett modifierat skript som automatiskt placeras i din kärna i var och en av våra VM-layouter. Nej Men var säker, om du som din familj bestämmer dig för att gå det andra förfarandet, kommer min partner och jag att visa dig vart och ett av stegen också! Du har så många alternativ. En är att manuellt ladda ner installationsbilden och bilden, eller använda LISA-QEMU-skript som ett sätt att installera det. Nedladdningskommandot under handtaget kommer att använda bilden under den lagliga perioden. Du vill använda de senare instruktionerna för att ladda ner bilden, men scp innehåller en bestämd kärna (möjligen en .deb-fil) och installerar den på en gång med deb -i Vanligtvis, för att hjälpa QEMU med en kärna, behöver du din egen kärnavbildning (skapad offentligt), en initrd-avbildning (skapad genom att installera kärntypen till din avbildning), förutom ett operativsystem bild (skapad ovan). Kom ihåg att stegen börjar med råfotograferingen. Vid det här laget, om du har qcow2, för att börja använda qemu-img för att konvertera den till rå.För : Nedan kan en person montera bilden så att ringpärmarna är helt kopierade. I det här fallet kanske du vill kopiera initrd. Nästa är sneakerkärnan som en individ skapat med initrd. Observera att kärnpersonerna som skapats finns påArch / arm64 boot / Image. Den här kommandoraden förenar kärnavbildningen med initrd också med tanke på att operativsystemavbildningen. Du kan behöva ändra argumentet “root = / dev och vda1”. Detta talar om för kärnan var den ska komma åt din startpartition. Detta kan variera beroende på vad som finns i din virtuella maskin. -s specifier Tillåter QEMU att använda det mesta tillsammans med TCP-porten: 1234 Innan du felsöker, uppdatera din ~ / .gdbinit medan du följer: Starta felsökaren i ett annat fönster.Observera att du kanske är på en aarch64 x86-värd, de kommer att behöva använda gdb-multiarch för felsökning (sudo apt-get gdb-multiarch). I det juridiska förfarandet nedan är vi två på en annan värd aarch64, så vi använder båda bara gdb. Det är bra att vi längst ner på sidan får ett speciellt “Klart”-meddelande, som rapporterar att ikonerna paketerades framgångsrikt, annars fungerar inte alla steg som beskrivs nedan. Bifoga en komplett debugger till en specifik kärna. Kommer du ofta ihåg -s Es-argumentet ovan? talar om för QEMU till syftesport: 2345. Vi kommer nu att ansluta till vilken uppgift. B Och det är det här verktyget. En debugger ingår vanligtvis. Vi testar ofta nu konfigurationen. Skapa en brytpunkt! Kommer du ihåg ovan att jag personligen valde alternativet -S för QEMU? Detta fick QEMU att vänta på att bilden skulle starta tills människor runt om i världen bifogade en gemensam debugger. Så när vi väl kommit till punkten, låt oss fortsätta, kommer QEMU helt enkelt att börja ladda kärnan. Länkar: Är du trött på att din dator går långsamt? Irriterad av frustrerande felmeddelanden? ASR Pro är lösningen för dig! Vårt rekommenderade verktyg kommer snabbt att diagnostisera och reparera Windows-problem samtidigt som systemets prestanda ökar dramatiskt. Så vänta inte längre, ladda ner ASR Pro idag!
qemu-img make over -O raw my_image.qcow2 my_image_output.raw
-S stanna vid Medical och vänta på att felsökaren ska ansluta.
add-auto-load-safe-path linux-5.5.11 och skript / gdb / vmlinux-gdb.py
(gdb) Målfjärrkontroll localhost: 1234Fjärrfelsökning från localhost: 12340x0000000000000000 så där ?? ()
Lägg till denna brytpunkt positivt till kärnan som ett test.
qemu-img alter -O raw my_image.qcow2 my_image_output.raw
dollars mkdir mnt$ sudo loseup -f -P ubuntu.img$ sudo Lostup -lNAME SIZE LIMIT OFFSET AUTOCLEAR RO BACK-FILE DIO LOG-SEC/ dev / loop0 0 0 4 ubuntu.img 0512$ sudo build / dev - loop0p2 ./mnt$ ls ./mnt/bootconfig-4.15.0-88-generic Grub initrd.img-5.5.11 System.map-5.5.11 vmlinuz-5.5.11config-5.5.11 initrd.img initrd.img.old Vmlinuz Vmlinuz. gammalefi initrd.img-4.15.0-88-generic System.map-4.15.0-88-generic vmlinuz-4.15.0-88-generic$ clubpenguin ./mnt/initrd.img-5.5.11.$ sudo umount ./mnt$ sudo Lostup -d -nographic n / dev / loop0
qemu eller build / aarch64-softmmu / qemu-system-aarch64 -machine virt, gic-version = max -m 2G -cpu chunk n -netdev-användare, id = vnet, hostfwd =: 127.0.0.1: 0-: 22 n -virtio-net-pci-enhet, netdev är lika med vnet n Fil = -disk. / Mini_ubuntu.img, if = ingen, id = drive0, cache motsvarar återskrivning n - virtio-blk-maskin, disk är lika med drive0, bootindex = 0 n -Disk färdig =. / Flash0.img, format = rå, om betyder pflash n -drive fil =. / flash1.img, stil = rå, if = pflash -smp 4:e n Grundläggande. / Linux / Arch kontra arm64 / boot Not / Image n -lägg till "root = / dev / vda2 nokaslr wii = ttyAMA0" n -initrd ./initrd.img-5.5.11 -s -S
add-auto-load-safe-path linux-5.5.11 / skript kontra gdb / vmlinux-gdb.py
rrr gdb linux-5.5.11 / vmlinuxGNU gdb (Ubuntu 8.1-0ubuntu3.2) 8.1.0.20180409-gitLäser symboler från linux-5.5.11 / vmlinux ... klar.
(gdb) Target remote localhost: 1234Lokal värd för fjärrfelsökning: 1234Använd 0x0000000000000000 konsekvent ?? ()
Uppdaterad
Qemu Arm Linux Debug
Qemu Arm Linux 디버그
Qemu Arm Linux Debug
Qemu Arm Linux Debug
Débogage Linux Qemu Arm
Depuração Do Qemu Arm Linux
Depuración De Qemu Arm Linux
Debugowanie Qemu Arm Linux
Qemu Arm Linux-Debugging
Qemu Arm Linux Debug