磁盘管理
本地存储设备的识别
fdisk -l ##真实存在的设备
cat /proc/partitions ##系统能识别的硬盘
blkid ##能用的设备
df ##正在挂载的设备
df -h ##使用的设备
sda sada disk 硬盘
vda virtual disk 虚拟硬盘
fdisk -l ##查看系统中真实存在的设备
cat /proc/partitions ##查看系统中被系统识别的设备
df ##查看系统正在挂载的设备
blkid ##查看系统可使用的设备(可看设备的id信息和设备类型,在里面出现的设备可被挂载)
设备的挂载和卸载
设备名称
/dev/xdx ##/dev/dh0 /dev/dh1 /dev/sda /dev/sdb /dev/sda1 /dev/sda2 /dev/sdb1
/dev/sr0 ##光驱 /dev/cdron
/dev/mapper/* ##虚拟设备
设备挂载
mount 设备 挂载点
/dev/sdb1 /nmt/
umount /mnt | /dev/sdb1 ##解除挂载
mount -o ro /dev/sdb1 /mnt ##只读挂载
mount ##查看挂载信息
mount -o remount,rw /mnt/ | /dev/sdb1 ##重新读写挂载
解决设备正忙情况
方法1:
#fuser -vm /dev/sdb1
fuser -kvm /mnt ##强行结束
umount /mnt ##解除挂载
方法2:
lsof /mnt ##显示进程的PID
kill -9 pid ##结束进程
umount /mnt ##解除挂载
磁盘分区
硬盘0此道1扇区的512个字节记录的信息如下
512 =446 + 64 + 2
mbr(主引导记录) mpt(主分区表) 55aa(硬盘的有效性标识)
1)mbr主引导记录446个字节
2)mpt主分区表64个字节
3)硬盘的有效标识“55aa”2个字节
4)一个主分区占用16个字节记录分区信息
5)一块硬盘上如果是mbr的分区方式最多可以存放4个分区!
分区划分
主分区(引导分区)
扩展分区(里面的分区:逻辑分区)
扩展分区不能直接使用(理解:一个容器)
在分区表中最多4个主分区或者3个主分区+1个扩展分区,也就是说扩展分区只能有一个,然后可以再细分为多个逻辑分区
d delete a partition ##删除分区
n add a new partition ##新建分区
p print the partition table ##显示分区
q quit without saving changes ##退出
t change a partition's system id ##修改分区功能id
w write table to disk and exit ##保存更改到分区表
步骤:fdisk /dev/vdb
##分区界面
m(帮助)–>n–>p–> –> –>p–>+100M–>wq
Command (m for help):
n
##新建分区
Partition type:
p primary (0 primary, 0 extended, 4 free)
##分区类型为主分区
e extended
##分区类型为扩展分区
Select (default p):
p
##默认为主分区
Partition number (1-4, default 1):
##主分区id
,选默认就行
First sector (2048-20971519, default 2048):
##此分区起始位置
,默认
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519):
+100M ##分区大小
Partition 1 of type Linux and of size 100 MiB is set
Command (m for help):
wq
##退出保存
,
q直接退出不生效
[root@243 Desktop]#
cat /proc/partitions
##查看系统识别的分区信息
当已经有三个主分区时,第四个会默认为扩展分区!
在vdb1安装文件系统
mkfs.xfs /dev/vdb1 ##格式化
mount /dev/vdb1 /mnt/ ##挂载
先后将vdb1,vdb2挂载在/mnt下,当解除挂载vdb1时,提示失败,只有先解除vdb2后才能解除vdb1的挂载,实际应用中要避免多设备挂载一个目录下的情况,避免不必要麻烦
注意:第四个扩展分区默认为扩展分区
两个不能同时挂载一个目录,非要挂载,第二个会把第一个覆盖
第一个取消挂载不成,除非第个二先取消挂载才行
partprobe ##同步分区表
cat /proc/partitions
同上面步骤,建立三个主分区和一个扩展分区
然而直接cat /proc/partitions却仍只有vdb1,这时需要执行partprobe命令,同步分区表,再次查看系统能使用的硬盘,刚新建的就显示出来了,没同步的话,则会出现设备不存在的错误!
mount命令的挂载只是临时的,想要永久挂载需要修改配置文件
永久挂载
vim /etc/fstab ##开机自动挂载策略文件
/dev/vdb5 /mnt xfs defaults 0 0
设备 挂载点 文件系统 挂载参数 不备份 不检测
mount -a ##使/etc/fstab中记录的挂载策略生效
swap分区
步骤:
swapon -s ##查看激活的设备
fdisk /dev/vdb-->n-->+100M-->t-->5-->82-->wq
t修改分区功能 5第五块逻辑分区 82改功能swap分区
partprobe ##刷新,同步分区表
mkswap /dev/vdb5 ##格式化
swapon -a /dev/vdb5 ##激活swap设备,使系统利用此设备(swap分区在使用时不需要挂载,关机重启后需再次激活)
vim /etc/fstab ##开机自启动
/dev/vdb5 swap swap defaults 0 0
swapon -a 不报错
swap分区删除
vim /etc/fstab ##删除永久挂载配置文件
swapoff /dev/vdb5 ##关闭swap分区
fdisk /dev/vdb
d-->5-->wq ##删除虚拟盘vdb5
partprobe ##刷新
swapon -s ##查看 ##查看当前激活的swap分区
配额
定义:指为磁盘使用用户分配额度,用户只能在该磁盘上使用所分配的额度大小,不能超过这个额度
fdisk /etc/vdb/
partproble
mkfs.xfs /dev/vdb6 -f
mkdir /pub
mount -o usrquota /dev/vdb6 /pub
chmod 777 /pub ##先挂载,再设置权限!!!
edquota -u student ##设置student用户配额
测试:切换student用户
su - student
cd /pub
quota 查配额
dd if=/dev/zero of=/pub/file bs=1M count=xx
blocks:用户已占多大容量
soft:软件
hard:硬件
indodes:已有多少文件,个数
soft:软限
hard:硬限
测试:student用户
,
在/pub下配额限制20M
vim /etc/fstab ##开机自动激活设备配额参数
LUKS磁盘加密:(加密在文件系统之后)
(1)fdisk /dev/vdb
建立分区
(
2)cryptsetup luksFormat /dev/vdb1
加密分区
(3)cryptsetup open /dev/vdb1 xxx 生成xxx管理设备,输入密码
(4)ll /dev/mapper/ 显示虚拟设备xxx了
(5)mkfs.xfs /dev/mapper/xxx
格式化虚拟设备 (mkfs.vfat u盘格式化)
(6)mount /dev/mapper/xxx /mnt
(7)touch file{1..3}
将虚拟设备挂载并建立一些文件
(8)umount /mnt
(9)cryptsetup close xxx
解除挂载,关掉解密
(10)cryptsetup open /dev/vdb1 haha重新生成虚拟设备haha
只要不格式化设备,尽管名字不一样,第一次建立的file还是可见(还是同一设备)!
(11)mount /dev/mapper/haha /mnt
(12)ls 可以看到第一次建的文件
加密磁盘的永久挂载
vim /etc/fstab ##永久挂载文件
/dev/mapper/haha /mnt xfs defaults 0 0
vim /etc/crypttab ##自动读如密码文件
haha /dev/vdb1 /root/vdb1pass
名称(虚拟名称随便设) 设备 关联文件加密字符存放文件
vim /root/vdb1pass ##密码解密文件
chmod 600 /root/vdb1pass ##赋权限
cryptsetup luksAddKey /dev/vdb1 /root/vdb1pass (需要密码) ##添加加密
reboot ##重启
df -h ##查看挂载情况
/dev/mapper/haha 95M 5.1M 90M 6% /mnt
加密清除还原环境
:
删除开机重启,删除文件内容和密码文件,卸掉挂载,最后将密码分区进行格式化
vim /etc/fstab
vim /etc/crypttab ##删最后一行添加的
rm -fr /root/vdb1pass ##删密码文件
umount /mnt/
cryptsetup close haha ##解除加密
mkfs.xfs /dev/vdb1 -f ##强格式化,加密没了
mount /dev/vdb1 /mnt
df看到原设备了
设定分区方式为gpt:解决一个分区不能超过2tb
mbr分区最多:16个 efi分区最多:128个
fdisk /dev/vdb ##删除所有mbr分区
将gpt分区方式变回来为mbr分区