技术解析

请教一个 Linux 磁盘占用的问题
0
1975-02-24 09:50:00
idczone
用 df -h 命令看了下磁盘占用,结果如下

Filesystem Size Used Avail Use% Mounted on
/dev/sda3 4.5G 1.3G 3.0G 30% /
/dev/sda1 134M 13M 115M 10% /boot
/dev/sda4 94G 123M 89G 1% /data
tmpfs 2.0G 0 2.0G 0% /dev/shm

问下 /dev/sda3 挂载到了‘/’是什么意思?按我理解‘/’是根目录,包含所有磁盘的总大小,求指教,先谢过各位。
/是表示所有目录的开始 就像 windows 的 C:D:
不可能出现一个绝对路径 boot/1123 只能是 /boot/1123
所以 sda3 挂载到了 /
sda1 可以挂载到 /data
假如你有第二块盘 sdb1 还可以挂载到 /second

`/` 是挂载点,了解一下。。

想问的是某个挂载点对应的块设备是否包含其他挂载点的块设备吧?
虽然没读过相应文档,不过经验论就是块设备都是独立的
也就是说你挂载一个目录,就使得这一目录独享一个块设备了
而这一目录下的所有未挂载的子目录自然就位于该目录挂载的块设备上了
与之对应的这一目录下的子目录如果挂载到其他块设备,那么就不计入该目录的块设备容量统计中了,因为这个挂载点对应的块设备不是该子目录挂载点对应的块设备
目录树是抽象的存在,具体标准参考 FHS ;块设备是物理的设备
挂载就是将抽象和物理连接起来的一个操作
实现挂载的机制是操作系统内核提供的,属于文件系统的范畴
相应的有 mount 系统调用,本质上是提供一种连接两种不同文件系统的机制
说复杂了,对应你的问题就是你没理解目录树和挂载的概念吧
df 对应的每一行实际对应的是一个块设备的容量,挂载点是该块设备在操作系统文件系统的一个标识符
你就先这么理解着吧

挂载点是一个逻辑概念,是一个文件系统中的标识,而标识本身并不能得到自己的大小。
磁盘才有大小。

因为只有一个 root,没在其它上面的就都在 sda3
/boot/* 在 sda1
/data/* 在 sda4

sda3 挂载到 /了,/下有个目录叫 data,sda4 挂载到 data 了,这么说能理解吗

感谢各位解答,应该是明白了~

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服