linux中的存储设备的管理
1、设备识别
(1)发现系统中的设备
<1>fdisk -l
<2>cat /proc/partitions
(2)系统已发现但无法投入使用,随时可以使用的
<1>blkid ----查看设备id信息
(3)发现且在使用
df ---查看正在使用的
df -h ---以2^n 为单位统计,比较精确
df -H ---以10^n 为单位统计
2、设备名称的读取
/dev/xd*
x=s /dev/sd* ---sata硬盘,或者iscsi网络存储
x=v /dev/vd* ---虚拟硬盘,一般在虚拟机中使用
x=h /dev/hd* ---ide硬盘,一般出现在老式电脑中
*=a~... ---/dev/vda表示系统中第一块虚拟硬盘
/dev/sda1 ---表示系统中第一块硬盘的第一个分区
/dev/cdrom,/dev/sr[0-...] ---系统中的光驱
/dev/mappper/* ---系统中的虚拟设备
3、设备的使用:设备必须要用目录来对设备中的内容来读取,所以设备在使用时需要挂载
(1)blkid识别设备
(2)mount设备挂载点
mount /dev/sda1 /mnt ---把第一分区挂载到/mnt
mount -o ro /dev/sda1 /mnt ---只读挂载
mount -o remount ,rw /dev/sda1 /mnt ---只读变为读写(在线更改=设备正在使用时更改)
(3)umount设备挂载点卸载设备
umount /dev/sda1 ---卸载
如果出现下列情况的处理方法:
[[email protected]~]# umount /mnt/
umount:/mnt: target is busy.
(Insome cases useful info about processes that use
thedevice is found by lsof(8) or fuser(1))
发现进程方式:
fuser -vm /dev/sda1
lsof /dev/sda1
终止进程方式:
kill -9 pid
fuser -kvm /dev/sda1
4、分区管理
主引导分区MBR:设备分区信息MBR由4部分组成,共512=446+64+2字节
(1)mbr主引导记录446个字节---让磁头找启动分区,446表示启动程序最短代码大小;位于0磁道1扇区
(2)mpt主分区表64个字节
(3)硬盘的有效性标识“55aa”2个字节
(4)一个主分区占用16个字节记录分区信息
(5)一块硬盘上如果用mbr的分区方式最多可以存在4个主分区,分区大小最多2TB
(6)主分区:是用来启动系统的分区,mbr模式可以划分四个,gpt最大支持到128个,分区大小支持到256TB
(7)扩展分区:主分区之外的其它分区
(8)逻辑分区:扩展分区在逻辑上的划分
(1)分区划分:
fdisk -l ---查看分区信息
fdisk /dev/sd*
d ---删除分区
n ---新建
p ---显示分区信息
q ---退出
t ---修改分区id
w ---将当前操作写入硬盘分区表
依次选择:n p|e(p主,e扩) 分区id 默认分区开始位置 +大小(K,M,G) wq退出保存建立新的分区
cat /proc/partitions ---查看设备是否被系统识别
partprobe ---更新分区表
mkfs.**** ---格式化设备并制作文件系统
blkid ---查看可用设备
mount ---挂载
(2)设备永久挂载
vim /etc/fstab ---设备挂载策略文件
设备 挂载点文件系统类型 挂载参数 是否备份 是否检测
/dev/vdb1 /mnt xfs defaults 0 0
mount -a ---让fstab中未生效的生效的策略
然后重启电脑会发现/dev/vdb1开机自动挂载到/mnt下了
(3)删除分区
先卸载要删除的分区:umount /dev/vdb1
然后:fdisk /dev/vdb依次选择:d wq退出保存即可
5、swap分区管理 ---swap分区是交换分区,系统自己使用,不需要挂载
(1)swap分区的查看
swapon -s ---显示swap分区信息
(2)swap分区建立
<1>划分分区,并修改分区id为swap
fdisk /dev/vdb ---先建立新分区
fdisk /dev/vdb ---修改分区ID
t l 82 wq ---82为swap分区id,l为列出所有分区代码
mkswap /dev/vdb1 ---格式化设备格式为swap格式
swapon -s
<2>swapon -a /dev/vdb1 ---**swap设备,使系统利用(临时)
vim /etc/fstab ---开机自动**(永久)
/dev/vdb1 swap swap defaults 0 0
<3>swapon -s
当磁盘全部被占用不能创建新分区时,可以用文件来代替分区
dd if=/dev/zero of=/swapfile bs=1M count=1000
vim /etc/fstab ---设定开机自动挂载
swapfile swap swap defaults 0 0
mkswap /swapfile ---格式化
swapon -s ---检测
(3)swap分区删除
vim /etc/fstab
删除开机自动挂载配置文件
swapoff /dev/vdb1 ---关闭文件系统
swapoff /swapfile
fdisk /dev/vdb ---删除设备
rm -fr /swapfile
6、磁盘配额---为磁盘使用用户分配额度,针对的是设备
首先要建立分区,建立后完成以下操作
(1)**设备配额参数
mount-o usrquota /dev/vdb1 /mnt/
(2)chmod777
/mnt/
(3)edquota-u student /dev/vdb1 ---设定配额
(4)测试:
su-student
ddif=/dev/zero of=/mnt/file bs=1M count=100
永久**配额
vim/etc/fstab
/dev/vdb1/mnt xfs defaults,usrquota 0 0
重启后切换到student用户重复执行上述命令,会发现命令生效了
7、分区方式修改:mbr与gpt格式互换
mbr转gpt ---MBR主分区数量受限,gpt容量较大为18EB,MBR为2EB,GPT是一种新型磁盘模式,与我们常用的MBR磁盘相比更稳
定,自纠错能力更强,一块磁盘上主分区数量不受(4个的)限制,支持大于2T的总容量及大于2T的分区(几乎没有上限,最大支持
到128个分区,分区大小支持到256TB)。
parted /dev/vdb
mklabel ---修改设备分区方式标签
gpt| msdos ---改为gpt格式
y
quit
fdisk-l
8、分区加密(Luks)---思路:先加密,再做文件系统
(1)建立分区
(2)分区加密
cryptsetup luksFormat /dev/vdb1
YES
passwd(>8):
(3)需要操作时打开加密分区容器
cryptsetup open /dev/vdb1 name
passwd:
ll /dev/mapper/
(4)mkfs.xfs /dev/mapper/name ---制作文件系统
(5)mount /dev/mapper/name /mnt/ ---挂载到指定位置
touch /mnt/file{1..5} ---操作指令
(6)umount /mnt ---操作完卸载
(7)cryptsetup close name ---操作完关闭容器
(8)加密设备开机自动挂载
<1>vim /etc/fstab ---开机自动挂载加密设备
/dev/mapper/xinhao /mnt/ xfs defaults 0 0
<2>vim /etc/crypttab ---设定开机解密。
xinhao /dev/vdb1 /root/passfile
解密后名称设备 密码文件
<3>vim /root/passfile ---系统自动读取密码记录文件
passwd
解密密码
<4>chmod 600 /root/passfile ---加权限防止密码被外人知道哦
<5>cryptsetup luksAddKey /dev/vdb1 /root/passfile --把密码记录文件与设备关联
Enterany passphrase: ---设备解密密码
加密的清除
umount /dev/mapper/xinhao ---卸载加密设备
cryptsetup close xinhao ---关闭加密
mkfs.xfs /dev/vdb1 -f ---重新制作文件系统
vim /etc/fstab
删除开机自动加载设备
vim /etc/crypttab
删除开机解密文件