您的位置:首页 > 运维架构 > Linux

【鸟哥Linux】Linux 磁盘与文件系统管理

2016-12-18 22:11 447 查看
不同的操作系统对文件管理方式各不相同,因为他们对于文件的权限属性等信息都有不同的规定,只有被格式化为与操作系统相适合的文件系统,才能被操作系统识别并且使用,下面主要研究Linux文件系统。

在Linux文件系统中,主要有以下几个重要的概念

superblock:记录此 filesystem 的整体信息,包括inode/block的总量、使用量、剩余量, 以及文件系统的格式与相关信息等;

inode:记录文件的属性,一个文件占用一个inode,同时记录此文件的数据所在的 block 号码;

block:实际记录文件的内容,若文件太大时,会占用多个 block 。这里要注意区分扇区和block,扇区是硬件一次能够读写的最小单位,而一个block通常会占用2^n个扇区,block是软件一次读写的最小单位,增大block会提高性能降低利用率,减小block会提高利用率降低性能。

实体链接:不能跨文件系统,不能链接目录,原理是在目录下新建一个文件名,链接到文件的inode。

符号链接:创建一个独立的文件,保存了被链接文件的完整路径,文件大小等于路径名的长度。

单一文件系统不应该被挂载在不同的挂载点中,同一个挂载点不应该挂载多个文件系统,作为挂载点的目录,理论上应该是空的。

不仅可以挂载ext,vfat等常见文件系统,还可以挂载光盘镜像。

挂载时可以指定文件系统的一些参数,比如读写权限等,可以使用mount命令进行重新挂载。

可以通过修改 /etc/fstab 来设置开机自动挂载文件系统,每次修改之后最好通过mount -a命令测试挂载是否成功,否则可能导致系统无法启动。

可以制作一个loop设备文件并且对其进行格式化,甚至将其挂载到指定目录。

下面列出与文件系统有关的命令

dumpe2fs,可以查询指定分区的superblock信息以及block group信息。

ls -i,显示指定文件或目录的inode编号。

df,列出文件系统整体磁盘使用量。

du,评估文件系统的磁盘使用量。

ln,创建实体链接或者符号链接。

lsblk,可以列出所有块设备的信息。

blkid,可以列出块设备的属性,如UUID等。

fdisk,用于对MBR分区进行操作。

gdisk,用于对GPT分区进行操作。

parted,用于对MBR及GPT分区进行操作。

mkfs,可以用来对指定分区进行格式化。

fsck,可以用来对文件系统进行检查。

mount,可以用来挂载一个文件系统。

umount,可以用来卸载一个文件系统。

mknod, 用来指定设备文件的类型。

tune2fs,用来调整ext文件系统的参数,如label name和UUID。

partprobe,用来手动更新设备分区信息。

dd,可以用来创建空文件。

mkswap,可以用来将分区格式化为swap分区。

swapon,启用交换分区或交换文件。

swapoff,关闭交换分区或交换文件。

free,显示系统内存的使用情况。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息