Raspberry Pi е страхотен, универсален комплект, способен да изпълнява толкова разнообразни проекти, като управление на медиен център, който да се използва като излъчващо радио. Но той има един очевиден недостатък: невъзможността за зареждане от USB.
Е, досега това е така.
Ако използвате Raspberry Pi 3, вече е възможно да се откажете от зареждането от microSD и вместо това да стартирате компютъра от USB устройство. Това може да е флашка, SSD с USB адаптер или дори пълноразмерен USB твърд диск. Това е значително развитие, така че нека да разгледаме как можете да настроите вашия Raspberry Pi 3 да се зарежда от USB.
Първи стъпки: Инсталирайте Raspbian и добавете нови файлове
Най -добре е да започнете този проект с ново копие на Raspbian, така че изтеглете последна версия (използваме Raspbian Джеси ) и инсталирайте го по обичайния начин . Веднага щом това стане, извадете безопасно картата от компютъра си, поставете я в изключената Raspberry Pi и стартирайте, дистанционно свързване през SSH веднага щом се зареди.
Влезте (освен ако не сте променили идентификационните си данни по подразбиране), след това изпълнете следните команди, които ще заменят стандартните
start.elf
и
bootcode.bin
файлове с току -що изтеглени алтернативи:
sudo apt-get update
sudo BRANCH=next rpi-update
Тази актуализация доставя двата файла в
/boot
директория. С изтеглените файлове продължете да активирате режима за зареждане на USB с:
echo program_usb_boot_mode=1 | sudo tee -a /boot/config.txt
Тази команда добавя
program_usb_boot_mode=1
инструкция до края на
config.txt
файл.
Ще трябва да рестартирате Pi, след като това стане.
Следващата стъпка е да проверите дали OTP-еднократно програмируемата памет-е променена. Проверете това с:
vcgencmd otp_dump | grep 17:
Ако резултатът е представителен за адреса
0x3020000a
(като
17:3020000a
) тогава всичко е наред засега. На този етап, ако искате да премахнете
program_usb_boot_mode=1
ред от
config.txt
Това става лесно чрез редактиране
config.txt
в нано:
sudo nano /boot/config.txt
Изтрийте или коментирайте съответния ред (с предходен #).
Подгответе вашето USB зареждащо устройство
След това свържете форматиран (или готов за изтриване) USB стик към резервен порт на вашия Raspberry Pi 3. С това вмъкване, ще продължим да копираме операционната система.
Започнете, като идентифицирате вашия USB стик, с
lsblk
команда.
В този пример SD картата е
mmcblk0
докато USB флашът е
sda
(форматираният дял е
sda1
). Ако имате свързани други USB устройства за съхранение, USB флашът може да бъде sdb, sdc и т.н. С установено име на вашия USB стик, демонтирайте диска и използвайте инструмента за разделяне, за да създадете 100 MB дял (FAT32) и дял на Linux:
sudo umount /dev/sda
sudo parted /dev/sda
В подкана (разделен) въведете:
mktable msdos
Може да сте информирани, че дискът е блокиран по друг начин. Ако е така, изберете Игнорирай , след това обърнете внимание на предупреждението, което ви инструктира, че данните на диска ще бъдат унищожени. Както беше обяснено по -рано, това трябва да е диск, който с удоволствие изтривате или форматирате, така че приемете това.
Ако срещнете някакви проблеми тук, може да се наложи да преминете към работния плот (ръчно, или през VNC ) и потвърдете, че дискът е демонтиран, преди да въведете командата mktable msdos в командния ред с прозорец.
Продължете разделено със следното:
mkpart primary fat32 0% 100M
mkpart primary ext4 100M 100%
print
Това ще изведе информация за диска и новите дялове. Продължете да излезете разделени с Ctrl + C, преди да създадете зареждащата файлова система и основната файлова система:
sudo mkfs.vfat -n BOOT -F 32 /dev/sda1
sudo mkfs.ext4 /dev/sda2
След това трябва да монтирате целевите файлови системи, преди да копирате текущата си Raspbian OS на 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
Последната е последната команда, която копира всичко и затова ще отнеме известно време, за да се изпълни. Време е за приготвяне на кафе!
След това трябва да опресните SSH хост ключовете, за да поддържате връзката с преконфигурираната Raspberry Pi след предстоящо рестартиране:
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
Имайте предвид, че след sudo chroot (петата команда по -горе) преминавате към root, така че потребителят ще промени от pi@raspberrypi да се root@raspberrypi докато не влезете в изход на ред 8.
Подгответе се за рестартиране от USB!
Още няколко неща, които трябва да подредите, преди вашият Raspberry Pi да е готов за зареждане от USB. Трябва да редактираме
cmdline.txt
отново от командния ред с:
sudo sed -i 's,root=/dev/mmcblk0p2,root=/dev/sda2,' /mnt/target/boot/cmdline.txt
По подобен начин трябва да се направи следната промяна във fstab:
sudo sed -i 's,/dev/mmcblk0p,/dev/sda,' /mnt/target/etc/fstab
След това сте готови да демонтирате файловите системи, преди да изключите Pi:
cd ~
sudo umount /mnt/target/boot
sudo umount /mnt/target
sudo poweroff
Обърнете внимание, че това използва новото
poweroff
команда като алтернатива на
shutdown
.
Когато Pi се изключи, изключете захранването, преди да извадите SD картата. След това свържете отново захранването - вашият Raspberry Pi вече трябва да се зарежда от USB устройството! И за повече помощ с вашия Pi, проверете как да настроите Wi-Fi и Bluetooth на Raspberry Pi 3 .
какъв е волта на телефона ми
Готов да опитайте Raspberry Pi 4 ? Вижте неговите характеристики и характеристики.
Дял Дял Туит електронна поща Как да почистите вашия компютър с Windows с помощта на командния редАко на вашия компютър с Windows има малко място за съхранение, почистете боклуците, като използвате тези бързи помощни програми за командния ред.
Прочетете Напред Свързани теми- Направи си сам
- USB
- Малина Пи
Заместник -редактор по сигурност, Linux, DIY, програмиране и обяснени технологии и наистина полезен производител на подкаст, с богат опит в поддръжката на настолни компютри и софтуер. Сътрудник на списание Linux Format, Кристиан е калайджия на Raspberry Pi, любител на Lego и фен на ретро игри.
Още от Кристиан КаулиАбонирайте се за нашия бюлетин
Присъединете се към нашия бюлетин за технически съвети, рецензии, безплатни електронни книги и изключителни оферти!
Щракнете тук, за да се абонирате