df -h 的输出信息
xxx:~$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 16G 0 16G 0% /dev
tmpfs 3.2G 792K 3.2G 1% /run
/dev/sda1 32G 1.7G 30G 6% /
tmpfs 16G 0 16G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 16G 0 16G 0% /sys/fs/cgroup
/dev/sda15 105M 5.3M 100M 5% /boot/efi
tmpfs 3.2G 0 3.2G 0% /run/user/1000
信息解读
各列的含义如下:
- Filesystem:文件系统名称。
- Size:文件系统的总大小。
- Used:已经使用的空间大小。
- Avail:可用的空间大小。
- Use%:已用空间的百分比。
- Mounted on:文件系统挂载点。
详细解释如下:
-
udev :udev 是一个设备文件系统,用于设备管理。它的大小是 16G,但不占用实际磁盘空间。
-
tmpfs(/run) :tmpfs 是一种基于内存的文件系统,通常用于临时文件存储。
-
/dev/sda1 : 这是根文件系统,即根目录大小。
-
tmpfs(/dev/shm) :是一个基于内存的共享内存文件系统。shm 是 shared memory(共享内存),通常用于进程间通信(IPC),因为它可以提供快速的读写访问。
-
tmpfs (/run/lock):是一个用于锁文件的 tmpfs。锁文件是用于防止多个进程同时访问共享资源的一种机制。
/run/lock
目录用于存储系统和应用程序的锁文件。这些锁文件确保在同一时间只有一个进程可以访问特定的资源,避免资源竞争和数据损坏。
关于锁文件的工作原理:
1.创建锁文件:当一个进程需要访问一个共享资源时,它会首先尝试创建一个锁文件。这个锁文件通常位于 /run/lock 目录下,并且文件名通常与资源的名称相关联。
2.检查锁文件:在创建锁文件之前,进程会检查对应的锁文件是否已经存在。如果存在,表示该资源当前正被另一个进程使用。
3.删除锁文件:一旦进程完成了对资源的使用,它会删除锁文件,表示资源现在可以被其他进程访问。
-
tmpfs (/sys/fs/cgroup):这是用于 cgroup(控制组)管理的 tmpfs。详细的来讲, /sys/fs/cgroup 是 cgroup 文件系统的挂载点。通过这个文件系统,用户和管理员可以访问和管理 cgroup 的相关信息和控制接口。例如,可以创建新的 cgroup、配置资源限制(如内存限制、CPU 限制),以及查看当前 cgroup 的资源使用情况。
-
/dev/sda15:这是 EFI 系统分区。
-
tmpfs(/run/user/1000):这是为用户 1000(通常是当前登录用户)分配的 tmpf。