TurtleBot

From DCEwiki
Revision as of 14:03, 6 August 2019 by Keny (talk | contribs) (Založena nová stránka s textem „Kategorie:DC [https://www.turtlebot.com TurtleBot], je robotické zařízení, používané při výuce na Katedře kybernetiky. Jeho "mozkem" je Inte…“)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


TurtleBot, je robotické zařízení, používané při výuce na Katedře kybernetiky. Jeho "mozkem" je Intel NUC, který sice může komunikovat přes ethernet, ale primárně komunikuje přes Wi-Fi.

Zařízení se dodává s předinstalovaným Ubuntu, ale v rámci sjednocení vývojového prostředí je potřeba na něm rozběhat stejnou diskless instalaci, jako v laboratořích.

Jelikož klasické PXE funguje pouze v rámci na ethernetu, jsou TurtleBoty vytvořené podobným způsobem, je virtuální stroje typu Half-Diskless. Rozdíl je pouze v tom, že se při spouštění nepoužívá virtuální disk publikovaný přes NFS, nýbrž lokální NVME disk.

Co to obnáší?

Příprava na diskless

Protože se NUC pro TurtleBoty dodává s předinstalovaným Ubuntu, bylo nutné: 1, zmenšit diskový odddíl /dev/nvme0np2 na kterém je souborový systém ext4 s Ubuntu 2, posunout diskový odddíl /dev/nvme0np3 na kterém je swap (ten bude využívat i disklessový OS) 3, vytvořit nový diskový odddíl /dev/nvme0np4

Tento nově vytvořený diskový oddíl byl naformátován na souborový systém Btrfs, aby bylo možné subvolume pro systém nainstalovaný přes debootstrap snapshotovat.

Instalace

příkaz…

Vytvoření ramdisku s podporou Wi-Fi

Automatizace procesu

Úprava instalace disklessu

Export adresáře přes NFS

Zkopírování stávajícího obsahu fyzického stroje

Vytvoření zaváděcího disku

1, Zkopírování zaváděcího disku stroje k333-dhcp (soubor k333dhcp.img) do souboru k333stu1.img

k333-lab (NFS) :/srv/boot# cp k333dhcp.img k333stu1.img

2, Připojení souboru k333stu1.img přes losetup na loop0

losetup /dev/loop0 /srv/boot/k333stu1.img

3, Mount diskového oddílu s jádrem a soubory zavaděče

k333-lab (NFS) :~# mount /dev/loop0 /mnt -o offset=$((2048*512))
Poznámka Při namountování musí být použit offset!

4, Zkopírování stávajícího ramdisku a jádra. A úprava souboru /mnt/grub/grub.cfg