wlado's website

RaspberryPi - boot from SSD

1) Komponenty -------------
  • Raspberry Pi 3 Model B, revize 1.2
  • Raspbian 2017-11-29 (Stretch)
  • WD GREEN SSD 240GB
    na štítku je uvedena spotřeba 0,7 A
  • Napájecí adaptér USB 2,1 A
  • USB to SATA adapter AXAGO EE25-XA
Výše uvedená sestava funguje bez potíží a napájení utáhne pro kontrolní účely i HDMI monitor a USB dongle pro bezdrátovou myš a klávenici.
Známé potíže ------------
WD v současnosti nevyrábí SSD s větší kapacitou v GREEN variantě. Dostupný disk WD BLUE SSD 1TB má na štítku uvedenou spotřebu 1,6 A. Tato sestava je velmi nestabilní, při rebootu kdy nastává největší odběr elektřiny, se systém kouše a nakonec dojde k poškození souborového systému na disku. Je nutné použít samostatné napájení pro SSD. Některé adaptéry USB SATA mají sice druhou USB zástrčku pro napájení, ale ta je přímo propojená s první datovou USB zástrčkou a po připojení napájecího adaptéru pro SSD se zpětně po datovém kabelu napájí i Raspberry Pi 3 a sestava nejde korektně vypnout a dojde k poškození souborového systému.
2) Povolit bootování z USB na Raspberry Pi 3 --------------------------------------------
Raspberry Pi 3 s funkčním systémem Raspian 2017-4 a novější na SD kartě (viz předcházející článek)
Poznámka: Funkční je pouze na Raspberry Pi 3
$ vcgencmd otp_dump | grep 17:

pokud napíše jiné číslo než 0x3020000a pak je nutný další krok
$ nano /boot/config.txt

na konec textu doplnit:
program_usb_boot_mode=1

restart raspberry pi
$ sudo reboot
kontrola
$ vcgencmd otp_dump | grep 17:
17:3020000a

to znamená že bylo jednou pro vždy nastavena možnost bootovat i z externího USB disku (toto nastavení už není možné změnit zpátky). Bootování z SD karty zůstává
je vhodné opět smazat z SD karty zapínání USB boot, aby se to nechtíc nenastavilo na jiných počítačích pokud se tam vsune SD karta.

3) Instalace systému na USB SSD -------------------------------
Připojit USB SSD k Macovi
Restart macosx
1) Download Raspian Stretch
2) Unzip ZIP
3) Zobrazit seznam disků
$ diskutil list
/dev/disk0
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *500.1 GB disk0
1: EFI 209.7 MB disk0s1
2: Apple_HFS HD500GB 499.2 GB disk0s2
3: Apple_Boot Recovery HD 650.0 MB disk0s3
/dev/disk1
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme *240.1 GB disk1
1: Windows_FAT_32 BOOT 98.6 MB disk1s1
2: Linux 240.0 GB disk1s2

4) Odpojit disk
$ sudo diskutil unmount /dev/disk1s1
Password:
Volume NO NAME on disk1s1 unmounted
$

7) Instalace obrazu disku
$ sudo dd bs=1m if=/Users/user/Documents/raspberrypi/Raspian/2017-kernel-4.9/2017-09-07-raspbian-stretch.img of=/dev/rdisk1
Password:
4688+1 records in
4688+1 records out
4916019200 bytes transferred in 191.701890 secs (25644083 bytes/sec)
$
8) vysunout disk
$ diskutil eject /dev/rdisk1
Disk /dev/rdisk1 ejected
$
Odpojit USB disk a pripojit do USB v Raspberry Pi 3
Spustit Raspberry Pi 3 s připojeným USB SSD
Raspberry Pi nastartuje
Poznámka: pro headless (bez monitoru a klavesnice) je nutné před vyjmutím jeste vytvorit obycejny soubor v /boot/ s nazvem SSH. Po spusteni se povoli SSH a soubor je smazan. Pak je mozne se vzdalene prihlasit pres terminal pi@ip_adresa heslo raspberry - adresu zjistit z routeru.

Změnit heslo
============
$ sudo passwd
Enter new UNIX password:
==============
Nový disk se může tvářit takto:
$ diskutil list
/dev/disk0
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *1.0 TB disk0
1: EFI 209.7 MB disk0s1
2: Apple_HFS HD1TB 999.9 GB disk0s2
/dev/disk2
#: TYPE NAME SIZE IDENTIFIER
0: *1.0 TB disk2
$ sudo diskutil unmount /dev/disk2
Password:
disk2 was already not mounted or it has a partitioning scheme so use "diskutil unmountDisk" instead
$