BTRFS na Turris 1.x

FORIS změnu konfiguraci balíčků → uložení ->přidaný userlist smaže → ručně všechny přidané balíčky odinstaluje

Na tohle jem si též stěžoval. Já to řeším tak, že ve Forisu na nic neklikám (= nepoužívám). :smiley:

1 Like

Jo, ale pak sou zas lidi co slysi slovo sroubovak, vydesi se a utecou :slight_smile:

1 Like

Nabízí se možnost udělat video návod (jak v případě Omnie a např. instalací LTE modemu). :stuck_out_tongue:

2 Likes

Ale zase nepoužívat Foris je škoda … na to je dost pěkný

Aha … tak proto vy lišáci začínáte návod na BTRFS slovy: “Co je potřeba … Turris1.x a šroubovák” :slight_smile:

Nejste moc daleko od správného přístupu. Správně by jste měl do user.lua dát příkaz Script na daný userlist.

local script_options = {
	security = "Remote",
	ca = "file:///etc/ssl/updater.pem",
	crl = "file:///tmp/crl.pem",
	ocsp = false,
	pubkey = { "file:///etc/updater/keys/release.pub" }
}
Script("userlist-lxc", "https://api.turris.cz/updater-defs/" .. turris_version ..  "/turris/userlists/lxc.lua", script_options)

Není to nejlepší přístup, ale jedná se asi o jedinou možnost jak něco takového aktuálně udělat jakš takš správně.

// EDIT: No longer valid. LXC option will be back in Foris in Turris OS 3.10.

3 Likes

Výborně! Díky. Upravím návod, který je v dokumentaci.

Dotaz, nějak mám problém hned z jedním z prvních kroků. Když chci router propojit přes sériovou linku, tak se mi v PuTTYně nic nezobrazuje (užil jsem postupu i ze starého fóra). Ten obraz stačí na SD jen nakopírovat, nebo se musí ještě přes nějakou appku prohnat? Po připojení napájení bliká na desce oranžová dioda, poradil by mi s tím někdo?

Nainstaloval jsem tedy ovladače, sdcard.img jsem nakopíroval na kartu, připojil kabel, na PuTTY nastavil příslušný COMport a 115200 a připojil napájení - nic se neděje a kontrolka bliká + jsem nastavil SW1 podle návodu (stejně, jako to někdo vyfotil na starém fóru).

Obraz systému nelze na kartu jen zkopírovat, musí se binárně přenést - viz. dd příkaz na Linuxu nebo ve Windows je na to speciální software

Děkuju za vodítko, nějak mi to nedošlo a dělal jsem to celé 3 hodiny špatně.

1 Like

Dotaz k @miska ohledně btrfs na Turris 1.x
Na svém Turrisu 1.x mám verzi TurrisOS 3.8 RC (z 8.9.2017) a po aplikaci migračního scriptu na btrfs se zdá, že systém běží z microSD karty.
Ale nefunguje správně schnapps … při použití jakéhokoliv příkazu (list, create …) píše: "mount: wrong fs type, bad option, bad superblock on /dev/mmcblk0p1 …

Jak ho mám přesvědčit, že BTRFS partition je na /dev/mmcblk0p2? :slight_smile:

A k čemu to vlastně při migraci vytvoří na microSD kartě dvě partišny (jednu z vfat na mmcblkop1 a druhou s btrfs na mmcblk0p2)?

Díky

P.S.: Ještě malý úryvek z logu, který s tím myslím souvisí:
root@jnturris:~# cat /var/log/messages | grep mmcblk 2017-09-09T04:39:07+02:00 notice kernel[]: [ 0.000000] Kernel command line: root=/dev/mmcblk0p2 rootwait rw rootfstype=btrfs rootflags=subvol=@,commit=5 console=ttyS0,115200 2017-09-09T04:39:07+02:00 info kernel[]: [ 1.549471] Waiting for root device /dev/mmcblk0p2... 2017-09-09T04:39:07+02:00 info kernel[]: [ 1.582225] mmcblk0: mmc0:aaaa SL16G 14.8 GiB 2017-09-09T04:39:07+02:00 info kernel[]: [ 1.587452] mmcblk0: p1 p2 2017-09-09T04:39:07+02:00 info kernel[]: [ 1.666658] BTRFS info (device mmcblk0p2): disk space caching is enabled 2017-09-09T04:39:07+02:00 info kernel[]: [ 6.582319] BTRFS info (device mmcblk0p2): disk space caching is enabled 2017-09-09T04:42:45+02:00 err kernel[]: [ 243.725765] FAT-fs (mmcblk0p1): Unrecognized mount option "subvol=/" or missing value 2017-09-09T04:43:55+02:00 err kernel[]: [ 314.041205] FAT-fs (mmcblk0p1): Unrecognized mount option "subvol=/" or missing value 2017-09-09T05:01:57+02:00 err kernel[]: [ 1395.217392] FAT-fs (mmcblk0p1): Unrecognized mount option "subvol=/" or missing value

Aha … možná si odpovím sám, ale stejně zde můj dotaz výše ponechávám, protože je někde něco nejspíš špatně.

Aby se mi SCHNAPPS rozchodil, bylo nutné vlézt do “/usr/bin/schnapps” a tam oeditovat volbu “ROOT_DEV” z původní hodnoty “/dev/mmcblk0p1” na požadovanou hodnotu “/dev/mmcblk0p2”

Ale to by se mělo vytvořit nějak samo asi … nebo ne?
Myslím, že není správné, abych zasahoval do “/usr/bin/schnapps” … po update OS mi to můžete klidně přepsat, že?

Připojuju se k dotazu, proč jsou na SD kartě 2 partišny. Btw, já v logu o mmcblk0p1 mám jen zmínku viz 5. řádek logu:

notice kernel[]: [ 0.000000] Kernel command line: root=/dev/mmcblk0p2 rootwait rw rootfstype=btrfs rootflags=subvol=@,commit=5 console=ttyS0,115200
info kernel[]: [ 1.573731] Waiting for root device /dev/mmcblk0p2…
info kernel[]: [ 1.606183] mmcblk0: mmc0:59b4 USD 7.39 GiB
info kernel[]: [ 1.611498] mmcblk0: p1 p2
info kernel[]: [ 1.691318] BTRFS info (device mmcblk0p2): disk space caching is enabled
info kernel[]: [ 8.648467] BTRFS info (device mmcblk0p2): disk space caching is enabled

1 Like

Tipuju, že to nějak souvisí s restorem do původního stavu … na tu první partišnu (mmcblk0p1 typu vfat) se podle migračního scriptu kopírují nějaké části z /boot adresáře původního filesystému routeru z NAND a pak na filesystému SDkarty existuje soubor “/etc/schnapps/rollback.d/kernel-rollback”, který s touto partišnou pracuje.

Ksakru … proč tohle není popsaný v dokumentaci! :rage:

Tak on je “problém” v tom, že je to zatím jen RC, takže je možné, že se to ještě třeba nějak změní (proto to není v dokumentaci, spíš by to mělo být někde tady, protože ten, kdo tyhle kroky dělá prostě tady musí být - může se něco podělat a jediné místo, kde se to dá nějak rychle s někým řešit, je tady).

Nicméně, když jsem se zbláznil a dělal ten flash 3.6.5 z SD, tak jsem také zkusil nahodit RC. Už před tím týdnem mi to přišlo podivné, tak jsem se rozhodl, že prostě rodičům nechám stabilní verzi a na tu 3.8 si radši počkám (karta už je dopředu v routeru připravena), protože, a to je hlavní: Když jsem totiž nahrál RC 3.8 a BTRFS, tak jsem z mé blbosti s křížkem po funuse zjistil, že vlastně úplně snadno není cesty zpět. Nějak mi nedošlo,že předchozí verze BTRFS nepodporují, takže když si tohle člověk udělá, tak musí buď na RC vydržet dokud nevyjde stable, nebo musí zrušit boot z karty a udělat factory reset tak, aby bylo celé BTRFS mimo hru.

Na druhou stranu tyhle poznatky jenom potvrzují, že je dobře, že tu 3.8 nevypustili hned po 1 RC, ale ještě na tom dělají, aby to bylo doladěné (snad). Chvíli jsem si říkal, že se to nějak moc oddaluje (čekal jsem vypuštění hned na začátku září), ale přijde mi, že hlavně u toho Turris 1.x to vypadá trochu divoce, na Omnii RC mám, a s mým stylem používání se mě problémy moc netýkají - to co potřebuju jde. Zase tahle verze přijde s novými možnostmi pro všechny modely Turrisů, a to je prostě fajn a když to bude fungovat, tak to bude super.

Návrat je z mého pohledu snadný … vyjmout kartu z routeru … pak se bude opět bootovat z NAND paměti routeru, kde zůstává (předpokládám) systém v tom stavu, v jakém byl před přechodem na BTRFS na SD kartě … tj. žádný factory reset nejspíš není potřeba. Ale to jsem netestoval a ani se mi do toho moc nechce (spíš z časových důvodů než že by mě to nezajímalo).

A pak je tady ještě ten “záhadný” soubor soubor “/etc/schnapps/rollback.d/kernel-rollback”, který stále zůstává ve hře.

Takze nekolik odpovedi:

Proc jsou dve partisny

Protoze u-Boot na starym Turrisu nepodporuje Btrfs a neda se tudiz bootovat primo z Btrfs. Proto migracni script nahraje kernel na vfat a schnapps pri rollbacku kernel prepise kernelem ze zalohy.

Proc partisny a reseni neni v dokumentaci

Protoze to je uzivatelska dokumentace a uzivatel by nemel mit potrebu vedet jaky partisny sou kde na disku. Pokud to uzivatel potrebuje vedet, tak to neni bezny Franta uzivatel, ale pokrocily stoural a ten se to docte ze scriptu :slight_smile:

Navrat zpet

Ano, z Btrfs lze bootovat pouze 3.8 a novejsi. Pokud clovek uz nechce Btrfs, staci vytahnout kartu a je zpet kde byl pred migraci.

Schnapps a mmcblk0p1

To by se nemelo dit. Script vytvari soubor /etc/schnapps ve kterym je napsano:
ROOT_DEV="/dev/mmcblk0p2"
a tudiz by schnapps mel pouzivat /dev/mmcblk0p2, muzetezkontrolovat, ze tam soubor mate a se spravnym obsahem?

1 Like

Díky za rychlé a bystré odpovědi! :slight_smile:

K otázce “schnapps vs. mmcblk0p1” - soubor tam nemám, jen adresář
root@jnturris:~# cat /etc/schnapps
cat: read error: Is a directory
root@jnturris:~# ls -l /etc/schnapps
drwxr-xr-x 1 root root 30 Sep 9 04:19 rollback.d
root@jnturris:~#

P.S. Nikde jsem v tom skriptu neviděl, že by se ten obsah souboru /etc/schnapps kopíroval z původního UBIFS filesystému z NAND paměti na BTRFS partišnu na microSD kartě

Ah, tak uz vim kde je chyba. Ono se tam kopiruje vsechno, ale nevytvori se, jeslikoz uz existuje adresar. Opravime.

2 Likes

Díky moc! A pěkný víkend!