初学LINUX笔记(5)磁盘和文件系统简单操作

获取磁盘和目录容量

主要用到了两个指令:

  1. df:列出文件系统的整体磁盘使用情况
  2. du:评估文件系统磁盘的使用量,常用在推估目录所占容量

df

df [-ahikHTm] filename

下表为参数和选项:

选项作用
-a列出所有文件系统,包括文件特有的/proc等文件系统
-k以Kbytes的容量显示各文件系统
-m以MBytes的容量显示各文件系统
-h以人们较容易阅读的Gbytes、Mbytes、Kbytes等进行阅读
-H以M=1000K取代1024K的进位方式
-i不用磁盘容量,而已inode的个数来显示

在这里插入图片描述

下面选择较易阅读的容量格式进行显示:
在这里插入图片描述
可以发现,会根据文件实际的大小进行合适的容量格式进行显示

du

du [-ahskm] filename
选项作用
-a列出所有的文件与目录容量(默认仅统计目录底下的文件量
-h以人们较容易阅读的容量格式进行显示(与df类似)
-s列出总量,而不列出每个目录所占的容量
-S不包括子目录下的统计,与-s类似
-k以KBytes的容量格式进行显示
-m以MBytes的容量格式进行显示

在这里插入图片描述

实体链接和符号链接

先来讲一下连结档, linux的连结档有两种:

  1. 符号链接: 类似window的快捷方式功能的文件
  2. 硬链接: 透过文件系统的inode连接来产生新的档名

他们与原文件的关系如下图:
在这里插入图片描述

实体链接 Hard Link

简单来讲:实体链接就是在某个目录下新增一笔档名链接到inode号码的关连记录。因为文件的内容与inode有关,我们可以让多个档名对应相同的文件内容即可实现。

所以**Hard Link可以理解为在某个目录下的一个档名,用来链接到某个inode号码的关连记录。**换言之,硬链接就是同一个文件使用了多个别名。

创建方法为:

link oldfile newfile 
ln oldfile newfile

但文件系统对hard link也有限制,例如:

  1. 不能跨文件系统:因为不同的文件系统的相同inode不一定有相同的意义。
  2. 不能连结目录:现 Linux 文件系统中的目录均隐藏了两个个特殊的目录:当前目录(.)与父目录(…)。查看这两个特殊目录的 inode 号可知其实这两目录就是两个硬链接(注意目录 /mnt/lost+found/ 的 inode 号)。若系统允许对目录创建硬链接,则会产生目录环。

symblic link 符号链接

文件用户数据块中存放的内容是另一文件的路径名的指向,则该文件就是软连接。
创建方法如下:

ln -s oldfile newfile

只是比硬链接时多了个-s的参数。

磁盘的分区、格式化、检验、挂载

先来了解一下,在系统里添加一颗磁盘的过程:

  1. 对磁盘进行分区,用来建立可用的partition
  2. 对该partition进行格式化,用来建立系统可用的文件系统
  3. 可以选择对刚刚建立好的文件系统进行检验
  4. 需要建立挂载点(或者是目录),将他挂载在文件系统上

观察磁盘分区状态

lsblk

用于列出系统上所有磁盘列表,lsblk是 list block device 的缩写。

lsblk [-dfimpt] device
参数作用
-d仅仅列出磁盘本身,并不会列出该磁盘分区数据
-f同时列出该磁盘内的文件系统名称
-i使用ASCII的线段输出,不用复杂的编码
-m同时输出该装置在/dev底下的权限数据
-p列出该装置的完整文件名
-t列出磁盘装置内的详细数据,包括磁盘队列机制、预读写的数据量大小等

在这里插入图片描述

输出信息含义
NAME装置的文件名,会省略/dev等前导目录
MAJ:MIN主要:次要装置代码
RM是否为可卸除装置,例如光盘,USB磁盘等
SIZE容量
RO是否为只读装置,1为只读装置
TYPE磁盘disk, 分区槽partition, 只读存储器rom
MOUTPOINT挂载点

blkid

先来了解一下UUID是什么,UUID:wuniversally unique identifier,Linux会将系统内所有的装置给予一个独立的标识符。
blkid可以用来找出装置的UUID。
在这里插入图片描述
这里的PARTUUID是是该特定分区唯一可访问的惟一标识符

磁盘分区

鸟哥写的是GPT分区的,而我的服务器用的是msdos分区,用的是fdisk。下面以我的服务器为例:

添加新的分区槽

在这里插入图片描述

partprobe 更新Linux核心的分区表信息

配置结束,系统还不能识别分区,需要重新载入完整的磁盘,这时候可以用partprobe进行更新Linux核心信息。
在这里插入图片描述

磁盘格式化(建立文件系统)

格式化实际上就是建立文件系统的过程,指令是mkfs(make filesystem),指令后面跟的指令与想要建立的文件系统有关:

  • XFS文件系统为mkfs.xfs
  • EXT4文件系统为mkfs.ext4
    当然mkfs也支持其他的文件系统,例如ext2, ext3, vfat等文件系统

文件系统检验

如果文件系统发生粗乱,那么可以用文件系统检验来拯救。

ext4文件系统的文件系统检验

这奴棣ext4可以用fsck.ext4指令来处理。

fsck.ext4 [-pf] [-b superblock] device
选项作用
-p当文件系统在修复时,若有需要回复y的动作,则自动回复y来继续动作。
-f强制检查,强制fsck进入细部检查
-b后面接的时superblock的位置(只有在superblock损毁是使用),可以利用文件系统内备份的superblock来进行救援。

xfs文件系统的文件系统检验

用xfs_repair来处理xfs文件系统

xfs_repair [-fnd] device
选项作用
-f后面的装置实际上是一个文件而不是实体装置
-n单纯检差并不修改文件系统的任何数据(只是检查)
-d通常在单人维护模式底下,针对根目录斤西瓜检查和修复的动作(不推荐使用,很危险

不论哪个文件系统,通常只有文件系统存在问题的时候才使用这个指令,否则正常情况使用会对系统造成危害。
还有一点就是文件系统检验的时候,被检查的partition必须没有挂载到系统上(也就是在卸除的状态)。否则就会有以下的情况:
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Zccccccc_tz

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值