文件系统的操作
主要有:常用文件系统的操作、磁盘的分区、文件系统的挂载与卸载、修改磁盘参数
一、常用文件系统的操作
1、df 命令 //列出磁盘可用空间
df [-ahikhTm] [分区或卷标]
-a:列出所有文件系统
-k:以KB为单位显示各文件系统
-m:以MB为单位显示文件系统
-h:以GB\MB\KB格式显示。
-i:显示inode的数量。而不显示硬盘容量。
-T:连同该分区的文件系统名一起列出来。(如ext3)
后面接分区或卷标:就是示的分区的信息
例:df -h //显示所有分区的使用情况
2、du [-ahskm] 文件或目录 //查看目录磁盘占用空间
-a 列出所有的文件和目录容量。默认仅统计目录下的文件量。
-h:以以GB\MB\KB这种易读的格式显示。
-k:以KB为单位显示各文件系统
-m:以MB为单位显示文件系统
-s:列出总和。不显示每个目录占用的容量。
3、ln 链接命令
ln分为硬链接和软链接两种
(1)硬链接:linux文件系统把每个文件都分配一个inode号,即索引号,用以记录文件属性,和指引文件存放的块位置。硬链接即多个目录指向同一个文件inode位置的多条数据关联文件而以。即一个文件不同目录下的相同文件名,但指引的还是同一个文件。
不能给目录创建硬链接。只有在同一文件系统下才创建硬链接,不能跨分区,跨文件系统。
例: /home/khp/a.txt 这个文件a.txt建立时,inode号就已经建立,用以指引这个文件。当要找a.txt文件时,先找到/home/khp这个目录的inode,再找到/home/khp这个目录的块,块里面记录着下级文件a.txt的inode存放位置(假设a.txt的inode号为10086)10086,以指向a.txt的inode。找到a.txt的inode,再根据 inode中的内容读出inode所指的块,读出文件内容。
当我把/home/khp/a.txt这个文件做硬链接到 /home/pla/a.txt ,此时只是在目录/home/pla的块中增加一条指向inode位置为10086的数据关联文件,要找/home/pla/a.txt还是先找到/home/pla这个目录的inode,再找到这个目录的块,从块里读取a.txt的inode的所在位置,因为此时inode位置仍为10086,所以仍读出相同的块所指位置,读出相同的文件内容。
即/home/khp/a.txt和/home/pla/a.txt其实是同一个文件。只是在目录/home/khp和/home/pla中都增加了一条指向了文件a.txt的inode位置的关联文件。inode位置相同都为10086,指引的块也相同,内容当然也相同。所以即是一个文件的不同目录的相同文件名。
硬链接的删除:如上例中,不管我删除哪一个目录下的a.txt,只是删除了相关目录中的块中的关联数据罢了。并不会删除文件的数据。要彻底删除一个做了硬链接的文件,就要删除做