Pro spouštění RasPi (verze 1, 2 a Zero) máme jedinou možnost – microSD karta (pokud máme RasPi 3, tak ta už podporuje boot z USB).
Mno, to ale není úplně pravda, můžeme si pomoci jedním hackem. Spouštění probíhá přes DOSovský zavaděč, který leží na první partition (FAT32) microSD karty o velikost asi 60MB. Za ní je druhá, již linuxová klasická, partition ext4.
Důvod: asi je jasný, ale kdo by náhodou … je to životnost SD karty, resp. počet zápisů má zde své limity. Pokud na této kartě běží systém, který často zapisuje (např. databáze MySQL), je životnost cca 1/4 roku.
A zde můžeme tedy použít následující trik. MicroSD kartu budeme i nadále potřebovat, ale jen při bootování, ostatní práci přenecháme na disku.
😈 Zazálohujte si data na microSD kartě i USB disku. Pokud o ně přijdete, je to jen a jen vaše chyba! 😈
-
- nejprve si zjistíme, jak jsou disky identifikovány systémem – lsblk
- sda je SSD disk připojený přes USB a mmcblk0 je microSD
- teď máme dvě možnosti – čistá instalace nebo klonování stávajícího systému
- čistá instalace:
- Pro/Proti : rychlé nasazení, čistý systém. bez konfigurace a dat
- stáhneme image z raspberrypi.org, rozbalíme zip a zapíšeme na SSD – sudo dd bs=4M status=progress conv=fsync if=raspbian-stretch-lite.img of=/dev/sda
- klonování stávajícího systému:
- Pro/Proti: stejná konfigurace a data. extra pomalé vytváření klonu
- je doporučováno zjistit si aktuální velikost block – sudo fdisk -l /dev/mmcblk0 a ten použít při následujícím příkazu bs=512
- celou stávající microSD naklonujeme na SSD – sudo dd status=progress bs=512 if=/dev/mmcblk0 of=/dev/sda
- a už jen upravíme cmdline.txt (nachází se na microSD v /boot), kde změníme v parametru novou cestu na ext4 partition, která obsahuje systém s daty na SSD – root=/dev/sda1
- pokud vše zafungovalo, po restartu RasPi nám naběhnul v pořádku systém z SSD
- volitelně můžeme vyčistit microSD – ponecháme pouze boot partition FAT32 (LBA)