abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 05:11 | Komunita

    Během tradiční ceremonie k oslavě Dne vzniku samostatného československého státu (28. října) byl vyznamenán medailí Za zásluhy (o stát v oblasti hospodářské) vývojář 3D tiskáren Josef Průša. Letos byly uděleny pouze dvě medaile Za zásluhy o stát v oblasti hospodářské, druhou dostal informatik a manažer Ondřej Felix, který se zabývá digitalizací státní správy.

    🇹🇬 | Komentářů: 13
    dnes 04:44 | Nová verze

    Tor Browser, tj. fork webového prohlížeče Mozilla Firefox s integrovaným klientem sítě Tor přednastavený tak, aby přes tuto síť bezpečně komunikoval, byl vydán ve verzi 15.0. Postaven je na Firefoxu ESR 140.

    Ladislav Hagara | Komentářů: 1
    včera 16:44 | Nová verze

    Bylo oznámeno (cs) vydání Fedora Linuxu 43. Ve finální verzi vychází šest oficiálních edic: Fedora Workstation a Fedora KDE Plasma Desktop pro desktopové, Fedora Server pro serverové, Fedora IoT pro internet věcí, Fedora Cloud pro cloudové nasazení a Fedora CoreOS pro ty, kteří preferují neměnné systémy. Vedle nich jsou k dispozici také další atomické desktopy, spiny a laby. Podrobný přehled novinek v samostatných článcích na stránkách Fedora Magazinu: Fedora Workstation, Fedora KDE Plasma Desktop, Fedora Silverblue a Fedora Atomic Desktops.

    Ladislav Hagara | Komentářů: 0
    včera 15:22 | IT novinky

    Elon Musk oznámil (𝕏) spuštění internetové encyklopedie Grokipedia (Wikipedia). Zatím ve verzi 0.1. Verze 1.0 prý bude 10x lepší, ale i ve verzi 0.1 je podle Elona Muska již lepší než Wikipedia.

    Ladislav Hagara | Komentářů: 13
    včera 05:44 | Komunita

    PSF (Python Software Foundation) po mnoha měsících práce získala grant ve výši 1,5 milionu dolarů od americké vládní NSF (National Science Foundation) v rámci programu "Bezpečnost, ochrana a soukromí open source ekosystémů" na zvýšení bezpečnosti Pythonu a PyPI. PSF ale nesouhlasí s předloženou podmínkou grantu, že během trvání finanční podpory nebude žádným způsobem podporovat diverzitu, rovnost a inkluzi (DEI). PSF má diverzitu přímo ve svém poslání (Mission) a proto grant odmítla.

    Ladislav Hagara | Komentářů: 23
    včera 04:55 | Nová verze

    Balík nástrojů Rust Coreutils / uutils coreutils, tj. nástrojů z GNU Coreutils napsaných v programovacím jazyce Rust, byl vydán ve verzi 0.3.0. Z 634 testů kompatibility Rust Coreutils s GNU Coreutils bylo úspěšných 532, tj. 83,91 %. V Ubuntu 25.10 se již používá Rust Coreutils místo GNU Coreutils, což může přinášet problémy, viz například nefunkční automatická aktualizace.

    Ladislav Hagara | Komentářů: 0
    27.10. 21:00 | IT novinky

    Od 3. listopadu 2025 budou muset nová rozšíření Firefoxu specifikovat, zda shromažďují nebo sdílejí osobní údaje. Po všech rozšířeních to bude vyžadováno někdy v první polovině roku 2026. Tyto informace se zobrazí uživateli, když začne instalovat rozšíření, spolu s veškerými oprávněními, která rozšíření požaduje.

    Ladislav Hagara | Komentářů: 0
    27.10. 17:11 | Humor

    Jste nuceni pracovat s Linuxem? Chybí vám pohodlí, které vám poskytoval Microsoft, když vás špehoval a sledoval všechno, co děláte? Nebojte se. Recall for Linux vám vrátí všechny skvělé funkce Windows Recall, které vám chyběly.

    Ladislav Hagara | Komentářů: 1
    27.10. 16:11 | Komunita

    Společnost Fre(i)e Software oznámila, že má budget na práci na Debianu pro tablety s cílem jeho vyžívání pro vzdělávací účely. Jako uživatelské prostředí bude použito Lomiri.

    Ladislav Hagara | Komentářů: 1
    26.10. 17:11 | IT novinky

    Proběhla hackerská soutěž Pwn2Own Ireland 2025. Celkově bylo vyplaceno 1 024 750 dolarů za 73 unikátních zranitelností nultého dne (0-day). Vítězný Summoning Team si odnesl 187 500 dolarů. Shrnutí po jednotlivých dnech na blogu Zero Day Initiative (1. den, 2. den a 3. den) a na YouTube.

    Ladislav Hagara | Komentářů: 5
    Jaké řešení používáte k vývoji / práci?
     (36%)
     (48%)
     (20%)
     (19%)
     (23%)
     (17%)
     (21%)
     (17%)
     (18%)
    Celkem 280 hlasů
     Komentářů: 14, poslední 14.10. 09:04
    Rozcestník

    Dotaz: fstab - read-only

    16.5.2020 23:13 __blr__
    fstab - read-only
    Přečteno: 563×
    Zdravím,

    mám embedded Linux (Debian) a potřebuju vytvořit read-only zařízení - všechny změny do RAM a po restartu se zapomenou (overlay).

    Původní /etc/fstab:
    /dev/root            /                    ext4 defaults              1  1
    proc                 /proc                proc       defaults              0  0
    devpts               /dev/pts             devpts     mode=0620,gid=5       0  0
    usbdevfs             /proc/bus/usb        usbdevfs   noauto                0  0
    tmpfs                /run                 tmpfs      mode=0755,nodev,nosuid,strictatime 0  0
    tmpfs                /var/volatile        tmpfs      defaults              0  0
    tmpfs                /tmp                 tmpfs      defaults              0  0
    
    Upravil jsem na následující konfigurace, která nefunguje:
    tmpfs            /                    tmpfs       defaults              1  1
    tmpfs                /upperdir                 tmpfs      defaults             0  0
    tmpfs                /workdir                 tmpfs      defaults              0  0
    overlay              /            overlay    defaults,lowerdir=/dev/root,upperdir=/upperdir,workdir=/workdir 0  0
    proc                 /proc                proc       defaults              0  0
    devpts               /dev/pts             devpts     mode=0620,gid=5       0  0
    usbdevfs             /proc/bus/usb        usbdevfs   noauto                0  0
    tmpfs                /run                 tmpfs      mode=0755,nodev,nosuid,strictatime 0  0
    tmpfs                /var/volatile        tmpfs      defaults              0  0
    tmpfs                /tmp                 tmpfs      defaults              0  0
    
    Po výpisu mount:
    /dev/mmcblk1p1 on / type ext3 (rw,relatime,data=ordered)
    devtmpfs on /dev type devtmpfs (rw,relatime,size=347340k,nr_inodes=86835,mode=755)
    sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
    proc on /proc type proc (rw,relatime)
    tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
    devpts on /dev/pts type devpts (rw,relatime,gid=5,mode=620,ptmxmode=000)
    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)
    cgroup2 on /sys/fs/cgroup/unified type cgroup2 (rw,nosuid,nodev,noexec,relatime)
    cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,name=systemd)
    bpf on /sys/fs/bpf type bpf (rw,nosuid,nodev,noexec,relatime)
    cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
    cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
    cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
    cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,pids)
    cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
    cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_cls,net_prio)
    cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpu,cpuacct)
    cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
    cgroup on /sys/fs/cgroup/debug type cgroup (rw,nosuid,nodev,noexec,relatime,debug)
    cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
    systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=29,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=3089)
    mqueue on /dev/mqueue type mqueue (rw,relatime)
    debugfs on /sys/kernel/debug type debugfs (rw,relatime)
    tmpfs on /upperdir type tmpfs (rw,relatime)
    tmpfs on /workdir type tmpfs (rw,relatime)
    tmpfs on /tmp type tmpfs (rw,relatime)
    tmpfs on /var/volatile type tmpfs (rw,relatime)
    Tudíž je patrné, že overlay tam vůbec není.

    Na jednom zařízení jsem viděl toto:
    rootfs on / type rootfs (rw)
    /dev/root on /rom type squashfs (ro,relatime)
    proc on /proc type proc (rw,noatime)
    sysfs on /sys type sysfs (rw,noatime)
    tmpfs on /tmp type tmpfs (rw,nosuid,nodev,noatime)
    /dev/mtdblock5 on /overlay type jffs2 (rw,noatime)
    overlayfs:/overlay on / type overlay (rw,noatime,lowerdir=/,upperdir=/overlay/upper,workdir=/overlay/work)
    tmpfs on /dev type tmpfs (rw,relatime,size=512k,mode=755)
    devpts on /dev/pts type devpts (rw,relatime,mode=600)
    debugfs on /sys/kernel/debug type debugfs (rw,noatime)
    /dev/mtdblock7 on /mnt/mtdblock7 type jffs2 (rw,relatime)
    
    Ale nevím, jak se k tomu dostat.

    Máte s tím někdo zkušenosti?

    Díky za rady

    Odpovědi

    k3dAR avatar 17.5.2020 00:25 k3dAR | skóre: 63
    Rozbalit Rozbalit vše Re: fstab - read-only
    minimalne mas spatne lowerdir na device misto na adresar, tzn. musel bys nad to pridat:
    /dev/root            /ro                    ext4 defaults              1  1
    a overlay radek zmenit na:
    overlay              /            overlay    defaults,lowerdir=/ro,upperdir=/upperdir,workdir=/workdir 0  0
    ale v tmpfs pretim mountlem / nemas adresar /ro takze se to nepripoji, ten ro budes muset pripravit asi v initramfs, nebo mit nejakej dummy oddil kde budes mit to /ro pripravene a misto tmpfs na / pripojis ten oddil...

    a dost mozna ani to nebude stacit, v praxi sem to takto na rootfs neoveroval...
    porad nemam telo, ale uz mam hlavu... nobody
    k3dAR avatar 17.5.2020 00:26 k3dAR | skóre: 63
    Rozbalit Rozbalit vše Re: fstab - read-only
    v *buntu je na to koukam pripraven balicek, asi bych pro prostudoval (bejt tebou) pro inspiraci ;-)
    porad nemam telo, ale uz mam hlavu... nobody
    k3dAR avatar 17.5.2020 00:28 k3dAR | skóre: 63
    Rozbalit Rozbalit vše Re: fstab - read-only
    pripadne inspiraci hledat v reseni pro Raspbian...
    porad nemam telo, ale uz mam hlavu... nobody
    17.5.2020 00:43 __blr__
    Rozbalit Rozbalit vše Re: fstab - read-only
    ale v tmpfs pretim mountlem / nemas adresar /ro takze se to nepripoji, ten ro budes muset pripravit asi v initramfs, nebo mit nejakej dummy oddil kde budes mit to /ro pripravene a misto tmpfs na / pripojis ten oddil...

    a dost mozna ani to nebude stacit, v praxi sem to takto na rootfs neoveroval...
    Ano, to nefunguje.

    initramfs - dobře, dejme tomu, že bych to připravil. Ale jak potom zakážu v systemd, aby se o mount nesnažil? A naopak přesvědčil systemd, aby zapnul initramfs.
    v *buntu je na to koukam pripraven balicek, asi bych pro prostudoval (bejt tebou) pro inspiraci ;-)
    Na to jsem koukal, na Debianu není. Debian vše řeší přes systemd a ten já teď neumím přesvědčit, aby respektoval /etc/fstab
    pripadne inspiraci hledat v reseni pro Raspbian...
    Pokud bych to tak udělal, tak musím nahradit odkaz v /sbin/init ze systemd na tento skript. A ten skript ho na konci zase volá. Co by se stalo s již namountovaným diskem.... ?

    k3dAR avatar 17.5.2020 00:52 k3dAR | skóre: 63
    Rozbalit Rozbalit vše Re: fstab - read-only
    ted to mas bez initramfs?

    obecne aby systemd nepripojoval radek v fstab mu pridat k volbam: nofail,x-systemd.device-timeout=1
    (ovsem nevim zda to je reseni v tve situaci)

    ne nahradit /sbin/init, ale pridat (jak je tam uvedene) jako novej skript a jeho cestu mit v cmdline pro init=
    porad nemam telo, ale uz mam hlavu... nobody
    k3dAR avatar 17.5.2020 00:59 k3dAR | skóre: 63
    Rozbalit Rozbalit vše Re: fstab - read-only
    btw: ze v Debianu overlayroot balicek neni vim, prave proto sem psal na inspiraci, aby si z nej(z toho pro *buntu) zjistil jak to maji poresene a zkusil to podle toho, kernel.org o cmdline pro overlayfs mlci, takze predpokladam zaridit overlayfs bez initramfs (alespon "vnoreneho" do jadra kdyz uz ne samostatnej soubor) to nepujde.
    porad nemam telo, ale uz mam hlavu... nobody
    Josef Kufner avatar 17.5.2020 01:32 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: fstab - read-only
    Já na to šel trochu jinak. Ponechal jsem root read-only a na pár míst popřipojoval tmpfs. Funguje to celkem v pohodě, i když je to jen jednoúčelová věc a v mnoha jiných případech to nebude stačit.

    Nakonec jsem si vystačil s tímto v /etc/fstab:
    tmpfs                   /tmp                    tmpfs   defaults        0 1
    tmpfs                   /var/tmp                tmpfs   defaults        0 1
    tmpfs                   /var/lib/pulse          tmpfs   defaults        0 1
    tmpfs                   /var/lib/NetworkManager tmpfs   defaults        0 1
    
    Logování nastaveno jen do paměti a bylo potřeba poladit nějaké ty detaily okolo, jak se co některým službám nelíbilo.
    Hello world ! Segmentation fault (core dumped)
    Jendа avatar 17.5.2020 04:50 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: fstab - read-only
    Po mně to chtělo ještě nějaké /var/lib/dhcp, ntp a změnit openvpn status.
    Jendа avatar 17.5.2020 04:52 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: fstab - read-only
    Máš i ro parametr kernelu? Jinak se to asi připojí rw bez ohledu na fstab…

    Jinak pro Debian na Raspberry používám tohle, podle mě by to mělo fungovat i jinde.
    17.5.2020 07:43 __blr__
    Rozbalit Rozbalit vše Re: fstab - read-only
    Parametry jádra:
    root=/dev/mmcblk1p1 console=ttymxc0,115200 ro init=/sbin/init systemd.volatile=state loglevel=4
    Jinak pro Debian na Raspberry používám tohle, podle mě by to mělo fungovat i jinde.
    Díky, vyzkouším odpoledne, napíšu.

    Stejná otázka jako výše - po provedení těchto změn se systemd nepokusí o mount? Koukám, že to je vyšší verze toho, co psali v diskuzu na odkazu od k3dAR.
    k3dAR avatar 17.5.2020 15:49 k3dAR | skóre: 63
    Rozbalit Rozbalit vše Re: fstab - read-only
    jak sem psal vyse, nahradit v cmdline ten init= takze se to nezacykli a systemd init a jeho sluzby uz nebude delat to same, a v fstab uz ne budes mit veci pro rootfs&overlay, takze systemd remount delat nebude
    porad nemam telo, ale uz mam hlavu... nobody
    17.5.2020 17:18 __blr__
    Rozbalit Rozbalit vše Re: fstab - read-only
    Po nastudování:

    Ano, initramfs nepoužívá.

    Jak to vůbec bootuje - jedná se o TS-7970 - u-boot

    Změna parametrů jádra se provádí editací souboru a následné vygenerování skriptu pro u-boot.

    Detaily zde.

    Takže nyní jsem před situací, kdy jsem přidal skript do initramfs a následně podle tohoto návodu (odkaz):
    # Install:
    #  put this file in /etc/initramfs-tools/scripts/init-bottom/root-ro
    #  chmod 0755 /etc/initramfs-tools/scripts/init-bottom/root-ro
    #  add `overlay` to /etc/initramfs-tools/modules
    #  mkinitramfs -o /boot/initrd
    #  add `root-ro-driver=overlay` to the line in /boot/cmdline.txt
    #  add the following to /boot/config.txt:
    #    initramfs initrd followkernel
    #    ramfsfile=initrd
    #    ramfsaddr=-1
    
    vygeneroval /boot/initrd, s chybovou hláškou:
    couldn't identify type of root file system for fsck hook
    Tímto souborem jsem nahradil soubor /boot/uImage, odkud si u-boot bere obraz jádra (zdroják - řádek 214)

    Skončil jsem chybou, u-boot
    U-Boot 2015.04-07916-g9cbc866 (Mar 27 2017 - 10:20:53)
    
    CPU:   Freescale i.MX6SOLO rev1.1 at 792 MHz
    CPU:   Temperature 57 C
    Reset cause: WDOG
    Board: TS-7970 REV D/E
    I2C:   ready
    DRAM:  1 GiB
    MMC:   FSL_SDHC: 0, FSL_SDHC: 1
    SF: Detected N25Q64 with page size 256 Bytes, erase size 4 KiB, total 8 MiB
    *** Warning - bad CRC, using default environment
    
    In:    serial
    Out:   serial
    Err:   serial
    FPGA Rev: 7
    SilabRev: 2
    Net:   using phy at 1
    FEC [PRIME]
    Booting from the SD card ...
    221 bytes read in 364 ms (0 Bytes/s)
    Booting from custom /boot/boot.ub
    ## Executing script at 12000000
    ** File not found /boot/ts7970-fpga.vme **
    41770 bytes read in 340 ms (119.1 KiB/s)
    5214840 bytes read in 587 ms (8.5 MiB/s)
    Wrong Image Format for bootm command
    ERROR: can't get kernel image!
    

    a teď
    jak sem psal vyse, nahradit v cmdline ten init= takze se to nezacykli a systemd init a jeho sluzby uz nebude delat to same, a v fstab uz ne budes mit veci pro rootfs&overlay, takze systemd remount delat nebude
    parametry jádra:
    root=/dev/mmcblk1p1 console=ttymxc0,115200 ro init=/sbin/init systemd.volatile=state loglevel=4
    Soubor config.txt nemám, parametry jsou předávány přes ten u-boot. Pokud je tedy chci změnit, musím u-boot skript přegenerovat.

    Tudíž myslíte přidat ho před /sbin/init ?
    k3dAR avatar 17.5.2020 21:03 k3dAR | skóre: 63
    Rozbalit Rozbalit vše Re: fstab - read-only
    pokud chapu spravne ze jsi initrd prejmenoval jako uImage, tak proto ti pak u-boot rve ze to neni platnej image, protoze uImage (format jadra pro u-boot) tam musi zustat a k tomu musis zajistit aby u-boot natahnul a pouzij jeste soubor initrd

    v cmdline by se menilo na init=/sbin/tenskript s tim predchozim "reseni" ktere si na konci poustelo samo /sbin/init, ten aktualni postup tuhle zmenu nepotrebuje, resi pres initramfs pridanej skript kterej predpokladam pousti podle detekovaneho parametru v cmdline: root-ro-driver=overlay

    btw: ber to vse jako spise teorie a namety, nez ze bych psal 100% nasmerovani/reseni... nejsem moc v obraze, zkusim aspon vytahnout ARM AC100 Netbook, kde mam podobne jako ty, resp. u-boot + boot.scr + uImage + initrd
    porad nemam telo, ale uz mam hlavu... nobody
    17.5.2020 22:59 __blr__
    Rozbalit Rozbalit vše Re: fstab - read-only
    Ano, máte pravdu. Přejmenovat soubor byl nerozum.

    Vygeneruju ramdisk, podle pravidel v /etc/initramfs/
    mkinitramfs -o /boot/initrd
    Současný uImage:
    Image Name:   Linux-4.9.11-g648ccf65b7f1
    Created:      Wed Apr 15 12:21:06 2020
    Image Type:   ARM Linux Kernel Image (uncompressed)
    Data Size:    4485600 Bytes = 4380.47 KiB = 4.28 MiB
    Load Address: 10008000
    Entry Point:  10008000
    Následně vygeneruju ramdisk pro u-boot
    mkimage -n "My_ramdisk" -A arm -O linux -T ramdisk -C none -a 10008000 -e 10008000 -d /boot/initrd uImage
    Vygenerovaný image:
    Image Name:   My_ramdisk
    Created:      Sun May 17 13:47:44 2020
    Image Type:   ARM Linux RAMDisk Image (uncompressed)
    Data Size:    5214857 Bytes = 5092.63 KiB = 4.97 MiB
    Load Address: 10008000
    Entry Point:  10008000
    Reboot

    Skončí to chybovou hláškou:
    ## Booting kernel from Legacy Image at 12000000 ...
       Image Name:   My_ramdisk
       Image Type:   ARM Linux RAMDisk Image (uncompressed)
       Data Size:    5214857 Bytes = 5 MiB
       Load Address: 10008000
       Entry Point:  10008000
       Verifying Checksum ... OK
    Wrong Image Type for bootm command
    ERROR: can't get kernel image!
    

    k3dAR avatar 18.5.2020 16:24 k3dAR | skóre: 63
    Rozbalit Rozbalit vše Re: fstab - read-only
    ses si jistej ze ten ramdisk obsahuje jadro? protoze jinak nacitas pouze initrd ve formatu pro u-boot ale nenacitas jadro, k AC100 nemuzu najit nabijecku abych to overil praxi :)
    porad nemam telo, ale uz mam hlavu... nobody
    19.5.2020 11:57 __blr__
    Rozbalit Rozbalit vše Re: fstab - read-only
    Ano, máte pravdu, přepsal jsem tím samotné jádro.

    Bylo potřeba upravit spouštění v u-boot.

    Nabootovalo mi to, teď to potřebuju otestovat, ale snad to bude dobrý.

    Každopádně díky!
    19.5.2020 13:01 __blr__
    Rozbalit Rozbalit vše Re: fstab - read-only
    Vycházel jsem z utkvělý představy, že ramdisk obsahuje i jádro, což jaksi nebyla pravda.

    Dále mě zmátnul příkaz bootm, kdy tam je adresa na jádro, ramdisk a nějakej device tree.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.