如何解释 /proc/mounts 中多次出现包含不同文件系统的 /dev/root 设备?
# cat /proc/mounts
rootfs / rootfs rw 0 0
/dev/root / ext3 rw,data=ordered 0 0
/dev /dev tmpfs rw 0 0
/proc /proc proc rw 0 0
/sys /sys sysfs rw 0 0
/proc/bus/usb /proc/bus/usb usbfs rw 0 0
devpts /dev/pts devpts rw 0 0
/dev/hda1 /boot ext3 rw,data=ordered 0 0
tmpfs /dev/shm tmpfs rw 0 0
none /proc/sys/fs/binfmt_misc binfmt_misc rw 0 0
sunrpc /var/lib/nfs/rpc_pipefs rpc_pipefs rw 0 0
/etc/auto.misc /misc autofs rw,fd=7,pgrp=2161,timeout=300,minproto=5,maxproto=5,indirect 0 0
-hosts /net autofs rw,fd=13,pgrp=2161,timeout=300,minproto=5,maxproto=5,indirect 0 0
nfsd /proc/fs/nfsd nfsd rw 0 0
/dev/root /var/lib/nfs ext3 rw,data=ordered 0 0
好的。这里我们有两个。一个用于 / 分区(/proc/cmdline:ro root=/dev/VolGroup00/LogVol00),另一个用于 /var/lib/nfs。但是:
# ls -la /var/lib/nfs
total 68
drwxr-xr-x 8 root root 4096 Aug 7 09:45 .
drwxr-xr-x 32 root root 4096 Aug 3 09:32 ..
-rw-r--r-- 1 root root 0 Feb 25 16:26 etab
-rw-r--r-- 1 root root 0 Feb 25 16:26 rmtab
drwxr-xr-x 2 root root 4096 Feb 25 16:26 rpc_pipefs
drwxr-xr-x 2 root root 4096 Aug 7 08:03 sm
drwxr-xr-x 2 root root 4096 Aug 7 08:03 sm.bak
drwxr-xr-x 4 root root 4096 Aug 7 09:45 sm.ha
drwx------ 4 rpcuser rpcuser 4096 Aug 3 06:52 statd
-rw------- 1 root root 0 Feb 25 16:26 state
drwxr-xr-x 2 root root 4096 Feb 25 16:26 v4recovery
-rw-r--r-- 1 root root 0 Feb 25 16:26 xtab
根文件系统和 /var/lib/nfs 的内容不同。一个块设备 /dev/root 怎么能反映不同的文件系统?为什么 /dev/root 会用于 /var/lib/nfs?
答案1
很抱歉打扰您,但我偶然找到了答案。 /etc/mtab 解释了以下事情:
# cat /etc/mtab
/dev/mapper/VolGroup00-LogVol00 / ext3 rw 0 0
proc /proc proc rw 0 0
sysfs /sys sysfs rw 0 0
devpts /dev/pts devpts rw,gid=5,mode=620 0 0
/dev/hda1 /boot ext3 rw 0 0
tmpfs /dev/shm tmpfs rw 0 0
none /proc/sys/fs/binfmt_misc binfmt_misc rw 0 0
sunrpc /var/lib/nfs/rpc_pipefs rpc_pipefs rw 0 0
nfsd /proc/fs/nfsd nfsd rw 0 0
/var/lib/nfs /var/lib/nfs none rw,bind 0 0
/dev/root 也用于绑定挂载。不要问我为什么 /var/lib/nfs 绑定挂载在其自身之上 :)