Raspberry Pi to świetny, wszechstronny zestaw, zdolny do realizacji projektów tak różnorodnych, jak prowadzenie centrum multimedialnego, które może służyć jako radio. Ale ma jedną rażącą wadę: brak możliwości rozruchu z USB.
Cóż, aż do teraz.
Jeśli używasz Raspberry Pi 3 , możesz teraz zrezygnować z uruchamiania z microSD i zamiast tego uruchomić komputer z urządzenia USB. Może to być pendrive, dysk SSD z adapterem USB, a nawet pełnowymiarowy dysk twardy USB. Jest to znaczący postęp, więc przyjrzyjmy się, jak skonfigurować Raspberry Pi 3 do uruchamiania z USB.
Rozpocznij: Zainstaluj Raspbian i dodaj nowe pliki
Najlepiej zacząć ten projekt ze świeżą kopią Raspbian, więc pobierz Ostatnia wersja (używamy Raspbian Jessie ) oraz zainstaluj go w zwykły sposób . Jak tylko to zrobisz, bezpiecznie wyjmij kartę z komputera, włóż ją do wyłączonego Raspberry Pi i uruchom, zdalne łączenie przez SSH jak tylko się załaduje.
Zaloguj się (chyba że zmieniłeś domyślne dane uwierzytelniające ), a następnie uruchom następujące polecenia, które zastąpią domyślne
start.elf
oraz
bootcode.bin
pliki ze świeżo pobranymi alternatywami:
sudo apt-get update
sudo BRANCH=next rpi-update
Ta aktualizacja dostarcza dwa pliki do
/boot
informator. Po pobraniu plików przejdź do włączenia trybu rozruchu USB za pomocą:
echo program_usb_boot_mode=1 | sudo tee -a /boot/config.txt
To polecenie dodaje
program_usb_boot_mode=1
instrukcja do końca
config.txt
plik.
Po wykonaniu tej czynności musisz ponownie uruchomić Pi.
Następnym krokiem jest sprawdzenie, czy OTP – jednorazowa pamięć programowalna – została zmieniona. Sprawdź to z:
vcgencmd otp_dump | grep 17:
Jeśli wynik jest reprezentatywny dla adresu
0x3020000a
(Jak na przykład
17:3020000a
) to jak dotąd wszystko jest w porządku. Jeśli na tym etapie chcesz usunąć
program_usb_boot_mode=1
linia z
config.txt
Można to łatwo zrobić, edytując
config.txt
w nano:
sudo nano /boot/config.txt
Usuń lub skomentuj odpowiedni wiersz (z poprzedzającym #).
Przygotuj swoje urządzenie rozruchowe USB
Następnie podłącz sformatowaną (lub gotową do usunięcia) pamięć USB do wolnego portu w Raspberry Pi 3. Po włożeniu, przejdziemy do kopiowania systemu operacyjnego.
Rozpocznij od zidentyfikowania pamięci USB za pomocą
lsblk
Komenda.
W tym przykładzie karta SD jest
mmcblk0
gdy pamięć USB jest
sda
(sformatowana partycja to
sda1
). Jeśli masz podłączone inne urządzenia pamięci masowej USB, pamięć USB może być sdb, sdc itp. Po ustaleniu nazwy pamięci USB odmontuj dysk i użyj narzędzia podzielonego, aby utworzyć partycję 100 MB (FAT32) i partycję systemu Linux:
sudo umount /dev/sda
sudo parted /dev/sda
W monicie (rozłożonym) wprowadź:
mktable msdos
Możesz zostać poinformowany, że dysk jest w inny sposób zajęty. Jeśli tak, wybierz Ignorować , a następnie zwróć uwagę na ostrzeżenie informujące, że dane na dysku zostaną zniszczone. Jak wyjaśniono wcześniej, powinien to być dysk, który z przyjemnością usuniesz lub sformatujesz, więc zgódź się na to.
Jeśli napotkasz tutaj jakiekolwiek problemy, być może będziesz musiał przełączyć się na pulpit (albo ręcznie, lub przez VNC ) i upewnij się, że dysk jest odmontowany, przed wprowadzeniem polecenia mktable msdos w wierszu poleceń w oknie.
Kontynuuj w rozstaniu z następującymi:
mkpart primary fat32 0% 100M
mkpart primary ext4 100M 100%
print
Spowoduje to wyświetlenie pewnych informacji dotyczących dysku i nowych partycji. Przejdź do wyjścia parted za pomocą Ctrl + C, przed utworzeniem rozruchowego systemu plików i głównego systemu plików:
sudo mkfs.vfat -n BOOT -F 32 /dev/sda1
sudo mkfs.ext4 /dev/sda2
Następnie musisz zamontować docelowe systemy plików przed skopiowaniem bieżącego systemu Raspbian na urządzenie USB.
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
To ostatnie jest ostatnim poleceniem, które kopiuje wszystko, więc ukończenie zajmie trochę czasu. Czas na kawę!
Następnie należy odświeżyć klucze hosta SSH, aby utrzymać połączenie ze zrekonfigurowanym Raspberry Pi po rychłym restarcie:
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
Zauważ, że po sudo chroot (piątym poleceniu powyżej) przełączasz się na root, więc użytkownik zmieni z pi@raspberrypi do korzeń@raspberrypi aż wjedziesz do wyjścia na linii 8.
Przygotuj się na ponowne uruchomienie z USB!
Jeszcze tylko kilka rzeczy do uporządkowania, zanim Raspberry Pi będzie gotowe do rozruchu z USB. Musimy edytować
cmdline.txt
ponownie z wiersza poleceń za pomocą:
sudo sed -i 's,root=/dev/mmcblk0p2,root=/dev/sda2,' /mnt/target/boot/cmdline.txt
Podobnie należy wprowadzić następującą zmianę w fstab:
sudo sed -i 's,/dev/mmcblk0p,/dev/sda,' /mnt/target/etc/fstab
Jesteś wtedy gotowy do odmontowania systemów plików przed wyłączeniem Pi:
cd ~
sudo umount /mnt/target/boot
sudo umount /mnt/target
sudo poweroff
Zauważ, że to używa nowego
poweroff
polecenie jako alternatywa dla
shutdown
.
Po wyłączeniu Pi odłącz zasilanie przed wyjęciem karty SD. Następnie ponownie podłącz zasilanie - Twoje Raspberry Pi powinno teraz uruchamiać się z urządzenia USB! Aby uzyskać dalszą pomoc ze swoim Pi, sprawdź jak skonfigurować Wi-Fi i Bluetooth na Raspberry Pi 3 .
Facebook zaloguj się na inne konto
Gotowy do wypróbuj Raspberry Pi 4 ? Sprawdź jego funkcje i specyfikacje.
Udział Udział Ćwierkać E-mail Jak wyczyścić komputer z systemem Windows za pomocą wiersza poleceniaJeśli na komputerze z systemem Windows zaczyna brakować miejsca do przechowywania, usuń śmieci za pomocą tych szybkich narzędzi wiersza polecenia.
Czytaj dalej Powiązane tematy- majsterkowanie
- USB
- Malina Pi
Zastępca redaktora działu Security, Linux, DIY, Programming i Tech Explained oraz Really Useful Producent podcastów, z dużym doświadczeniem w obsłudze komputerów i oprogramowania. Christian jest współtwórcą magazynu Linux Format, majsterkowiczem Raspberry Pi, miłośnikiem Lego i fanem gier retro.
Więcej od Christiana CawleyaZapisz się do naszego newslettera
Dołącz do naszego newslettera, aby otrzymywać porady techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!
Kliknij tutaj, aby zasubskrybować