Hoe Raspberry Pi 3 opstarten vanaf USB

De Raspberry Pi is een veelzijdig stuk kit, geschikt voor een breed scala aan taken. Maar het heeft een flagrante fout: het onvermogen om vanaf USB op te starten. Tot nu toe, dat is het.

De Raspberry Pi is een veelzijdig stuk kit, geschikt voor een breed scala aan taken.  Maar het heeft een flagrante fout: het onvermogen om vanaf USB op te starten.  Tot nu toe, dat is het.
Advertentie

De Raspberry Pi is een geweldig, veelzijdig stuk kit, geschikt voor uiteenlopende projecten als het runnen van een mediacentrum om te gebruiken als een uitzendradio. Maar het heeft een flagrante fout: het onvermogen om vanaf USB op te starten.

Welnu, tot nu toe, dat is het.

Raspberry Pi 3 Shot door MakeUseOf

Als je een Raspberry Pi 3 gebruikt De Raspberry Pi 3: sneller, beter, met wifi en Bluetooth De Raspberry Pi 3: sneller, beter, met wifi en Bluetooth Vandaag heeft de stichting Raspberry Pi de release aangekondigd van de Raspberry Pi 3. Het is de meest significante update van de populaire lijn van goedkope computers tot nu toe. Lees Meer, het is nu mogelijk om van het opstarten van microSD af te zien en in plaats daarvan de computer op te starten vanaf een USB-apparaat. Dit kan een flash-stick zijn, een SSD met een USB-adapter of zelfs een USB-harde schijf van volledige grootte. Dit is een belangrijke ontwikkeling, dus laten we eens kijken hoe je je Raspberry Pi 3 kunt instellen om op te starten vanaf USB.

Aan de slag: Installeer Raspbian en voeg nieuwe bestanden toe

Het is het beste om dit project te starten met een nieuw exemplaar van Raspbian, dus download de nieuwste versie (we gebruiken Raspbian Jessie 5 manieren om nieuwe Raspbian Jessie te gebruiken Raspberry Pi nog gemakkelijker om 5 manieren te gebruiken Nieuwe Raspbian Jessie maakt Raspberry Pi nog gemakkelijker in gebruik de release van Debian Jessie in juli, is de Raspberry Pi-gemeenschap gezegend met een nieuwe versie van de Raspbian-variant, gebaseerd op de "ouder" distro Lees meer) en installeer het op de gebruikelijke manier Een besturingssysteem installeren op uw Raspberry Pi Een besturingssysteem installeren op uw Raspberry Pi Hier leest u hoe u een nieuw besturingssysteem op uw Pi kunt installeren en uitvoeren - en hoe u uw perfecte installatie kunt klonen voor snel noodherstel. Lees verder . Zodra dit is gebeurd, verwijdert u de kaart veilig van uw pc, plaatst u deze in de uitgezette Raspberry Pi en start u op, via SSH op afstand. Uw Raspberry Pi instellen voor gebruik zonder hoofd met SSH Uw Raspberry Pi instellen voor gebruik zonder hoofd SSH De Raspberry Pi kan SSH-opdrachten accepteren wanneer deze is aangesloten op een lokaal netwerk (via Ethernet of Wi-Fi), zodat u deze eenvoudig kunt instellen. De voordelen van SSH gaan verder dan het verstoren van de dagelijkse screening ... Lees meer zodra het wordt opgestart.

Aanmelden (tenzij u uw standaardreferenties heeft gewijzigd Uw Raspberry Pi beveiligen: van wachtwoorden tot firewalls Uw Raspberry Pi beveiligen: van wachtwoorden tot firewalls Iedereen kan Google gebruiken om de standaard gebruikersnaam en het wachtwoord van uw Raspberry Pi te vinden. Geef geen indringers die kans! Lees Meer) en voer dan de volgende opdrachten uit, die de standaardbestanden start.elf en bootcode.bin vervangen door vers gedownloade alternatieven:

 sudo apt-get update sudo BRANCH=next rpi-update 

Deze update levert de twee bestanden in de /boot directory. Met de gedownloade bestanden gaat u verder met het inschakelen van de USB-opstartmodus met:

 echo program_usb_boot_mode=1 | sudo tee -a /boot/config.txt 

Met deze opdracht wordt de instructie program_usb_boot_mode=1 aan het einde van het bestand config.txt .

Linux Terminal Boot Raspberry Pi 3 met USB

Je moet de Pi opnieuw opstarten als dit is gebeurd.

De volgende stap is om te controleren of het OTP - eenmalig programmeerbaar geheugen - is gewijzigd. Controleer dit met:

 vcgencmd otp_dump | grep 17: 

Als het resultaat representatief is voor het adres 0x3020000a (zoals 17:3020000a ), dan is alles goed tot nu toe. Als u in dit stadium de program_usb_boot_mode=1 uit het bestand config.txt wilt verwijderen, kunt u dit doen. De Pi is nu USB-opstartbaar en je zou dezelfde microSD-kaart in een andere Raspberry Pi 3 willen gebruiken met dezelfde afbeelding, dus het verwijderen van de lijn is een goed idee.

Linux Terminal Boot Raspberry Pi 3 met USB Nano Edit

Dit gaat eenvoudig door het bewerken van config.txt in nano:

 sudo nano /boot/config.txt 

Verwijder of becommentarieer de corresponderende regel (met een voorafgaande #).

Bereid uw usb-opstartapparaat voor

Sluit vervolgens een geformatteerde (of pasklaar te verwijderen) USB-stick aan op een vrije poort van uw Raspberry Pi 3. Met deze ingevoegd zullen we het OS overschrijven.

Begin met het identificeren van je USB-stick, met de opdracht lsblk .

Linux Terminal Boot Raspberry Pi 3 met USB LSBLK-opdracht

In dit voorbeeld is de SD-kaart mmcblk0 terwijl de USB-stick sda (de geformatteerde partitie is sda1 ). Als er andere USB-opslagapparaten zijn aangesloten, kan de USB-stick sdb, sdc enz. Zijn. Zet de naam van uw USB-stick vast, ontkoppel de schijf en gebruik de parted-tool om een ​​100 MB-partitie (FAT32) en een Linux-partitie te maken:

 sudo umount /dev/sda sudo parted /dev/sda 

Voer bij de (gescheiden) prompt het volgende in:

 mktable msdos 

Mogelijk wordt u erop gewezen dat de schijf op andere wijze is ingeschakeld. Als dit het geval is, selecteert u Negeren en noteert u vervolgens de waarschuwing dat de gegevens op de schijf worden vernietigd. Zoals eerder uitgelegd, zou dit een schijf moeten zijn die u graag wilt verwijderen of formatteren, dus stem hiermee in.

Als u hier problemen tegenkomt, moet u mogelijk overschakelen naar de desktop (handmatig of via VNC Een extern bureaublad uitvoeren op Raspberry Pi met VNC Een extern bureaublad uitvoeren op Raspberry Pi met VNC Wat als u toegang nodig hebt naar de Raspberry Pi-desktop vanaf je pc of laptop, zonder een toetsenbord, muis en monitor aan te sluiten? Hierin komt VNC binnen. Lees meer) en controleer of de schijf niet is gemount voordat je de opdracht mktable msdos invoert in een vensteropdracht lijn.

Ga verder met het volgende:

 mkpart primary fat32 0% 100M mkpart primary ext4 100M 100% print 

Hierdoor wordt wat informatie over de schijf en de nieuwe partities weergegeven. Ga verder met het verlaten van parted met Ctrl + C, voordat je het opstartbestandssysteem en het rootbestandssysteem aanmaakt:

 sudo mkfs.vfat -n BOOT -F 32 /dev/sda1 sudo mkfs.ext4 /dev/sda2 

Vervolgens moet u de doelbestandssystemen koppelen, voordat u uw huidige Raspbian OS naar het USB-apparaat kopieert.

 sudo mkdir /mnt/target sudo mount /dev/sda2 /mnt/target/ sudo mkdir /mnt/target/boot sudo mount /dev/sda1 /mnt/target/boot/ sudo apt-get update; sudo apt-get install rsync sudo rsync -ax --progress / /boot /mnt/target 

Die laatste is het laatste commando dat alles kopieert, en het duurt even voordat het voltooid is. Tijd om koffie te zetten!

Linux Terminal Boot Raspberry Pi 3 met USB-kopiëren

Vervolgens moet u de SSH-hostsleutels vernieuwen om de verbinding met de opnieuw geconfigureerde Raspberry Pi te behouden na een dreigende reboot:

 cd /mnt/target sudo mount --bind /dev dev sudo mount --bind /sys sys sudo mount --bind /proc proc sudo chroot /mnt/target rm /etc/ssh/ssh_host* dpkg-reconfigure openssh-server exit sudo umount dev sudo umount sys sudo umount proc 

Linux Terminal Boot Raspberry Pi 3 met USB SSH

Merk op dat na sudo chroot (het vijfde commando hierboven) je overschakelt naar root, dus de gebruiker zal veranderen van pi @ raspberrypi naar root @ raspberrypi totdat je exit op regel 8 invoert.

Bereid je voor op rebooten vanaf USB!

Nog een paar dingen om uit te zoeken voordat je Raspberry Pi klaar is om op te starten vanaf USB. We moeten cmdline.txt opnieuw bewerken vanaf de opdrachtregel met:

 sudo sed -i "s, root=/dev/mmcblk0p2, root=/dev/sda2, " /mnt/target/boot/cmdline.txt 

Op dezelfde manier moet de volgende wijziging in fstab worden aangebracht:

 sudo sed -i "s, /dev/mmcblk0p, /dev/sda, " /mnt/target/etc/fstab 

U bent dan klaar om het bestandssysteem te ontkoppelen voordat u de Pi afsluit:

 cd ~ sudo umount /mnt/target/boot sudo umount /mnt/target sudo poweroff 

Merk op dat dit de nieuwe poweroff opdracht gebruikt als alternatief voor shutdown .

Wanneer de Pi is uitgeschakeld, koppelt u de voeding los voordat u de SD-kaart verwijdert. Sluit vervolgens opnieuw de voeding aan - uw Raspberry Pi zou nu moeten opstarten vanaf het USB-apparaat!

Heb je dit geprobeerd? Geïntrigeerd door de mogelijkheden van een USB-boot in plaats van een SD-kaart? Wil je het eens proberen? Vertel ons in de reacties!

In this article