第五课预习笔记
说明:10-12节课不作为重点,不要成为负担
4.1 df命令
4.2 du命令
4.3/4.4 磁盘分区
4.5/4.6 磁盘格式化
4.7/4.8 磁盘挂载
4.9 手动增加swap空间
4.10/4.11/4.12 lvm讲解
4.13 磁盘故障小案例
扩展学习 parted分区gpt格式 http://www.apelearn.com/bbs/thread-7243-1-1.html
df
df =disk filesystem用于查看文件系统的使用情况,包括已挂载磁盘的总容量、使用容量、剩余容量等,默认以KB为单位显示。
第一列是文件系统名字;第二列是磁盘的总大小,以KB为单位;
-h:使用合适单位显示;
-i:查看inodes使用情况;
-k、-m:分别以KB、MB单位显示。
du
du=disk useage用来查看某个目录或文件所占文件大小;
查看boot目录的大小
passwd文件所在块的大小是4K,实际passwd文件的大小是1.2K
服务器支持热插拔硬盘。
fdisk 查看硬盘
-l 列出系统已有磁盘
由图可见,并没有查看到新添加的磁盘。需要重启以后,才可以看到。
n、p、w、d常用
最多4个主分区,如果需要更多分区,可以划分3个分区,还有一个划分为扩展分区。扩展分区里可以划分很多逻辑分区。
现在,我们先不输入w保存,而是输入q直接退出分区。再重新分区
我们开始先不划分主分区,而是划分扩展分区
再增加一个主分区,提示发生改变,变成选择主分区还是逻辑分区。l表示逻辑分区,id从5开始。
然后再划分一个逻辑分区
通过实验可以发现,主分区2和4都留空了。而逻辑分区从第5个分区号开始且连续,不会留空。
磁盘格式化:
查看linux支持哪些文件系统
xfs是centos7默认的文件系统。例如/就是xfs系统
使用mount查看分区是什么文件系统,内容比较多,主要关注/dev开头的就行
mke2fs是格式化命令
-t 指定文件系统类型,例如ext4 、ext3(除xfs,xfs使用mkfs.xfs /dev/sdb3)
格式化sdb3分区:下图两个命令效果一样
使用mount命令,发现查看不到sdb3分区,是因为还没有挂载此分区。
不过可以使用blkid查看还未挂载的分区
-b 指定块的大小存大文件可以把块设置大一些,其实默认大小就行。
-m 指定预留空间大小
-i 指定多少字节对应1个inode
将sdb磁盘格式化为xfs文件系统
查看sdb文件系统
将sdb挂载到mnt下
使用mount可以查看到sdb的磁盘类型
接下来卸载磁盘
若在mnt目录下卸载sdb会提示磁盘忙
这时可以加参数l ,即lazy-懒人默认,来不退出mnt目录卸载sdb磁盘
/etc/fstab配置文件
先查看/etc/fstab配置文件,# vi /etc/fstab
第一列是分区标识,可以写分区的label,UUID,也可以写分区名;
第二列是挂载点;
第三列是分区的格式;
第四列是mount的挂载参数;
第五列的数字表示是否被dump备份,1是备份,0没备份;
第六列的数字表示开机是否自检磁盘,1和2检测,0不检测。
命令blkid
命令blkid可以获取全部磁盘分区的UUID
基本思路:建立swapfile→格式化为swap格式→启用该虚拟磁盘,dd命令用于操作磁盘(可读写),if指定源,of指定目标文件,bs定义块的大小,count磁盘大小。
它的操作步骤是,1,建立swapfile 2,格式化为swap格式,3,启用该虚拟磁盘
首先,建立swapfile
第二步 ,格式化为swap 格式
第三步 ,挂载分区,在挂载前后可以看一下swap空间的变化
小知识点,free 命令是用来查看内存的使用情况,free -m 表示显示容量时用M为单位。
卸载swap文件
LVM
LVM=Logical Volume Manager(逻辑卷管理),它是Linux环境下对磁盘分区进行管理的一种机制。
LVM可以方便的让我们对分区扩容或缩容,但是目前运用的并不是很多,因为它的局限性较大,安全性较低,操作起来比较复杂等因素,现在很多公司不再采用这种分区管理工具。其工作原理如下图所示
具体操作步骤是:给磁盘划分分区→将分区做成物理卷 →将物理卷做成卷组→在卷组的基础上划分逻辑卷→
格式化→挂载使用
准备磁盘分区
-
fdisk /dev/sdb
-
n 创建三个新分区,分别1G
-
t 改变分区类型为8e
-
-
创建物理卷
命令pvcreate(physical volume create)
-
pvcreate /dev/sdb1
-
pvcreate /dev/sdb2
-
pvcreate /dev/sdb3
-
pvdisplay 列出当前物理卷
-
pvremove /dev/sdb3 删除物理卷
在运行命令# pvcreate /dev/sdb1时,出现未找到命令,这时就要安装软件包,这里如果忘记软件包的名字,可以根据命令搜索软件包名称 yum provides "/*pvcreate"
搜索到正确软件包名称lvm2,然后安装 yum install -y lvm2
然后继续创建三个物理卷,再创建过程中,如果没有自动生成 /dev/sdb1文件,这是只要输入partprobe命令即可立即生成
然后创建,如果 /dev/sdb文件挂载在磁盘上,需要先卸载,再创建完成
物理卷创建完成后,可以用命令pvdisplay查看
还有命令pvs也可以查看,更直观
创建卷组
命令vgcreate(volume group create),命令vgremove删除卷组
创建完可以用命令vgdisplay和命令vgs查看信息
创建逻辑卷
命令lvcreate(logical volume create),用法lvcreate [选项] [参数]
-L:指定逻辑卷的大小;
-n:指定逻辑卷的名称。
格式化成ext4
进行挂载
扩容逻辑卷
-
lvresize -L 300M /dev/vg1/lv1 重新设置卷大小;
-
e2fsck -f /dev/vg1/lv1 检查磁盘错误 (ext4执行);
-
resize2fs /dev/vg1/lv1 更新逻辑卷信息(ext4执行);
-
xfs_growfs /dev/vg1/lv1 xfs文件系统需要执行。
命令lvresize(logical volume resize),用法lvresize [选项] [参数]
-L:指定扩容大小
检查磁盘错误 (ext4执行)
更新逻辑卷信息(ext4执行),扩容之后,文件也不丢失
缩容(xfs不支持缩容)
-
先umount
-
e2fsck -f /dev/vg1/lv1 检查磁盘错误(ext)
-
resize2fs /dev/vg1/lv1 100M 更新逻辑卷信息(ext)
-
lvresize -L 100M /dev/vg1/lv1 重新设置卷大小
先umount,然后
更新逻辑卷信息(ext4执行)
缩容之后,文件也不丢失(假如你容量为200M,你储存有150M的文件,你缩容为100M,那肯定会丢文件了)
扩容逻辑卷(xfs)
扩展卷组
-
fdisk /dev/sdb 新增/dev/sdb3 2G
-
pvcreate /dev/sdb3
-
vgextend vg1 /dev/sdb3
-
lvresize -L 100M /dev/vg1/lv1 重新设置卷大小
磁盘故障小案例
做完LVM实验之后,重启后可能会发现不能进入系统,故障如下:
先输入root密码回车,然后编辑# vi /etc/fstab文件;将光标移至红框那一行,按dd删除这一行,:wq保存退出,重启之后就能正常使用