Linux硬盘的查看,分区设置,分区的加密,raid的制作以及LVM
一.Linux硬盘的查看:
查看指令:fdisk -l
/dev/hd0(并口) /dev/sda(串口) #硬盘
/dev/cdrom /dev/sr0 #光驱
/dev/mapper
blkid #系统中的可用设备(最少)
cat /proc/partitions #系统识别的设备
df -h #正在使用的设备(h按1024计算,H按1000计算)
cat /proc/partitions :查看系统识别的设备,sdb1为u盘
df -h :在使用的硬盘:
二. u盘的挂载:mount /dev/sdb1 /mnt
在挂在挂载成功后,使用ls指令就可以在挂在目录里看到u盘里面的文件
u盘的弹出:umount /dev/sdb1:
当当前工作界面处在挂载目录时,弹出U盘会显示出设备正在忙碌。这时可以切出挂载目录,也可以使用lsof /dev/vdb1指令查看占用设备的程序,并使用fuser -kvm /dev/vdb1强行结束进程。
占用设备程序的查找:lsof /dev/sdb1:可以查出占用u盘的进程
占用设备任务的结束:fuser -kvm /dev/sdb1 之后就可以解除挂载了
设备的只读挂载:mount -o ro /dev/sdb /mnt 建立文件时会提示挂载目录是只读状态:
将只读挂载改为读写挂载:mount -o remount,rw /dev/sdb1 可以建立文件了:
三. 分区:
1.fdisk /dev/vdb #开启分区表设定
2. m:命令列表
n:新建分区
p(n指令之后):新建主分区
e:新建扩展分区
d:删除已建分区
p:查看已建分区
wq:退出保存
partprobe #手动识别新的分区表
新建分区指令:fdisk /dev/vdb 其中p代表主分区,e代表扩展分区,p指令可以查看建立好的分区。分区建立完毕后wq保存退出。
四. 新建分区的使用(先格式化后才能挂载):
1.格式化分区:mkfs.xfs/dev/vdb1
2.查看格式化后的分区:blkid
五.分区不能大于2TB的解决方法:
1 将分区的格式改成gpt:在parted /dev/vdb 界面输入mklabel,选择gpt
2 使用fdisk -l 指令可以查看到修改后的分区格式
3. 修改之后再建立分区,就可以建立128个分区了
.
六. 设置swap分区:
1.将分区格式改为msdos:
2.设置swap:指令:fdisk /dev/vdb,依次输入指令t,2,82 #t为设定分区,2指/vdb2,82是swap序号
3.设置之后可以查看到vdb2格式为system swap:
4.执行指令格式化操作:mkswap /dev/vdb2
5. 编辑文件/etc/fstab:
6. 执行指令**交换分区:swapon -a /dev/vdb2
7.查看当前交换区的状态:swap -s
七. 分区的加密:
1.fdisk /dev/vdb #建立分区
2.partprobe #使分区生效
3.cryptsetup luksFormat /dev/vdb1 #分区加密,yes需要大写输入(如果加密失败则可能/dev/vdb1被挂载,需要df查看然后解绑)
4.mount /dev/vdb1 /mnt #将/dev/vdb1挂载到/mnt
6.cryptsetup open /dev/vdb1 westos #设置加密文件为westos
7.ls /dev/mapper #将出现新增的加密文件westos
8.mkfs.xfs /dev/mapper/westos #将文件westos格式化
9.mount /dev/mapper/westos /mnt #挂载到/mnt
10.挂载之后可以在/mnt下建立文件
11.ls /mnt #查看建立的文件
12.umount /mnt #解除挂载,无法查看/mnt中的内容,即显示的内容为空
13.cryptsetup close westos #关闭文件wetsos,将无法挂载到/mnt
八. 开机自启动:
1.vim/root/diskpass 输入westos密码
2.chmod 600 /root/diskpass #给文件赋予权限
3.cryptsetup luksAddKey /dev/vdb1 /root/diskpass
输入:westos /dev/vdb1 /root/diskpass
/dev/mapper/westos /mnt xfs default 0 0
6.reboot
九. 制作raid:
1.fdisk /dev/vdb 删除原有分区并新建3个分区大小设定为1G
2.将分区Id改为fd:在fdisk /dev/vdb界面下输入指令t,1,fd (t为id修改指令,1指修改/vdb1的id,fd为id格式)
3.创建raid:mdadm -C /dev/md0 -a yes -l 1 -n 2 -x 1 /dev/vdb{1..3}
-a:如果没有的话就自动创建
-l:等级为1
-n:使用数量
-x:闲置一块设备
mdadm -D /dev/md0 #查看工作状态
mdadm /dev/md0 -f /dev/vdb2 #强制损坏/dev/vdb2设备:可以在监控界面看到vdb2被损坏,但当vdb2被损坏后,vdb3立马代替vdb2的工作。这样在其中的一个服务器出现问题后,空闲的服务器会立即补缺,保证了服务的稳定性。
mdadm /dev/md0 -a /dev/vdb2 #添加新设备
5mdadm -S /dev/md0 #停止服务
6.解除raid:
fdisk /dev/vdb 将三个设备都删除
partprobe #重新加载
十.lvm:
LVM是逻辑盘卷管理(Logical Volume Manager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性,为文件系统屏蔽下层磁盘分区布局,提供一个抽象的盘卷,在盘卷上建立文件系统。物理卷(physical volume)物理卷就是指硬盘分区或从逻辑上与磁盘分区具有同样功能的设备(如RAID),是LVM的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘等)比较,却包含有与LVM相关的管理参数。
用户分区配额:
用户分区配额用来实现对用户可使用虚拟硬盘空间的限制,进行虚拟硬盘对用户的合理分配。
1.首先建立一个100M的分区,并将分区格式化:
2.将所建的分区以户配额方式挂载到/mnt上,编辑配额文件对用户配额,在配额之后赋予/mnt目录满权限:
3.编辑配额文件,将hard改为20480,即20M,也就是说用户student可用空间为20M:
参数的意义:
blocks:student在设备中的数据
soft:软件,超过限额会有警告
hard:硬件,不能超过的大小
inodes:存在几个文件
soft:建立多少文件后收到警告
hard:不能超过的文件个数
4.切换到studet用户,从无限0文件中截取空白文件student,bs为每次截取的大小,count为截取的次数。当bs*count<=20M时能够成功截取,当bs*count>20M时,会截取失败。可以使用du -sh /mnt/student查看截取空白文件的大小:
5.开机挂载:vim /etc/fstab
制作lvm:
1.重新建立3个分区,并在fidsk /dev的界面使用t指令,选择分区序号,输入8e依次将3个分区的id改为8e:
2.制作pv,vg,lv,并将westos1 (lv)格式化后挂载到/mnt目录:
3.使用watch -n 1 'pvs;vgs;lvs;df -h /mnt'查看lvm的制作情况:
在/dev/vg0/westos1,/dev/mapper/vg0-westos1都可以查看到新建的文件系统,其中/dev/mapper中存放的都是虚拟设备:
xfs格式虚拟硬盘的扩容:
虚拟硬盘的扩容需要从pv,vg,lv依次进行,最后将文件系统也扩大到lv的大小:
扩容之后大小改变:
ext4格式虚拟硬盘的扩容:
1.xfs格式的虚拟硬盘支持扩容但不支持缩减,所以在先要将xfs格式改为ext4格式:
2.进行扩容:
ext4格式虚拟硬盘的缩减:
1.解除/mnt的挂载并检查westos1的数据:
2.缩减:
数据转移:
如果要移除额设备上有数据,先要先将数据转移:
制作快照(剩余空间不足时需要扩容):
在制作快照之前,先在westos1挂载的/mnt目录先建立5个文件,快照生成后,将快照挂载就可以看到/mnt里面的内容了,快照也就是对原有数据的一个备份。当快照丢失或损坏,可以删除快照并生成一个新的快照,这样就可以不影响到原来的数据:
虚拟硬盘的删除(倒序删除):
1.解除westos1的挂载
2.lvremove /dev/vg0/westos1 #删除westos1
3.vgremove /dev/vg0 #删除vg0
4.pvremove /dev/vdb1 #删除vdb1