一、磁盘加密
fdisk /dev/vdb ##创设备
cryptsetup luksFormat /dev/vdb1 ##安装加密层
WARNING!
This will overwrite data on /dev/vdb1 irrevocably.
Are you sure? (Type uppercase yes): YES ##确定加密
Enter passphrase: ##密码大于8位,并且不能太简单
Verify passphrase: ##确认密码
cryptsetup open /dev/vdb1 westos ##打开加密层
mkfs.xfs /dev/mapper/westos ##格式化解密后的设备
mount /dev/mapper/westos /mnt
umount /mnt
cryptsetup close westos ##关闭加密层
二、加密磁盘的永久挂载
vim /etc/fstab ##开机自动挂载加密设备
vim /etc/crypttab ##设定开机解密
解密后设备管理文件 设备 加密字符存放的位置
westos /dev/vdb1 /root/passwd
vim /root/passwd ##加密字符文件
填写加密密码
chmod 600 /root/passwd ##更改加密字符文件权限
cryptsetup luksAddKey /dev/vdb1 /root/luckfile ##将加密字符文件与设备关联
reboot
设置生效
3.加密清除
vim /etc/fstab ##清除配置文件中填写的行
/etc/crypttab ##清空解密文件
rm -rf /root/passwd ##删除加密字符文件
umount /mnt/ ##取消挂载
cryptsetup close westos ##关闭加密层
mkfs.xfs /dev/vdb1 -f ##格式化磁盘分区(不关闭加密层不能进行格式化)
四、raid磁盘阵列
建立3个分区,并设定3个分区的功能标签位raidmda
设置阵列:
mdadm -C /dev/md0 -a yes -l 1 -n 2 -x 1 /dev/vdb{1..3}
-C ##创建一个阵列
-a yes ##没有此目录就创建此目录
-l ##阵列等级(0,1,5…)
-n ##所使用设备的块数
-x ##闲置设备的块数
mkfs.xfs /dev/md0
mount /dev/md0 /mnt
阵列操作:
mdadm -D /dev/md0 ##查看阵列信息
mdadm /dev/md0 -f /dev/vdb2 ##挂掉某个子设备
mdadm /dev/md0 -r /dev/vdb2 ##删除某个子设备
mdadm /dev/md0 -a /dev/vdb2 ##添加某个子设备
阵列删除:
umount /mnt ##解除挂载
mdadm -S /dev/md0 ##关闭阵列
fdisk /dev/vdb ##删除分区
选择d删除分区
partprobe ##同步分区表
五、配额
mount -o usrquota /dev/vdb1 /mnt ##打开配额
quotaon -uv /dev/vdb1 ##激活配额
更改配额之前,可截取小与设备大小的任意大小文件
edquota -u student -> ##更改配额
Disk quotas for user student (uid 1000):
Filesystem blocks soft hard inodes soft hard
/dev/vdb1 0 0 0 0 0 0
quota ##查看当前用户的配额
更改配额后,只能截取小于配额的文件
开机永久挂载,并激活配额
vim /etc/fstab
/dev/vdb1 /mnt xfs defaults,usrquota 0 0
六、LVM
1.lvm名词
lvm 逻辑卷,可以让设备自由伸缩的一个设备管理软件
pv 物理卷
vg 物理卷组
2.创建lvm
首先划分lvm所用到的设备,这些设备的功能id必须时linux LVM
pvcreate /dev/vdb1 ##把创建的分区变成pv
vgcreate vg0 /dev/vdb1 ##创建一个vg0,并把pv加入vg0
lvcreate -L 100M -n lv0 vg0 ##创建一个lv0,并把vg0的100M空间分配给lv0 -n=name
mkfs.xfs /dev/vg0/lv0 ##格式化lv0
mount /dev/vg0/lv0 /mnt ##挂载
df ##查看挂载
3.增大lvm空间:
lvextend -L 400M /dev/vg0/lv0 ##增加lv0的空间为200M(vg0给分配的所以不能大于vg0的最大容量)
xfs_growfs /dev/vg0/lv0 ##拉伸文件系统,之前的文件还在
当扩展lv 时,出现pv大小不足时,可再建一个分区
fdisk /dev/vdb ##再创建一个分区(相当于加一块硬盘)
partprobe ##同步分区表
pvcreate /dev/vdb2 ##将新建的分区变成pv
vgextend vg0 /dev/vdb2 ##把新建的pv 加入到vg0中
lvextend -L 1500M /dev/vg0/lv0 ##再次增大lv0的空间
xfs_growfs /dev/vg0/lv0 ##增大后再次拉伸文件系统
4.使用ext4文件系统增大lvm空间:
umount /mnt ##取消挂载
mkfs.ext4 /dev/vg0/lv0 ##将xfs文件系统换成ext4文件系统,xfs只能做拉伸,ext4既可以做拉伸也可以做缩减
mount /dev/vg0/lv0 /mnt ##重新挂载
lvextend -L 1800M /dev/vg0/lv0 ##拉伸lv0硬件空间
resize2fs /dev/vg0/lv0 ##拉伸ext4文件系统
5.使用ext4文件系统缩小lvm空间:
umount /mnt ##取消挂载
e2fsck -f /dev/vg0/lv0 ##扫描文件系统,确定文件系统中已有数据大小防止过度缩减
resize2fs /dev/vg0/lv0 1000M ##在取消挂载的情况下才可以进行缩减文件系统,必须先缩小文件系统,再缩小设备
lvreduce -L 1000M /dev/vg0/lv0 ##挂载之后,缩小设备
mount /dev/vg0/lv0 /mnt ##挂载查看文件系统是否已缩小之1000M
6.vg缩减
pvs ##查看pvs中的设备
pvmove /dev/vdb1 /dev/vdb2 ##将vdb1中的数据移动到vdb2中
vgreduce vg0 /dev/vdb1 ##删除vg0内的vdb1
7.删除pv下的子设备
pvs ##查看pvs中的设备
pvmove /dev/vdb1 /dev/vdb2 ##将vdb1中的数据移动到vdb2中
vgreduce vg0 /dev/vdb1 ##删除vg0内的vdb1
pvremove /dev/vdb1 ##将vdb1从lvm管理信息中删除
8.lvm快照:
mount /dev/vg0/lv0 /mnt ##将设备lv0挂载在/mnt上
touch /mnt/file{1..10} ##在mnt下建立10个文件,实际保存在lv0磁盘中
umount /mnt/ ##解除挂载
lvcreate -L 20M -n lv0-kz -s /dev/vg0/lv0 ##生成快照
-L 设置快照大小
-n 设置快照名称
-s 被照的设备
mount /dev/vg0/lv0-kz /mnt ##将快照挂载在/mnt上
ls /mnt
rm -rf /mnt/* ##删除所以文件(文件损坏,需要恢复)
umount /mnt ##卸载快照
lvremove /dev/vg0/lv0-kz ##删除快照
lvcreate -L 20M -n lv0-kz -s /dev/vg0/lv0 ##重新生成新的快照
mount /dev/vg0/lv0-kz /mnt ##重新挂载(文件恢复到最初)
ls /mnt/
9.删除lvm:
df ##查看是否有设备挂载
umount /mnt ##卸载设备
lvremove /dev/vg0/lv0-kz ##删除快照
lvremove /dev/vg0/lv0 ##删除lv0
vgremove vg0 ##删除vg
pvremove /dev/vdb2 ##删除pv