Problémy po aktualizaci Turris 1.x na 3.8.2 // volná diskuze

ted jsem nasel potvrzeni ze ono je to spis brano jako vlastnost a ne chyba


coz potvrzuje to co jsem uz zjistil - ze se s jffs2 nepocita a preplacne se u-boot konfigurace pro verzi s ubifs

Ale minimalne jsem overil ze jde zmigrovat aktualni system z jffs2 na btrfs na kartu a ten docasne bootovat rucne z u-bootu nebo i s rucni upravou u-boot konfigurace to mit automaticky (pokud clovek nezapomene na apostrofy jako ja) a nebo si jenom s tou vytvorenou kartou pockat, upgradovat na ubifs (a tim si smazat system) a potom z cisteho aktualniho systemu dodelat druhou pulku btrfs migrace - update u-bootu a pouzit tu kartu

cili pro prvni cast lze zeditovat aktualni skript btrfs_migrate ktery si nainstalujete do routeru a ktery pro 3.8.2.1 vypada takhle


a je treba posunout radek

[ -n “mount | grep ubi” ] || die “1.1 firmware required!”

az tesne pred kousek

# Setup u-Boot
fw_setenv -s - <<EOF

a po update na ubifs pak zase pustit tu druhou pulku s fw_setenv nebo si vzit jinou kartu a pustit to cele znovu a pak si z tech dvou karet vybrat tu lepsi

Poradíte mi, jestli tomu rozumím správně.

Mám teď 1.0 s JFFS2 a verzí 3.7.3. Aktualizace nepokračuje, pokud provedu skript, tak se dostanu na 3.8.2.1.

wget http://repo.turris.cz/turris/packages/turrispackages/updater-ng_59.3.3-1_mpc85xx.ipk
opkg-trans -a updater-ng_59.3.3-1_mpc85xx.ipk -r opkg-trans -r updater
get-api-crl
pkgupdate --batch

Rozhodnu se provést migraci na UBIFS. Z verze 3.6.5 se postupně dostanu opět na 3.7.3. Udělám skript a budu znovu na 3.8.2.1, ale už s UBIFS bez možnosti návratu k JFFS2?

Rozhodnu se provést migraci na Btrfs. Verze se nemění, protože se to jen ukládá na kartu. Dále vše probíhá z karty a zapisuje se na kartu. je to tak?

Karta umře. Něco se prostě stane, Turris nenaběhne. Musím rozšroubovat nebo si to udělají děti, snad nic nerozbijou, vyndají kartu a spustí. Naběhne systém tak, jak byl před migrací na Btrfs. Je tomu tak?

Turris nenaběhne ani tak, provedu factory reset, systém bude ve stavu 3.6.5 a budu muset aplikovat celý postup jako je v tomto příspěvku, včetně ručních oprav. Rozumím tomu správně?

Předpokládám, že je možné, že někdo ve vývoji vyhodnotí změní postoj a opraví chybu v 3.7.3 na nějakou 3.7.3.1 a bude možné udělat upgrade na novější verzi automaticky, ale to je jen hypotéza. Spíše bude tedy platit, že automaticky to nenaběhne. Rozumím tomu správně?

EDIT: Potřebuji si to jen zrekapitulovat, protože potřebuju udělat návod pro rodinu, co mají dělat, když se něco stane a nebudu tam. Výpadky Turrisu byly i v minulosti, ale protože mi to teď přijde mnohem složitější, tak budu pro ně něco muset připravit. A záložní postup pro sebe také.
EDIT2: Záložní router bohužel nestačí, protože se nepoužíval a chcíp taky.

Hmm :frowning: jak to taky čtu tak je to mnohem větší problém než jen takové jednorázové zaseknutí !!! Protože pokud podpora něco s tím návratem do stavu 3.8.2.1 neudělá, tedy nezkrátí ho a jeho náročnost, tak to bude moc zlé. Skoro bych řekl i likvidační. Už teď jsem přesvědčen že valná většina uživatelů udělá automaticky to co já - vypne okamžitě aktualizace ! A až bude příště nějaká tak počkám klidně i měsíc - tedy radši než absolvovat něco takového jako teď.
Až z toho jde smutek kam se to sesypalo.

1 Like

Taky o tom dnes uvažuju, mám tam teď 0 dní, nevím, kolik je maximum, když jsem pod smlouvou.

No řekl bych že smlouva bude o odesílání dat a ne o tom jestli a kdy aktualizuješ :wink:

Maximum pod smlouvou lze nastavit 10 dni do restartu. Aktualizace vypnout ve forisu nelze. Nejlepsi reseni je migrovat na kartu ,pak lze v pripade problemu vratit system do stavu pred updatem behem par sekund. Navic se neopotrebuje vnitrni pamet.

Mas to zrekapitulovany celkem dobre. Pri chybe sd karty,pokud rovnou neodejde by stacilo smazat oddily fdiskem. Pak system najede z NAND a zmigrujes ho znovu. Nebo pouzit schnapps rollback ,kterej funguje pekne.

Slo by si SD kartu (co nejakou dobu) ozrcadlit na jinou a v pripade problemu (karta odejde napr.) “jen” vymenit nebo ma ta karta nejaky identifikator a kdyz se zameni (jina karta - stejny obsah z doby ozrcadleni), tak to nenabehne?

  • pri cene (malych - 4GB) sd karet by to bylo slusna/levna HW zaloha…

Hm, opravdu asi po nabootování do BTRFS očekává v NAND UBIFS, divné … asi se opravdu chtějí JFFS2 zbavit a do budoucna se s touto variantou už nepočítá,

Jinak ten zásek na v3.7.3 a updaterem snad už ani “není bug ale feature” :-), ví se o ní dlouho a řešení např TADY. Spíš mě udivuje, že toto už dávno není opraveno, dnes prakticky není možné z posledního medkitu (v3.6.5) bezproblémově vyupdatovat na aktuální verzi. Aspoň že máme BTRFS.

Mělo by to fungovat, teoreticky. Můžete použít i vlastností btrfs filesystému a na druhou SD kartu mirrorovat nebo pravidelně snapshotovat…

momentalne jsem to tak udelal, tlak zeny a nutna prace z domu me donutila vytahnout stary wifi router a prepojit Turris.

dekuji, pomohlo (nasleduje balast do povinnych 20 znaku…)

ono by stacilo prejmenovat zImage na prvnim vfat oddile, kdyz ho u-boot neprecte mel by bootovat z NAND

if fatload mmc 0:1 $nandbootaddr zImage; then run mmcboot; else run ubiboot; fi

1 Like

Postup funguje, jsem na 3.8.2.1 Btrfs. Ovladače do Windows 10 jsou pro spojení s Turrisem přes microUSB kabel nutné.

EDIT: Zapomněl jsem a děkuji vývojářům - Poprvé jsem použil i přidání příkazů - pro schnappsoty.

Použil jsem tuto kartu https://www.alza.cz/kingston-micro-sdhc-16gb-class-10-uhs-i-industrial-temp-sd-adapter-d4156874.htm http://www.kingston.com/en/flash/microsd_cards/sdcit Snad bude dobrá.

Hlásím rovněž dnešní úspěch, update z 3.8.1 na 3.8.2.1 a poté Btrfs včetně schnapsu :slight_smile:

1 Like

Myslím, že chcete něco takového:

dd if=/dev/mmcblk0 of=/mnt/System/sdcard.img

po vložení nové SD karty (je nutné, aby měla stejnou velikost) pak spustit:

dd if=/mnt/System/sdcard.img of=/dev/mmcblk0

Jj, díky, už asi rozumím, zálohu/image by stačilo dělat do souboru (externí disk třeba) a pak rozbalit na jinou o stejné velikosti, zasunout (vždy bude jako /dev/mmcblk0) a mělo by to najet.

Tak router tak nějak funguje. Teď bych se rád zeptal jestli je tady někde vlákno k Domoticzu. Procházím stré fórum, ale nedaří se mě přidání sledování teplotních čidel samotného routeru! Domoticz mě jede. V /etc mám soubor systemps.sh v kterém mám toto:
BOARDTEMP=$(thermometer | head -n 1 | awk ‘{print $2}’)
CPUTEMP=$(thermometer | tail -n 1 | awk ‘{print $2}’)
curl -o /dev/null --stderr /dev/null “http://uzivatel:heslo@46.33.116.109:8070/json.htm?type=command&param=udevice&idx=5&nvalue=0&svalue=$BOARDTEMP"
curl -o /dev/null --stderr /dev/null “http://uzivatel:heslo@46.33.116.109:8070/json.htm? type=command&param=udevice&idx=6&nvalue=0&svalue=$CPUTEMP"
Domoticz na portu 8070 funguje. Mám v něm nadefinována čidla Dummy a přiřazená idx čísla jsou doplněna v tom skriptu. V /etc/cron.d mám soubor systemps v kterém je:
MAILTO=””

m h dom mon dow user command

*/5 * * * * root /bin/sh /etc/sys_temps.sh
Ve /var/log/messages vidím toto:
2017-10-09T09:40:01+02:00 info /usr/sbin/cron[903]: (root) CMD (/bin/sh /etc/sys_temps.sh)
Přesto se teplota nenačítá. Může mě tady prosím někdo nasměrovat nebo říct kde je chyba??? Děkuji.

Ja je pridal pres webove nastaveni-technické vybavení.

Jo jo tam je mám. A v Nastavení - Zařízení je mám přidané. A ty jejich idx co mají přiřazeno mám v tom sh souboru- jenže pořád to jaksy nechce posílat údaje :frowning: a to sem tam měl v tom skriptu už i 127.0.0.1 svoji veřejnout ip sem tam vepsal až dneska v rámci laborování.