jelikož mount bere info z /etc/mtab (kam initrd z jistých důvodů nezapisuje) a ne z /proc/mounts, tak to / nezobrazí
To jsem nevěděl. Když porovnám mount a /proc/mounts (mluvím o Ubuntu 8.04), je v druhém skutečně navíc řádek/dev/sdb2 / ext3 rw,relatime,data=ordered 0 0
Takže zřejmě pokud není v fstab definován root directory, zůstane to připojené tak, jak to připojily skripty z initrd. Což většinou není problém, pokud jiný program nepotřebuje parsovat výstup z mount.
Teď je ještě otázka, proč compaq zakomentoval ten řádek s rd...
EDIT: Takže jestli to dobře chápu, tak:
1. Připojí se rootfs a spustí jeho init. Ten připojí mj. i "real filesystem" na disku do cesty definované ve virtuálu pomocí proměnné ${rootmnt} (vzaté z cmdline), ale jen jako ro.
2. Po projetí všech skriptů initrd se (viz run-init)
- překopíruje (pouze) obsah adresářů /proc a /sys z rootfs do reálu (to vysvětluje rozdíl ve výpisech mtab a mounts)
- vymaže obsah rootfs, ne již filesystem samotný (ten v mounts zůstává)
- přemountuje root do reálu a chrootne do něj
3. Skript /etc/init.d/checkroot.sh chybějící řádek v fstab nemá ošetřený, a defaultní remount proběhne s SIGSEGV, takže se do mtab nezapíše.