He visto en varios sistemas Linux donde, en lugar del nodo del dispositivo real (por ejemplo:) /dev/sda1, el dispositivo raíz aparece como /dev/root, o en lugar del sistema de archivos real, mtabdice que es un sistema de archivos llamado rootfs(que aparece como un sistema de archivos real /proc/filesystems, pero no tiene código <linux-kernel-source-tree>/fs) Se han hecho varias utilidades para usar ciertos atributos para determinar el nodo del dispositivo raíz real (como rdev y el rootdev del sistema operativo Chromium). No puedo encontrar ninguna explicación lógica para esto que no sea leer en algún lugar que los dispositivos integrados muy pequeños no siempre tienen que tener un /devnodo de dispositivo para su dispositivo raíz. (¿Es esto cierto, y si es así, es esa la respuesta a mi pregunta?) ¿Por qué mtab a veces dice /dev/root(y creo que podría haberlo visto decirrootdevuna vez) en lugar del nodo del dispositivo real, y ¿cómo puedo hacer que siempre diga el nodo del dispositivo real? El núcleo primero monta el dispositivo raíz siguiendo el rootparámetro en la línea de cm, luego lo init/systemdvuelve a montar de acuerdo con el fstab, ¿correcto? Si es así, supongo que se Noté que en initmantiene mtab. Si mi teoría es correcta, ¿cómo puedo initescribir en el nodo del dispositivo raíz real mtab? /etc/mtabrealidad es un enlace simbólico /proc/mounts, lo que significaría que mtabel núcleo lo mantiene. Entonces, ¿cómo configuro / parcheo un núcleo para que, en lugar de decir que la ruta del nodo del dispositivo raíz sea /dev/root, mtabcontenga el nodo del dispositivo real?
mountdarootfs on / type rootfs (rw)para initrd y/dev/root on / type ext2 (rw,relatime,block_validity,barrier,user_xattr)para disco duro ext2 con esta configuración .