Linux系统的磁盘管理

一、系统的磁盘管理
1.本地存储设备的识别
(1)fdisk  -l    查看系统真实存在的设备
Linux系统的磁盘管理
(2)cat  /proc/partitions   查看系统的可以识别的设备
Linux系统的磁盘管理
(3)blkid   系统可使用的设备
Linux系统的磁盘管理
(4)df   系统正在挂在的设备
df -h 与 df -H 的区别
df  -h (1M=1024K)
df  - H (IM=1000K)
Linux系统的磁盘管理
2.设备的挂载和卸载
(1)设备名称 
 /dev/sd*    sata硬盘,或者iscsi网络存储
  /dev/vd*   虚拟硬盘,一般出现在虚拟机里
  /dev/hd*   ide硬盘,一般出现在老式电脑
  /dev/sr0      系统中的光驱
  /dev/mapper/*   系统中的虚拟设备
  /dev/vdb1     1代表第一个分区
  (2)设备的挂载与卸载相关命令
  做此实验可以将自己的u盘插入电脑
df查看u 盘的挂载点
Linux系统的磁盘管理
mount /dev/sdb1  /mnt   挂载sdb1到mnt
Linux系统的磁盘管理
umount  /mnt  |  /dev/sdb1    卸载
Linux系统的磁盘管理
mount  -o  ro  /dev/sdb1   /mnt  只读挂载
Linux系统的磁盘管理
mount   查看挂载信息
显示ro,则证明是只读挂载
测试:进入/mnt(u盘挂载点),不能建立文件(只读挂载)
从只读挂载到读写挂载的转换有两种
方法一: 先解挂(umount)——> mount  -o  rw  /dev/sdb1  /mnt(只读挂载)
Linux系统的磁盘管理
方法二: 不想解挂的时候,使用remount,rw改为读写模式
测试:进入/mnt(u盘挂载点),可以建立文件(读写挂载)

Linux系统的磁盘管理
(3)解决设备正忙的情况
方法一:
发现进程:fuser  -vm  /dev/sdb1
终止进程:fuser  -kvm /dev/sdb1
方法二:
发现进程:lsof  /dev/sdb1
终止进程:kill  -9 pid
有时卸载时显示设备正忙的原因:是因为你就在挂载目录下,此时退出挂载目录,就可以正常卸载了

二、系统的分区管理
1.磁盘分区信息
硬盘0和磁道1扇区的512个字节中记录的信息如下:
512 =446 +64+2
(1)446 ——> mbr主引导记录
(2)64 ——>mpt主分区表
最多有4个主分区,一个分区用16个字节记录
主分区:用主分区表记录的分区
扩展分区:专门用来存储更多的分区(相当于一个容器)
逻辑分区:扩展分区里的分区
(3)2 ——>硬盘的有效性标识“55aa”
2.分区的划分及管理
主分区的创建及管理
实现一个分区设备的创建使用,一般经过如下动作:
划分创建一个分区,格式化,挂载
创建分区
Linux系统的磁盘管理
查看分区列表
如果分区没有显示,则可以使用partprobe命令(同步分区表)
Linux系统的磁盘管理
格式化 mkfs.xfs  /dev/vdb1 
blkid 显示系统可用的设备
Linux系统的磁盘管理
挂载设备
Linux系统的磁盘管理
实现永久挂载
编辑挂载策略文件 /etc/fstab
Linux系统的磁盘管理
Linux系统的磁盘管理
**设备(重新读取该文件,使其挂载)
mount -a
测试
Linux系统的磁盘管理
拓展分区的创建及管理
(1)创建拓展分区
当系统已经有三个主分区时,再创建分区时,默认提示就由p(主分区)变为e(拓展分区),填e,后续可以一路选择默认,把剩余所有空间分给扩展分区,最后保存。
再次添加分区,方式如同添加主分区一样,这次添加的分区就是逻辑分区(拓展分区里的分区)
同步分区列表,查看分区列表信息
3.swap分区的管理
创建swap分区
新建一个分区
t 表示修改分区id (默认情况下,此分区是Linux类,要该为swap类型)
L 表示列出所以id类型代码
找到关于swap分区类型的代码——>82
输入82,把/dev/vdb6的分区类型修改为swap
Linux系统的磁盘管理Linux系统的磁盘管理
同步分区列表
将/dev/vdb2格式化为swap格式,否则设备不可用
**swap设备,使系统利用此设备
swapon -a /dev/vdb2
实现永久挂载
编辑挂载策略文件 /etc/fstab(注意swap分区不需要挂载)

swap分区删除
swapoff /dev/vdb6
swapon -s
vim /etc/fstab 进入/etc/fstab 删除swap的配置
fdisk -l 查看
fdisk /dev/vdb 删除vdb6
d 删除
6
wq
fdisk -l
Linux系统的磁盘管理
Linux系统的磁盘管理
Linux系统的磁盘管理
三.配额
配额是针对于分区的,限制设备而不是用户
mount -o usrquota /dev/vdb5 /pub/ 挂载在/pub下
chmod 1777 /pub/ 先挂载再修改权限
edquota -u student /dev/vdb5 修改配额
注意:这里的单位是kb
Filesystem blocks soft hard inodes soft hard
/dev/vdb5 10240 0 10240 1 0 0
警告 硬性配额最大容量 文件数
Linux系统的磁盘管理
Linux系统的磁盘管理
测试:
此处配置的限额是10M
dd if=/dev/zero of=/pub/studentfile bs=1M count=10
Linux系统的磁盘管理
vim /etc/fstab 配额写入/etc/fstab文件中,则开机就会自动运行配额
/dev/vdb5 /pub xfs defaults,usrquota 0 0
四.磁盘加密
(1)cryptsetup luksFormat /dev/vdb5 磁盘加密
YES 此处要大写,设置密码
cryptsetup open /dev/vdb5 westos 进入加密模式
mkfs.xfs /dev/mapper/westos
mount /dev/mapper/westos /pub/
touch /pub/test{1…10}
ls /pub
umount /pub/
cryptsetup close westos 关闭之前先卸载
cryptsetup open /dev/vdb5 westos
mount /dev/mapper/westos /pub/
加密之后再执行命令挂载就无法挂载,只有先进入加密模式下,才能挂载
Linux系统的磁盘管理
Linux系统的磁盘管理
Linux系统的磁盘管理
2)加密磁盘开机自动挂载
vim /etc/fstab
/dev/mapper/westos /pub xfs defaults 0 0
vim /root/westoskey ##写一个存储密码文件
westos2019
chmod 600 /root/westoskey
vim /etc/crypttab ##让系统开机读取存储密码文件
westos /dev/vdb5 /root/westoskey
cryptsetup luksAddKey /dev/vdb5 /root/westoskey
Linux系统的磁盘管理
Linux系统的磁盘管理
Linux系统的磁盘管理
Linux系统的磁盘管理
Linux系统的磁盘管理
Linux系统的磁盘管理
删除加密
vim /etc/fstab
删除/dev/mapper/westos /pub xfs defaults 0 0 行
df
umount /pub
cryptsetup close westos
mkfs.xfs /dev/vdb5 -f
vim /root/westoskey
vim /etc/crypttab
reboot