Instalace OS / kopírování img na SD kartu
Operační systém počítače Rpi je linux. Konkrétně se jedná o variaci Debianu, dříve označovanou jako Raspbian, dnes už jen Raspbery Pi OS. Ten se na SD kartě skládá ze tří samostatných částí.
- Zaváděcí sektory: obsahují informaci o tom, jakým způsobem má Rpi po zapnutí komunikovat s SD kartou. Ve windows ani v linuxu nejsou sektory vůbec vidět.
- Oblast Fat32: obsahuje základní spouštěcí soubory. Jsou viditelné i ve windows.
- Oblast s Linuxem: zde je obsaženo vše, co Rpi potřebuje ke svému provozu. Windows tuto oblast vidí, ale je pro ně nečitelná.
Z uvedeného vyplývá, že obsah karty nelze kopírovat běžným způsobem. Proto se linux pro Rpi distribuuje ve formě souboru img (image), tedy jakéhosi kompletního obrazu obsahujícího všechny tři oblasti. K jeho nahrání na SD kartu je logicky potřeba speciální program. Tím je třeba Raspberry Pi Imager, dnes ve verzi 1.8.5 (platí 4.5.2025). https://www.raspberrypi.com/software/
Obr. 1 Program Raspberry Pi Imager
Program si stáhneme, nainstalujeme a spustíme. Nejprve uvádím postup instalace OS pro zvídavé experimentátory.
- Začneme kliknutím na tlačítko „CHOOSE DEVICE“, kde vybereme verzi Rpi.
- Potom tlačítkem „CHOOSE OS“ vybereme operační systém. Většinu nabízených systémů si program sám stáhne z internetu. Protože Pi-star je 32bitový program, je vhodné vybírat i 32 bitový linux. Přímo nabízené Raspberry Pi OS (32-bit) i starší Legacy jsou plnohodnotné stolní PC. Nám stačí verze Lite, kterou najdete v nabídce Rpi OS (other). Raspberry Pi OS (Legacy, 32-bit) Lite je starší verze, já jsem použil v této nabídce Raspberry Pi OS Lite (32-bit), což je nejnovější verze. Také lze pomocí „Use custom“ vybrat soubor img z adresáře ve vašem počítači.
- Tlačítkem „CHOOSE STORAGE“ vybereme, kam chceme OS nahrát. Nabízí se pouze karty ve čtečce nebo USB úložiště jako je fleška nebo USB disk.
Obr. 2 – Nastavení chování Rpi po spuštění
- Dál máme možnost nastavit, jak se bude Rpi chovat po spuštění. V nabídce „GENERAL“ nastavíme hostname (pi-star), Username (pi-star) a heslo (libovolné). Pokud budeme s Rpi komunikovat přes její Wi-Fi, nastavíme položky wireless LAN (důležité pro Rpi zero). V nabídce „SERVICES“ povolíme protokol SSH s přihlášením pomocí hesla. Tohle bude první komunikační kanál.
- Pak už tyto volby uložíme a vše nahrajeme na SD kartu. Tím je karta připravená k použití.
Většina z vás nejspíš nebude chtít procházet celou cestu peklem, kterou popisuji v dalších článcích. Ti nepotřebují instalovat samostatný OS linux, ale budou nahrávat na kartu už kompletní hotový img se systémem Pi-star. V tom případě si poopravte předchozí postup takto:
- Stáhneme si připravený soubor img do svého počítače. Buďto z webu Pi-star https://www.pistar.uk/downloads/ , kde je img přednastavený pro komunikaci v síti Brandmeister, nebo po přihlášení k webu Odsky verzi 4.x.x img, který je přednastavený právě pro komunikaci v síti Odsky.
- V programu Imager při výběru OS využijeme nabídku „Use custom“, pomocí které najdeme a vybereme tento stažený soubor img ve svém počítači.
- Při nahrávání na SD kartu už nevybíráme žádné vlastní nastavení, tedy na otázku "Would you like to apply OS customisation settings?" odpovíme NO. Všechny tyto informace jsou už součástí připraveného img. Automaticky se tak nastaví hostname = pi-star, Username = pi-star a heslo = raspberry .
Upozornění: Během nahrávání vzniknou na kartě dva oddíly - menší Fat32 se spouštěcí oblastí a Linuxová část. Linuxový oddíl windows neznají a tak vás budou možná přemlouvat k jejímu přeformátování. To samozřejmě ignorujte a případná okna jen zavřete křížkem v pravém horním rohu.
Po spuštění Rpi s tímto přednastaveným img se už můžeme rovnou připojit z webového prohlížeče. Do adresního řádku prohlížeče napíšeme a odklepneme:
http://pi-star
Měl by se zobrazit Dashboard, tedy webové rozhraní programu Pi-star. Při prvním přepnutí do nabídky Admin nebo Configuration použijeme defaultní heslo raspberry. A můžeme nastavovat. Po doplnění všech vašich specifických osobních údajů by měl být hotspot funkční. Hlavně si nezapomeňte změnit heslo. A někam si ho napsat. :-)
Možná vás napadlo, že by bylo dobré udělat si zálohu karty, na které máte nastavený funkční systémem hotspotu. Mě to napadlo také. Současný program Disk Imager bohužel číst kompletní strukturu SD karty a její uložení do souboru img neumí. Ale můžete zkusit jeho předchůdce, stařičký program Win32 Disk Imager https://win32diskimager.org/ Měl by ještě fungovat. Na starších Win7 a Win10 určitě. Na Win11 prý funguje taky, ale to zatím nemohu potvrdit, protože já mám s touto kombinací problémy.
Obr. 3 – Původní program pro práci s SD kartou Rpi
Pozor na to, odkud kam vzácná data kopírujete, ať si je na kartě nesmažete. Read je z karty do souboru v počítači. Write je ze souboru v počítači na kartu.
Upozornění: Program pracuje na nejnižší úrovni sektorů, které se teprve následně spojují a transformují do souborového systému se všemi soubory a adresáři. Neví tedy nic o "velikosti" SD karty udávané výrobci karet. Takže se může stát, že se záloha 8GB karty "nevejde" na jinou 8GB kartu, protože ta je rozdělená na jiný počet sektorů. Dokonce se může stát, že záloha karty nejde časem nahrát na tu stejnou kartu, protože mezi tím se používáním karty mohl počet sektorů změnit (třeba tak, že některé sektory jsou označeny za vadné a tím jsou vyřazeny z používání). Něčím takovým se ale nenechejte rozhodit. Vaše záloha v souboru img je stále bezchybná. Prostě ji nahrajte na větší kartu.
Na závěr se ještě krátce zmíním o možnosti místo SD karty použít klasický disk, tedy dnes už spíš SSD disk.
- Musíte mít převodník sběrnice disku (obvykle mSATA) na USB. Já používám stařičký převodník od firmy Delock. SSD disk mSATA jsem samozřejmě musel dokoupit.
- Musíte mít Rpi nastavenou tak, aby byla ochotna číst systém z USB. To se provede nastavením příznaku v paměti procesoru. Postup je celkem jednoduchý:
- Spustíte systém z běžné SD karty.
- Připojíte se k Rpi pomocí PUTTY a zadáte příkaz:
echo program_usb_boot_mode=1 | sudo tee -a /boot/config.txt
Tím se příkaz uloží do souboru. - Restartujete Rpi příkazem:
sudo reboot
- Při novém rozbíhání Rpi se příkaz ze souboru provede.
- Vypnete Rpi příkazem:
sudo shutdown -h now
- Odpojíte kartu a připojíte USB disk se systémem. Po zapnutí se OS Rpi rozběhne z USB disku stejně jako předtím z SD karty.
Je potřeba si uvědomit pár věcí:
- Příkaz na přeprogramování konfiguračniho bitu je stále na SD kartě. Pokud chcete tuto SD kartu dál využívat, nahrajte si na ni znovu neupravený OS.
- Tento postup jsem naposledy zkoušel před mnoha lety se starým raspbianem. Nevím, jestli dnes s novým linuxem jde modifikovat spouštěcí sekvence stejným způsobem.
- Naprogramování tohoto příznakového bitu je nevratné. Nejde ho smazat nebo jakkoliv obnovit původní hodnotu.
- Rpi při startu nejprve hledá systém na SD kartě. Teprve když SD kartu nenajde, zkouší USB disk.
- Předchozí bod znamená, že naprogramováním příznakového bitu se vlastně nic nemění. Dál jde spouštět systém z SD karty jako před tím.
- Pokud jste nepozorní a necháte v Rpi kartu se systémem a zároveň připojite USB disk s jiným systémem, Rpi použije SD kartu. Pak nejspíš nebudete věřit vlastním očím.
Obr. 4 - Převodník Delock z mSaTA na USB
Výhodou použití SSD disku jsou všechny jeho hlavní vlastnosti. Tedy při nejmenším řádově větší rychlost a životnost, než mají i ty nejlepší speciální SD karty. Pokud Rpi neprovozujete právě s rádiovým modemem, vše funguje perfektně a spolehlivě.
Nevýhodou je, že tento postup funguje jen u Rpi3. U starších a novějších Rpi nebyl systém konfiguračního bitu implementován (platí 4.5.2025). Navíc při mých testech s ruční instalací pi-star se objevovaly náhodné výpadky rádiové komunikace. Po konzultacích předpokládám, že SSD disk na USB kabelu přispěl svým rušením k zahlcování přijímače modemu.
Upozornění: Originální img se systémem pi-star se z takového disku nespustí. Rpi se po zapnutí vůbec nerozběhne (platí 4.5.2025 s mým převodníkem Delock).
Obecně lze říct, že SSD disk je pro počítač Rpi obrovský přínos, pro aplikaci hotspotu se ale moc nehodí. Mimo jiné i s přihlédnutím ke spotřebě SSD disku.