第六章 磁盘和文件系统管理
一,本章内容
1,磁盘及分区管理
2,文件系统管理
3,RAID设备
4,LVM逻辑卷管理
5,磁盘配额管理
6,文件系统维护基础
备注:本Linux系统为RHEL5.3
二,磁盘及分区管理
1,fdisk查看磁盘设备列表
可以看出,共有vda,vdb。Vab没有分区。
在Linux系统中,所有的设备都被放置在目录/dev中。对于磁盘等存储设备而言,sd通常表示SCSI磁盘,STAT磁盘,U盘等设备,hd通常表示IDE磁盘。而软驱通常使用fd表示,光驱则用hdc或者cdrom表示。
2,hdparm查看磁盘设备命令
Hdparm [option] device
I:显示硬盘提供的硬件信息
T:评估硬盘从快速缓存中读取数据的速度
t:评估硬盘从缓存区中读取数据的速度
Hdparm命令只能用于IDE设备,SCSI设备及RAID设备。否则,会报以下错?
3,磁盘分区工具fdisk
Linux系统磁盘分区工具有fdisk,parted等,但通常使用fdisk工具。
磁盘分区可分为:
主分区:可直接挂载并存储(一个磁盘最多只有四个主分区)。
扩展分区:特殊主分区(占用一个主分区),要使用扩展分区,必须先将扩展分区划分为可以直接挂载并存储数据的逻辑分区。
逻辑分区:
分区工具fdisk
1] 首先,第一步# fdisk /dev/vdb #进入分区模式
2] 可以按m键获取帮助
3] p查看磁盘中是否已存在分区
4] n 建立第一个主分区
5] n 和e建立扩展分区
6] n 和l建立逻辑分区
7] p检查验证分区
8] w将默认保存在缓冲区的分区表同步到磁盘中
备注:如果不需要将缓冲区中的分区表同步到磁盘,可以使用命令q退出,并不保存已执行的操作。
有时候,内核无法识别新添加的分区,表现为设备目录/dev中,没有相应的分区文件或者分区文件不完全等。这时可以使用命令partprobe,让内核重新读取分区表。出现如下情况:
三,文件系统管理
1,Linux支持的文件
ext2:
ext3:
ext4:
ReiserFS:
XFS:
JFS:
NFS:
Iso9660:
除此之外,还支持另一些文件系统,如vfat,hpfs和sysv等。它们各有优缺点,具体使用时按需选择。一般默认即可满足一般用户需求。
2,mkfs创建文件系统
分区在使用前,应该对其进行创建文件系统(类似windows的格式化)。另外,为磁盘分区创建文件系统会丢失分区中的所有数据,因此创建文件系统之前应该备份分区中的数据。
mkfs [option] device
t:指定创建的文件系统类型
L:创建文件系统的同时,为文件系统添加卷标
c:创建文件系统前,先检查指定分区的坏道
分好区后创建文件系统,创建之后检查创建好的文件系统类型。查阅资料说#parted /dev/vdb可以,操作如下
3,e2label查看和修改卷标
卷标是用户对文件系统添加的别名,通常用于表示文件系统的用途。
# e2label device [newlabel]
[1]对于已存在文件系统的分区,可以修改卷标
# e2lable /dev/vda1 /file
[2] 不适用newlabel参数,可以查看卷标
4,mount挂载文件系统
Linux系统中,创建文件系统后,必须将文件系统挂载到某个目录,然后才能使用该文件系统存储数据。
举例如下:将分区/dev/sdb1挂载到目录/mnt/sdb1,挂载后向目录/mnt/sdb1内写入的数据实际将保存到分区/dev/sdb1内。此时将目录/mnt/sdb1称为/dev/sdb1的挂载点。
Mount [option] device directory
由于mount命令不能创建挂载点目录,因此在挂载之前,还需要使用mkdir命令创建挂载点目录。
上面的命令输出了一个目录lost+found,这个目录只存在于文件系统的根目录中,因此可以用此方法判断文件系统是否已经挂载成功。
不指定参数,mount命令查看系统中以挂载的文件系统:
有时候,如果无法确定某设备的标识符,可以使用#fdisk的选项l列出所有的设备,然后通过容量查找对应的标识符。
注意:以上是磁盘挂载,如果是光驱挂载,U盘挂载,镜像挂载等不一样,挂载点等不同。
[1]光驱挂载
# mount /dev/cdrom /media
[2]光盘镜像挂载
# mount -o loop linux.iso /media
[3]U盘等移动存储设备挂载
# mount /dev/sde1 /media
5,umount卸载文件系统
使用完U盘,光盘,移动硬盘等移动存储设备后,需要先卸载已经挂载的文件系统,然后再断开与主机的连接。
umount [option] directory
直接将挂载点作为umount命令的参数即可卸载。
# umount /media
如果用户没有将已经挂载的文件系统卸载,计算机关机时,系统会自动卸载所有的文件系统。
6,fstab自动挂载文件系统
Linux系统启动时会自动挂载文件/etc/fstab中记录的文件系统,可以利用这个文件自动挂载经常使用的磁盘分区。
设置自动挂载:
了解自动挂载文件中各字段的含义后,可以按上面的格式修改配置文件,并实现自动挂载文件系统。
例如要设置自动挂载/dev/sdb1,可以在文件结尾添加以下内容:
#使用设备自动挂载文件系统
/dev/sdb1 /mnt/sdb1 ext3 default 0 0
#使用卷标自动挂载文件系统
LABEL=/data /mnt/sdb1 ext3 default 0 0
上面两行分别使用了两种不同方式挂载文件系统,第一种直接使用设备名,第二种使用卷标的方式。各有优缺点,按需选择。
添加以上内容后,系统启动时就会自动将/dev/sdb1挂载到/mnt/sdb1。
设置自动挂载时,注意以下几点:
1] 如果要挂载的目录中已经存在数据,应先将数据拷贝到分区中,否则挂载之后将无法看到该目录中的原有内容。
2] 一般不要将光驱,U盘等移动设备添加到/etc/fstab文件中,这些设备更适合手动挂载。
注意:如果需要关机并从计算机上取出磁盘,应该先删除/etc/fstab文件中的自动挂载设置,然后再关机并取出磁盘,以免发生错误无法启动系统。
四,RAID设备
五,LVM逻辑卷管理
六,磁盘配额管理
磁盘配额可以限制用户或组在磁盘上存放文件的空间。
1,为磁盘配额提供支持
在Linux系统中为磁盘配额提供支持的是quota软件包。如系统没安装,可自行安装。
设置磁盘配额前,必须要获得文件系统支持。为此需系统中的自动挂载文件/etc/fstab,为相应的文件系统添加挂载参数:usrquota(启动用户限额)和grpquota(启用用户组限额)。
分三步,以文件系统/dev/vdb1为例,讲解如何建立磁盘配额:
[1] 要启用文件系统vdb1的配额支持,将其修改为一下内容:
[2] 修改完成以后,需要重新挂载文件系统,有两种方式重新挂载:
使用umount 和mount命令
使用mount的a选项自动挂载所有分区
[3] 修改完成以后,可以使用mount命令验证
2,quotacheck检查磁盘配额命令
启用文件系统配额后,还不能立即使用配额,还需检查相应文件系统,并建立磁盘配额文件。
quotacheck [option] filesystem
c:跳过原有配置文件,只执行新的扫描并保存到磁盘
v:显示命令详细信息
u:检查用户使用文件系统的情况
g:检查用户组使用文件系统的情况
[1] 检查磁盘分区/dev/vdb1,并将相关信息写入磁盘配置文件
[2] 查看当前命令执行结果
#ls -l /mnt/vdb1/quota*
可以看到,命令建立了两个文件:aquota.group和aquota.user文件。这两个文件分别用于存放用户和用户组的磁盘配额信息,包括文件系统的使用情况及配置信息等。
3,repquota查看磁盘使用情况
在所有用户都可以使用的文件系统上,并不需要为所有用户都配置磁盘配额,通常只需要为那些经常存放大文件,严重占用磁盘空间的用户配置即可。
查看上述命令的输出,并选择要限制的用户,之后就可以建立配额限制了。
4,edquota建立磁盘配额命令
完成上面几小节的准备工作后,就可以开始设置磁盘配额了。
edquota [option] [username | groupname]
使用edquota建立磁盘配额时,需要指定创建配额的用户和用户组。
常用选项:
u:指定限制的用户名称
g:指定限制的用户组名称
p:复制用户或组的配额信息
t:修改过渡期,即用户的磁盘配额超过软限制的宽限时间
[1] 为用户建立磁盘配额
运行上述命令,会打开用户配额配置页面,其中有两个soft和hard字段 ,前一组表示对空间大小的限制,后一组表示对文件数的限制。一般不在文件书上限制。此时修改配置页面内容保存即可。
[2] quota查看设置的磁盘配额
[3] 如要为多用户设置相同的磁盘配额,可先设置其中一个,再使用选项p将配额信息复制给其他用户
[4] 如需对某个组设立磁盘配额,使用选项g
[5] 过渡期也称配额宽限时间,指用户在磁盘上存放数据的空间或文件数超过了软限制,但没有达到硬限制时,用户还能使用的最长宽限时间。用户应在过渡期内,将磁盘的使用空间降低到软限制以下,否则将无法正常使用磁盘。
使用edquota的选项t可以修改过渡期
运行上述命令,会启动修改过渡期界面
5,quotaon开启磁盘配额命令
设置好用户,用户组配额和过渡期后,还需要使用quotaon命令,在文件系统上手动开启配额限制功能。
常用选项:
u:开启用户磁盘配额
g:开启用户组磁盘配额
a:开启所有文件系统的磁盘配额限制功能
v:如果开启成功,就显示提示信息
6,quotaoff关闭磁盘配额命令
有时可能需要临时关闭磁盘配额,例如修改了用户的磁盘配额,需要重启等。
关闭磁盘配额quotaoff命令的用法,常用选项和quotaon一样。
七,文件系统维护基础
1,df查看文件系统使用情况
可以使用-h选项以更加直观形式表示容量查看:
2,du追踪大文件
du [option] [directory]
h:以更加直观形式表示文件大小
s:查看当前目录的大小(而不是目录中的文件)
查看当前目录
3,fsck修复文件系统
fsck [option] filesystem
A:扫描/etc/fstab中列出的所有文件系统
a:自动修复文件系统中的命令,不询问用户
f:强制扫描文件系统
t:指定文件系统类型,不使用此选项时,fsck将会自动检测
如上,使用fsck命令修复文件系统时,如果该文件系统处于挂载状态,建议先将其卸载或以只读方式重新挂载,然后再运行fsck命令修复文件系统。