Portál AbcLinuxu, 5. května 2025 15:13
dmesg -w -T
a byly tam chyby čtení z karty. Problém čtení sektorů, bloků, rozpadnuté clock-sync.
Ono když se to stalo prvně, tak jsem si řekl, hmm, shitoidní uSDkarta z Ali 64GB Microdata. Tak jsem ji vyndal, ale na čtečce se po opravě filesystému chovala OK. Vzal jsem koupenou z CZC nějakou Kingston a nakopíroval tam zazálohovaný obraz. Přišlo těžké rozčarování z rychlosti kartu. Mnohem dražší značková karta - v RPi nepoužitelně pomalá ... mi to přijde stejné jako by někdo, komu přestal bootovat Linux ( třeba po aktualizacích ), se divil, že když přesune image současného HDD a nový, mu to nezačne normálně bootovat.Ano, pochopil jste to spravne. Ano, cekal jsem, ze to zacne fungovat, protoze nic ve filesystemu te puvodni karty se nezda byt poskozne, fsck funguje, cteni funguje, zapis funguje, resize funguje...co vic by jeste melo fungovat? Daji se nejak chytre srovnat 2 filesystemy a zjistit, ktere soubory a jak se v nich lisi?
Prostě když obraz nabouraného původního systému přesunete na novou kartu, tak asi zázračně nezačne fungovat.Viz vyse, cekal bych ze ano, a pokud ne, ze bude vic jasne proc ne. vzhledem k tomu, ze to ani nezacne cist, LED ani neblikne, bude to tezke diagnostikovat. O to zajimavejsi to je. Nedivil bych se, kdyby to byla nejaka naprosta blbost, typu atribut bootable, nebo kvalita toho oddilu mmcblk0 ne tech dvou p1 a p2 pod nim, nebo tak neco, jenze, kdyz to nezacne ani vypisovat veci na hdmi, tak jak to vyresit? Kdyz se pokazi disk, je pokazeny, a nejde na nej dal normalne zapisovat a nejde z nej dal normalne bezchybne cist.
V RPi kartám nejvíc škodí vypínání za běhu. Mám v RPI2 za 3 roky 2. kartu - Domoticz zapisuje data cca 50 čidel co minutu plus intenzivní log. Karta odešla když po vichřicích energetici "opravovali "síť" opakovaným zapínáním a vypínáním.Co presne znamena odesla? Jake jsou hypoteticke scenare? kdyz se vypne proud pri cteni, nemelo by se stat nic. Kdyz pri zapisu, bude spatny prave ten jeden soubor, ktery byl zapisovan, ne? Ne ze bude necitelne cele zarizeni, a navic ale bude v pohode citelne jinde...Ja uz ted spis jen marne premyslim, co se stalo abych ukojil svou zvedavost. Ma ta karta nejaky firmware mezi cteckou a kernelem? Jsou v nem nejake uzitecne metainformace? Jde z toho neco dostat, vi o tom nekdo nekde vic? Je to preci trida zarizeni, kterou pouzivaji stovky milionu lidi v mobilech, fotakach, cteckach, a musi to byt nekde zdokumentovano, ne? Nekdo ty karty vyrabi, nekdo na ne dela ctecky, adaptery...?
Používám obyčejné Kingston a Sandisk 16GB á cca 160Kč.ja taky, asi za 6 dolaru.
co vic by jeste melo fungovat?treba takova drobnost jako bootloader, resp. boot config a jadro (na prvnim fat oddilu(pokud se neco nezmenilo))
kvalita toho oddilu mmcblk0 ne tech dvou p1 a p2 pod nimmmcblk0 neni oddil, ale device cele te karty, podobne jako u disku je to sda, akorat misto a,b,c.. je to 0,1,2...
Jak vypada krok po kroku to bootovani pi zero w? Kde je to popsane? muzu nakopirovat novy sd obraz raspbianu a nejak chytre porovnat tu boot partition (je to nejaka vfat, asi) s tou mou existujici? jak? co mam hledat? Pokud by tam bylo neco spatne, nemelo by to aspon bliknout, jako ze zkousi neco cist a spustit, a nejde mu to? Nakonec se preci jen neco noveho naucim...co vic by jeste melo fungovat?treba takova drobnost jako bootloader, resp. boot config a jadro (na prvnim fat oddilu(pokud se neco nezmenilo))![]()
Jak vypada krok po kroku to bootovani pi zero w?Pokud se dobře vzpomínám, tak Raspberries* jsou trochu zvláštní v tom, že prvotní inicalizaci provádí GPU a teprve potom předává štafetu CPU. *) A nevim o tom, že by Zero W byla nějaká výjimka.
bootcode.bin
a ten ve vfat oddilu /boot k memu prekvapeni nebyl. Vubec. Prekvapko. Stahnu ho, vlozim tam, strcim kartu z laptopu do pi a zacalo to poblikavat. Ale dal nic.
Uz tusim, ze jsem na spravne stope, zapnu tedy ssh a kouknu do toho vedle beziciho pi, co ma v oddilu /boot a
krome bootloaderu tam jsou jeste nejake srandy, binarky .elf, a k nim odpovidajici linery .dat, tak tam asi tak 8 souboru nadrzo nakopiruju, odmountuju, prendam kartu, zapnu, a bum, ono to funguje. He?
Nabootovalo to, a uz jsem se tam i dostal pres ssh. Necekany uspech. funguje webserver, i php, i pihole. Jeste koukam na dmesg, a jsou tam nejake problemy, ale nevyznam se v tom.
Pastebin prvniho dmesg
Zajimalo by mne jestli je nejaky balik nebo postup, ktery by ten boot oddil dal do poradku protoze tohle byla strasna prasarna...des bes.
sudo apt update && sudo apt install --reinstall raspberrypi-bootloader raspberrypi-kernel("aktivne" sem zmenil apt-get na apt, doufam ze rpi ho ma, kdyztak viz ten link
sudo apt-get update; sudo apt-get install --reinstall raspberrypi-bootloader raspberrypi-kernel
skonci to s chybou:
Get:4 http://archive.raspberrypi.org/debian buster/main armhf Packages [346 kB] Fetched 13.4 MB in 31s (427 kB/s) Reading package lists... Done E: dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' to correct the problem.naivne se rozhodnu pustit to
sudo dpkg --configure -a
, neco se zacne zurive dit, a tusim, ze neco nedobreho...
Setting up raspberrypi-kernel (1.20201201-1) ... Removing 'diversion of /boot/overlays/hifiberry-dacplushd.dtbo to /usr/share/rpikernelhack/overlays/hifiberry-dacplushd.dtbo by rpikernelhack' Removing 'diversion of /boot/overlays/hifiberry-digi-pro.dtbo to /usr/share/rpikernelhack/overlays/hifiberry-digi-pro.dtbo by rpikernelhack' ... asi 100 radku tehoz, a pak ... Removing 'diversion of /boot/overlays/spi-gpio35-39.dtbo to /usr/share/rpikernelhack/overlays/spi-gpio35-39.dtbo by rpikernelhack' dlouho nic, jakoby to vytuhlo... packet_write_wait: Connection to 2601:5c4:4300:89e:21b8:6ec9:571b:bd4b port 22: Broken pipeskoro bych rekl, ze probehlo to, co melo a znicilo to fungujici system...podruhe, tahle to zkapalo pri prvnim pokusu o normalni apt-get upgrade zacatkem tydne... protoze tentokrat jsem to pro jistotu pustil z galvanicky oddelene powerbanky, a z nove sd karty s kopii starych dat...nechce se mi verit, ze by experti z PiOS udelali chybu a meli update, ktery vsem brickuje zarizeni... Ponekud nastvan uvazuju, ze proste vezmu cely /boot oddil z karty v te druhe maline a proste ho scp vykopiruju na tu prvni, potom, co na ni pustim rm -rf na oddil /boot ... co se muze stat? Je to moc debilni napad?
logger '### nedele ###' ; sudo journalctl -f | sudo /bin/sh -c "cat > /dev/tty1" &
Coz mi presmerovalo vystup logu na ten pripojeny monitor. Klavesnici nemam, resp tu, co mam tak po pripojeni nic nedela...
po spusteni trivialniho, nenarocneho prikazu sudo apt update -y ; sudo apt upgrade -y
to zkapalo. Neco probehlo rychle, ale neco mi zustalo na monitoru...tady je screenshot, a to doslova, je to fotka monitoru...
moudry z toho teda nejsem...
Coz mi presmerovalo vystup logu na ten pripojeny monitor.
V dávných dobách bylo normální mít syslog nastavený, aby logoval na virtuální konzolu.
neco mi zustalo na monitoru
To ti zpanikařilo jádro, protože program counter (registr, který ukazuje na místo do paměti, které se právě vykonává) obsahuje neplatnou adresu (která nemá dovoleno obsahovat spustitelný kód). A stalo se to při obsluze přerušení čtení přijatého síťového rámce a práci s SD kartou.
Panická hláška jádra by se s nejvyšší pravděpodobností vypsala na konzolu i bez toho čachrování s journalem.
Zkus použít jiné jádro a ujistit se, že v tom Rapsberry lze přečíst celý souborový systém.
Já jsem více jak 2 roky používal na RPi ADATA Industrial micro SD 16 GB (MLC, S.M.A.R.T., ECC) a naprostá spokojenost. Nejdříve jsem jí měl v RPi 3B+ a pak v RPi 4B a s kartou nebyl nikdy vůbec žádný problém. Tahle SD karta je vlastně takové malé SSD. Asi před 14 dny jsem jí z RPi vytáhl a nainstaloval jsem systém na 120 GB SSD a je to super. Takže na tvém místě bych si koupil RPi 4B (2 | 4 GB RAM) a nějaké to SSD a hotovo.
BTW: ta SD karta tenkrát stála více jak to SSD, které jsem nedávno pro RPi OS koupil.
Zapomněl jsem uvést, že ta SD karta ty 2+ roky jela 24/7. Několikrát jsem na ní instaloval, nebo obnovoval rozbitý OS. Fakt držák.
A proč nechceš dát OS na 120 GB SSD za ~ $20 USD? Bude to někde úplně jinde.
Spotřeba
Nula celá nula nic/rok.
Teplo
To je vtip?
Rozměry
Nevěřím, že je to problém, ale kdyby ano, tak RPi může ležet na SSD. Já osobně mám vespod RPi hliníkový chladič, který je takřka studený.
console=serial0,115200 console=tty1 root=/dev/nfs nfsroot=172.16.1.254:/data/nfs/rpi1 ip=dhcp rootfstype=nfs elevator=deadline quiet
$ mount | grep ^tmpfs tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev) tmpfs on /run type tmpfs (rw,nosuid,nodev,mode=755) tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k) tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,mode=755) tmpfs on /tmp type tmpfs (rw,relatime) tmpfs on /var/lib/pulse type tmpfs (rw,relatime) tmpfs on /var/lib/NetworkManager type tmpfs (rw,relatime) tmpfs on /var/tmp type tmpfs (rw,relatime) tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=94828k,mode=700,uid=1000,gid=1000)Ale pravdou je, že tam běží jen PulseAudio a je to píchnuté po HDMI do AV receiveru. Alternativní přístup je udělat overlay a nechat, ať se zapisuje kam je libo. Po rebootu se to pak vrátí do definovaného stavu. Případně jde čas od času propisovat ten overlay do trvalejšího úložiště. Hodně záleží, pro jakou aplikaci to děláš a co po tom chceš.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.