目录
一.熟练使用常用磁盘管理工具
在Linux系统安装时,其中有一个步骤是进行磁盘分区。在分区时可以采用Disk Druid、RAID和LVM等方式进行分区。除此之外,在Linux系统中还有fdisk、cfdisk、parted等分区工具。
- 注意:下面所有的命令,都以新增一块SCSI硬盘为前提,新增的硬盘为/dev/sdb。在开始本任务前需在虚拟机中增加硬盘,然后启动系统。
二. fdisk命令手工分区
2.1查看所有硬盘及分区
命令:fdisk -l
fdisk 的意思是 固定磁盘Fixed Disk 或 格式化磁盘Format Disk,它是命令行下允许用户对分区进行查看、创建、调整大小、删除、移动和复制的工具。
2.2用 fdisk 设备文件名进行分区
在Linux系统中,fdisk是基于菜单的命令。对硬盘进行分区时,可以在fdisk命令后面直接加上要分区的硬盘作为参数。在command提示后面输入相应的命令来选择需要的操作,例如输入m命令是列出所有可用命令。
三.进行磁盘分区
3.1命令:fdisk /dev/sdb
常见的为p n w d l t进入后按m会出现下列东西:
- a:设置活动分区(启动过分区)
- b:编辑一个分区为bsd分区
- c:设置为DOS兼容过分区
- d:删除一个硬盘分区
- l:列出linux支持的分区类型
- m:显示所有命令列表(即帮助信息)
- n:增加一个新的分区
- o:创建一个空的DOS分区
- p:显示硬盘分区情况
- q:退出程序,且不保存分区的修改
- s:创建一个空的sun分区
- t:修改分区的类型代码
- u:改变分区大小的显示方式
- v:检验磁盘分区表
- w:退出程序,且保存分区的修改
- x:进入专家模式
3.2创建主分区
- 输入n来增加一个新的分区
- 显示提示:创建一个扩展分区还是主分区,先创建主分区,输入p
- 输入分区编号,创建第1个主分区,输入1
- 提示输入新建分区的起始柱面,默认值为1,直接按enter
- 提示新建分区的结束柱面,默认值为最大柱面,即将整个硬盘划分为一个分区。此处输入+2000M,表示新建分区大小2000MB.
3.3创建扩展分区
- 输入命令进入分区操作 #fdisk /dev/sdb
- 增加分区命令输入n
- 提示创建分区类型,输入字符e,创建一个扩展分区
- 输入分区号2(实验1中已有一个主分区)
- 分区的起始柱面,按enter键默认
- 输入结束柱面处按enter键默认。扩展分区使用了硬盘未分区的所有空间。
3.4创建逻辑分区
- 输入命令进入分区操作 #fdisk /dev/sdb
- 输入增加分区的命令字符n
- 程序提示创建分区类型,显示一个字符l,表示创建逻辑分区,输入l
- 输入分区起始柱面,按enter键默认
- 结束柱面处输入逻辑分区大小+1000M。
- 用类似方法创建其余2个逻辑分区,最后输入p查看分区情况
3.5修改分区类型
新创建的分区默认类型是linux,如果有其他需要,用fdisk命令的t选项修改分区类型
- 输入命令进入分区操作 #fdisk /dev/sdb
- 输入字符p查看分区情况,发现所有类型都为linux类型
- 输入修分区类型的命令字符t
- 输入需要修改的分区序号,例如输入7
- 输入分区类型的代码。用大写L查看不同分区类型对应的编码
- 下方输入代码82,代表linux swap分区类型的编码
- 输入p查看分区情况
- 输入w保存退出
四.mkfs格式化分区
命令:mkfs [选项] [-f <文件系统类型>] [设备名称] [区快数]
选项:
- fs:指定建立文件系统时的参数
- -t<文件系统类型>:指定要建立何种文件系统,默认为ext2
- -c:在创建文件系统前检查设备坏块
- -l:将有坏轨的block资料加到bad_blocks_file里面
- -v:显示版本信息与详细的使用方法
- -V:显示简要的的使用方法
提示:mkfs本身并不执行建立文件系统的工作,而是去调用相关的程序来执行。
五.fsck命令
5.1功能
fsck 命令用于检查文件系统并尝试修复出现的错误。
语法:fsck [options] FILE
5.2参数
- -a:自动修复文件系统,不询问任何问题。
- -A:依照 /etc/fstab 配置文件的内容,检查文件内所列的全部文件系统。
- -N:不执行指令,仅列出实际执行会进行的动作。
- -P:当搭配 “-A” 参数使用时,则会同时检查所有的文件系统。
- -r: 采用互动模式,在执行修复时询问问题,让用户得以确认并决定处理方式。
- -R:当搭配 “-A” 参数使用时,则会略过/目录的文件系统不予检查。
- -s: 依序执行检查作业,而非同时执行。
- -t:<文件系统类型> 指定要检查的文件系统类型。
- -T:执行 fsck 指令时,不显示标题信息。
- -V:显示指令执行过程。
六.df命令
6.1特点
df命令,统计分区大小,占用率
df命令的英文全称即“Disk Free”,顾名思义功能就是用于显示系统上可使用的磁盘空间。默认显示单位为KB。建议使用df -h
语法:df [选项]
6.2选项
- -a:显示所有文件系统的磁盘使用情况,包括0块(block)的文件系统,如/proc文件系统。
- -h:单位不再是kb,而是以容易阅读的方式显示
- -T:显示文件系统类型
- -t:显示各指定类型的文件系统的磁盘使用情况
- -i:显示i节点信息
七. du命令
7.1特点
du命令:统计文件大小,占用率
du命令查看磁盘或某个目录占用的磁盘空间,常见的应用场景如硬盘满时需要找到占用空间最多的目录或文件。
命令:du [选项] [目录或文件夹]
7.2选项
- -a:显示全部目录和其子目录下的每个文件所占的磁盘空间
- -h:使用习惯单位显示磁盘占用量,如KB,MB或GB等
- -s:只显示各文件大小的综合
- -b:以字节为单位列出磁盘空间使用情况。
- -c:在统计后加上一个总计
八、mount命令和umount命令
8.1mount命令
在Linux系统下,mount命令用于加载文件系统到指定的加载点。
语法:mount(选项)(参数)
8.2选项
- -V:显示版本。
- -l:显示已加载的文件系统列表。
- -h:显示帮助信息并退出。
- -v:冗长模式,输出指令执行的详细信息。
- -n:加载没有写入文件“/etc/mtab”中的文件系统。
- -r:将文件系统加载为只读模式。
- -a:加载文件”/etc/fstab”中描述的所有文件系统。
8.3 umount命令
含义 :在Linux系统下,umount命令用于卸载已经加载的文件系统,利用设备名或挂载点都能umount文件系统,不过最好还是通过挂载点卸载,以免使用绑定挂载(一个设备,多个挂载点)时产生混乱现象。
语法:umount(选项)(参数)
8.4 选项
- -V:显示版本。
- -h:显示帮助信息并退出。
- -v:冗长模式,输出指令执行的详细信息。
- -n:卸载时不要将信息存入”/etc/mtab”文件中。
- -r:若无法成功卸载,则尝试以只读方式重新挂载文件系统。
- -a:卸载文件”/etc/mtab”中描述的所有文件系统。
- -t<文件系统类型>:仅卸载选项中指定的文件系统。
九.文件系统的自动挂载
9.1自动挂载
- 对于硬盘分区之类的设备,有是一直安装在计算机中的,并且硬盘分区中的文件需要经常访问,若每次都手工输入命令进行挂载,系统的使用将很繁琐。因此设置自动挂载文件系统将方便系统的使用。
- 所谓自动挂载文件系统,即表示系统启动后自动将硬盘各分区挂载到文件系统中,用户可以使用这些分区中的内容。
- Linux中的/etc/fstab文件保存了自动挂载文件系统的参数,通过该文件中的设置的参数,可使系统在每次启动时候自动挂载指定的文件系统。
9.2修改自动挂载文件
1>>>vim /etc/fstab
proc /proc proc defaults 0 0
2>>>vim /etc/fstab
proc /proc proc defaults 0 0
- 第1个字段:设备名,也可以使用标签名。对磁盘分区进行格式化时,
- 可设置其标签。
- 第2个字段:设置挂载点
- 第3个字段:设置文件系统的类型
- 第4个字段:设置挂载选项。使用default表示rw、suid、dev、exec、
- auto、nouser和async选项的组合。
- 第5个字段:设置是否需要备份。0表示不备份,1表示备份,一般
- 根分区需要备份
- 第6个字段:设置自检顺序。该字段被fsck命令用来决定在启动时
- 需要被扫描的文件的顺序,根文件系统“/”对应该字段的值为1,其他文件系统应该为2.若无需启动时扫描,设置该字段为0
十. 配置与管理磁盘配额
10.1磁盘配额
Linux系统作为一个多用户的操作系统,在生产环境中,会发生多个用户共同使用一个磁盘的情况,会造成Linux根分区的磁盘空间耗尽,导致Linux系统无法建立新的文件,从而出现服务程序崩溃、系统无法启动等故障现象。
为了避免这种情况,解决方法就是 ,对用户在指定文件系统中使用磁盘空间、文件数量进行限制,防止用户占用大量的磁盘空间,从而保持系统存储空间可以稳定使用。
10.2盘配额的作用范围
xfs_quota 设置的磁盘配额功能,只在指定的文件系统(分区)内有效,用户使用其他 未设置配额的文件系统时,将不会受到限制
10.3盘配额的限制对象
- xfs_quota 主要针对系统中指定的用户账号、组账号进行限制,没有被设置限额的用户或组将不受影响。
- 对组账号设置配额后,组内所有用户使用的磁盘容量、文件数量的总和不能超过限制。
10.4盘配额的限制类型
- 磁盘容量:限制用户能够使用的磁盘数据块(Block)大小,也就是限制磁盘空间大小,默认单位为 KB。
- 文件数量:限制用户能够拥有的文件个数。在 Linux 操作系统中,每一个文件都有一个对应的数字标记,称为 i 结点(Inode)编号,这个编号在同一个文件系统内是唯一的,因此 xfs_quota 通过限制 i 结点的数量来实现对文件数量的限制。
10.5盘配额的限制类型
- 磁盘容量:限制用户能够使用的磁盘数据块(Block)大小,也就是限制磁盘空间大小,默认单位为 KB。
- 文件数量:限制用户能够拥有的文件个数。在 Linux 操作系统中,每一个文件都有一个对应的数字标记,称为 i 结点(Inode)编号,这个编号在同一个文件系统内是唯一的,因此 xfs_quota 通过限制 i 结点的数量来实现对文件数量的限制。
10.6盘配额的限制方法
- 软限制:指定一个软性的配额数值(如 480MB 磁盘空间、180 个文件),在固定 的宽限期(默认为七天)内允许暂时超过这个限制,但系统会给出警告信息。
- 硬限制:指定一个硬性的配额数值(如 500MB 磁盘空间、200 个文件),是绝对 禁止用户超过的限制值,当达到硬限制值时,系统也会给出警告并禁止继续写入数据。硬限制的配额值应大于相应的软限制值,否则软限制将失效。
十一. 设置磁盘配额
11.1设置系统的磁盘配额可以分为4个步骤
(1)启动系统的磁盘配额功能
(2)创建qutoa配额文件
(3)设置用户和组群的磁盘配额
(4)启动磁盘限额功能
- 在 CentOS 系统中,不同的文件系统使用不同磁盘配额配置管理工具。
- 例如,XFS 文件系统通过 xfs_quota 工具进行管理;EXT3/4 文件系统通过 quota 工具进行管理
- 磁盘配额要求Linux内核支持磁盘配额技术,centos7默认支持
- 磁盘配额只对一般用户有效,对管理员(root)来说是没有任何作用限制的
11.2实验步骤(EXT4)
- 关闭selinux
- 修改/etc/fstab,对所选文件系统激活配额选项
- 重新挂载设备
- 用quotacheck命令生成基本配额文件(xfs跳过)
- 启动磁盘配额功能(xfs跳过)
- 用quota或者xfs_quota对具体用户或者目录设置配额
十二. 查询用户或组的配额
quota 选项 用户或组名
- -u 用户名
- -g 组名
- -v 显示详细信息
- -s 以常见单位显示大小
十三. 查询文件系统配额
repquota 选项 分区名
- -a 查询所有分区的磁盘配额
- -u 查询用户配额
- -g 查询组配额
- -v 显示详情
- -s 以常见单位显示