一、分区加密
cryptsetup luksFormat/dev/vdb1 WARNING! ======== This will overwrite data on /dev/vdb1irrevocably. Are you sure? (Type uppercase yes): YES ##确定加密 Enter passphrase: ##密码大于8位,并且不能太简单 Verify passphrase: ##确认密码 [root@diskctrl ~]# cryptsetup open/dev/vdb1 westos ##解密 Enter passphrase for /dev/vdb1: #输入密码 [root@localhost ~]# ll /dev/mapper/ total 0 crw-------. 1 root root 10, 236 Aug 5 00:04 control lrwxrwxrwx. 1 root root 7 Aug 5 00:15 westos -> ../dm-0 [root@diskctrl ~]# mkfs.xfs /dev/mapper/westos ##用管理文件格式化设备 [root@diskctrl ~]# mount/dev/mapper/westos /mnt/ ##使用设备 [root@diskctrl ~]# umount/dev/mapper/westos ##卸载设备 [root@diskctrl mnt]# cryptsetup closewestos ##关闭设备加密层 [root@localhost ~]# ll /dev/mapper/ total 0 crw-------. 1 root root 10, 236 Aug 5 00:04 control
2、加密磁盘的永久挂载
1》Vim /etc/crypttab
解密后设备管理文件 设备 加密再付存放文件
westos /dev/vdb1 /root/luckspsfile
2》vim/root/luckspsfile
在这个文件中写入开启磁盘解密的密码,将此文件的权限设成600,为了安全
3》在文件/etc/fstab中添加开机挂载/dev/vdb1
/dev/mapper/westos /mnt xfs defaults 0 0
注意:/dev/mapper/westos中的westos为/etc/crypttab中额解密后设备管理文件名称
3、加密清除
将添加到/etc/fstab和/etc/crypttab中的添加的开机挂载选项删除,删除密码文件,然后卸载改在到mnt目录下的/dev/mapper/westos然后使用cryptsetup close /dev/mapper/westos 关闭加密
二、磁盘阵列
1、raid理论知识
1.1 RAID 0描述
RAID 0又称为stripe(条带化)或striping(条带模式),他在所有RAID级别中具有最高的存储性能,RAID0提高存储性能的原理是把连续的数据分散到多个磁盘上存取,当有数据读写时,每个磁盘读写属于自己的那份数据请求。要做RAID0 要求至少是一块物理磁盘,一般用来做RAID的不同磁盘大小最好一样(可以充分发挥优势);而数据分散存储于不同的磁盘上,在读写的时候可以实现并发,所有读写性能好;但是没有容错功能,即任何一个磁盘的损坏会导致整个RAID的数据全部丢失,单块盘只能做RAID0,否则可能不能使用。
RAID 0 使用的场景:
1》负载均衡集群下面的多个相同RS节点服务器
2》分布式文件存储下面的主节点或CHUNK SERVER
3》以及MySQL,主从复制的多个Slave服务器;
4》对性能要求很高,对冗余要求很低的相关业务
容量:是4块盘加在一起的容量,在RAID级别中具备最高的存储性能,原理是把连续的数据分散到多个磁盘上存取。
性能:理论上磁盘读写速度比单盘提升4倍,磁盘越多倍数越小。
1.2 RAID 1级别详解
RAID1又称为mirror或mirroring(镜像),它的宗旨是最大限度的保证用户数据的可用性和可修复性。RAID1的操作方式是把用户写入磁盘的数据百分之百的自动复制到另外一个磁盘上,从而实现数据的存储双份的数据。要做RAID1至少是两块磁盘,整个RAID大小等于两个磁盘中最小的那块磁盘的容量,数据有50%的冗余,工作中磁盘可以用监控.
RAID1 使用的场景:
1》适用于存放重要数据,如服务器分区和对性能要求不高的数据库存储等
容量:损失50%的数据容量
性能:mirror不能提高存储性能,理论上写性能和单盘相差不大。
冗余:在所有RAID级别中,RAID1提供最高的数据安全保障,冗余度50%
特点:50%冗余,容量损失一半
1.3 RAID5基本详解
RAID5是一种存储性能、数据安全和存储成本兼顾的解决方案,RAID5需要3块或者以上的物理磁盘,可以提供热备盘显现故障的恢复;采用奇偶校验,可靠性强,且只有损坏两块硬盘时数据才会完全损坏,只损坏一块盘时,系统会根据存储的奇偶校验位重建数据,临时提供服务,此时如果有热备盘,系统还会自动在热备盘重建故障磁盘上的数据
RAID5使用的场景:
1》RAID5可以理解为RAID0和RAID5的折中方案。适合对性能和冗余都有一定的要求,又不是十分高的情况,比如MySQL的主从库、存储等。普通服务器为了减少维护成本,又保持一定冗余和读性能都可以做RAID5.
容量:损失一块磁盘的容量.
性能:RAID5和RAID0具有相似的数据读取速度,只是多了一个奇偶校验信息,写入数据的速度比单个磁盘进行写入操作稍慢
冗余:RAID5数据安全保障比RAID1低而磁盘空间利用率比RAID1高
特点:容量损失一块盘,写数据通过奇偶校验;
1.4 RAID(0+1)和RAID(1+0)称为RAID10
他在提供与 RAID 0和 RAID 1一样的数据安全保障的同时,也提供了与RAID 0接近的存储性能。我认为RAID10和RAID01分别先后做RAID1和RAID0,所以RAID 10系统要比RAID 01系统冗余度高,安全高。
2、使用软件做RAID
fdisk /dev/vdb #使用fdisk分区分出3块硬盘,分别为/dev/vdb1、/dev/vdb2/、/dev/vdb将其分区类型改为linux raid。
举例:下面将在系统上做一个RAID1
mdadm -C /dev/md0 -a yes –l 1 –n 2 -x 1/dev/vdb{1..3} -C ##建立 -a ##文件不存在建立文件 -l ##raid级别 -n ##设备个数 -x ##闲置设备个数 mkfs.xfs /dev/md0 mount /dev/md0 /mnt/ #文件/proc/mdstat记录了阵列的状态,也可以使用 mdadm -D /dev/md0查看状态 ##下面做一个简单的对比 [root@localhost ~]# cat /proc/mdstat Personalities : [raid0] md0 : active raid0 vdb2[1] vdb1[0] 2096128 blocks super 1.2 512k chunks unused devices: <none> [root@localhost ~]# dd if=/dev/zero of=/mnt/feng bs=1M count=1000 1000+0 records in 1000+0 records out 1048576000 bytes (1.0 GB) copied, 4.73301 s, 222 MB/s [root@localhost ~]# umount /mnt/ [root@localhost ~]# dd if=/dev/zero of=/mnt/hui bs=1M count=1000 1000+0 records in 1000+0 records out 1048576000 bytes (1.0 GB) copied, 8.50535 s, 123 MB/s
3、删除RAID
mdadm /dev/md0 -f /dev/vdb2 #让/dev/veb2损坏 mdadm -r /dev/md0 /dev/vdb1 #移除/dev/vdb2 mdadm -a /dev/md0 /dev/vdb1 #装载一个/dev/vdb1 umount /dev/md0 mdadm -S /dev/md0 #停止raid #使用fdisk 删除分区
三、磁盘配额
1、创建配额
mount -o usrquota /dev/vdb1 /pub quotaon /dev/vdb1 edquota -u student repquota -a ##root可以执行,查看用户配额信息 quota ##配额限制用户查看自己配额信息命令
2、设置永久挂载
在/etc/fstab中添加
/dev/vdb2 /mnt xfs defaults,usrquota 0 0
3、删除配额
删除vim /etc/fstab中的配额参数
quotaoff -ugv 设备
四、LVM管理
lvm | 逻辑卷,可以让设备自由伸缩的一个设备管理软件 |
pv | 物理卷 |
vg | 物理卷组 |
pe | 物理拓展,lvm最小的存储单元 |
1、LVM的制作(针对xfs问价系统)
首先划分lvm所用到的设备,这些设备的功能id必须是linux LVM
1.1 lvm建立
pvcreate /dev/vdb1 ##把物理分区做成物理卷 pvs|pvdisplay ##查看物理卷 vgcreate vg0 /dev/vdb1 ##用制作好的/dev/vdb1这个物理卷制作一个物理卷组vg0 vgs|vgdisplay ##查看物理卷组 lvcreate -L 200M-n lv0 vg0 ##在vg0这个组中建立出lv0设备 -L 指定设备大小 -n 指定设备名字 lvs|lvdisplay ##对逻辑卷设备进行查看
1.2 lvm设备的扩大
mkfs.xfs /dev/lv0/vg0 #格式化 mount /dev/lv0/vg0 /mnt #挂载 #如果/mnt/目录下的存储容量不够使用则可以扩展vg0 vgextend -L 500M /dev/vg0/lv0 #将lv0扩展到500M #这时应扩大xfs文件系统到设备大小 xfs_growfs /dev/vg0/lv0
2、LVM的制作(针对xfs问价系统)
2.1 lv 扩大
umount /mnt #将刚才的目录卸载 mkfs.ext4 /dev/vg0/lv0 #将其文件系统格式化成ext4文件系统 mount /dev/vg0/lv0 /mnt #重新挂载 lvextend -L 800M /dev/vg0/lv0 resize2fs /dev/vg0/lv0
2.2 lv缩小
umount /mnt e2fsck -f /dev/vg0/lv0 resizefs /dev/vg0/lv0 200M mount /dev/vg0/lvo /mnt lvreduce -L 200 M /dev/vg0/lv0
2.3 vg扩大
pvcreate /dev/vdb3 ##在pv中增加一块设备/dev/vdb3 vgextend vg0 /dev/vdb3 ##把新建立的/dev/vdb2添加到vg0中
2.4 vg缩减
#在vg缩减时只能缩减没有被占用的设备 pvmove 设备1 设备2 ##把设备1上的所有数据移动到设备2上 vgreduce vg0 /dev/vdb1 ##把vg0中的/dev/vdb1删除 pvremove /dev/vdb1 ##移除设备/dev/vdb1
3、删除lvm
umount /mnt lvremove /dev/vg0/lv0 vgremove vg0 pvremove /dev/vdb2
4、lvm快照
lvcreate -L 20M -n lv0-backup -s /dev/vg0/lv0 ##给/dev/vg0/lv0建立快照,-L 指定快照大小,-n指定快照名字 -s指定快照模板设备 mount /dev/vg0/lv0-backup/userdate 当快照设备里的数据被更改,如果想还原,删除快照设备,在重新建立快照即可