Linux Unit16--系统的分区
存储设备的管理
存储:存储数据的设备
存储分为:本地存储(硬盘、u盘、光盘等,都要与硬件进行连接)、网络存储
1.设备的查看
1>设备的查看
fdisk -l
cat /proc/partitions #能发现设备,但不能确定设备是否能用
2>系统发现的,但是没有投入使用,随时可以使用的设备
blkid ##查看设备的ID信息
3>发现并且在使用的设备
df -h #1G=2的n次方,更精确
df -H #1G=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 ##系统中第一块sata硬盘的第一个分区
/dev/cdrom,/dev/sr[0-...] ##系统中的光驱
/dev/mapper/* ##系统中的虚拟设备
设备必须要用目录来对设备中的内容进行读取,所以设备在使用时需要做挂载动作
blkid 识别可用设备
1>设备挂载
mount 设备 挂载点
mount /dev/sdb1 /mnt
##把系统中第二块硬盘的第一个分区挂载到mnt下
mount -o ro /dev/sdb1 /mnt
##只读挂载系统中第二块硬盘的第一个分区到mnt下
mount -o remount,re /mnt|/dev/sdb1
##在设备被使用时更改设备的挂载参数为rw
2>设备卸载
umount 设备|挂载点
umount /dev/sdb1 | /mnt
注意:当卸载设备时出现下列情况:
表示设备正在被系统的某个程序使用,解决方法如下:
进程发现的方式:
fuser -vm /dev/sdb1
lsof /dev/sdb1
进程终止的方式:
kill -9 pid
fuser -kvm /dev/sdb1|/mnt(设备和挂载点都可以)
3.分区管理
设备分区信息:
1>.硬盘分区:主分区,扩展分区,逻辑分区,作用:便于管理
2>.mbr主引导记录446个字节(完成这个动作需要最短的代码是446个字节)
作用:让磁头去找系统的启动分区
3>.mpt主分区表64个字节,记录分区信息
4>.硬盘的有效性识别“55aa”2个字节
5>.一个主分区占用16个字节记录分区信息
6>.一块硬盘上如果用mbr的分区方式最多可以存在4个主分区
7>.主分区,主分区表记录的分区
8>.扩展分区,一般来说是因为mpt没有空间再进行记录时,会需要到逻辑分区
9>.逻辑分区,扩展分区中的分区叫做逻辑分区
fdisk -l ##查看分区信息
fdisk /dev/vdb ##进入硬盘
m ##获得帮助
d ##删除分区
n ##新建分区
p ##显示分区表信息
q ##退出
t ##修改分区id
w ##将当前操作写入分区表
n ##创建分区
创建分区类型:
p ##主分区
e ##扩展分区
确定主分区id:1
分区起始块设备的位置:默认
分区结束块的位置(用+大小的方式指定):+100M
wq 退出保存,保存分区策略
(所有的操作都是在内存中进行的)
cat /proc/partitions ##查看设备是否被系统识别
mkfs.xfs /dev/vdb1 ##格式化设备,在设备上安装文件系统xfs
blkid ##查看可用设备,可以看到被格式化好的/dev/vdb1
mount /dev/vdb1 /mnt ##挂载设备,使设备投入使用(临时挂载)
设备的永久性挂载:
mkdir /westos ##建立设备需要挂载的目录
vim /etc/fstab ##设备挂载策略文件
设备 挂载点 文件系统类型 挂载参数 是否备份设备 是否检测设备
/dev/cdb1 /westos xfs defaults 0 0
mount -a ##让fstab配置文件中未生效的策略生效
reboot ##重启之后可用df查看
文件系统(相当于翻译):
exti-4 ##可最大支持数据为32TB的分区
fat ##可最大支持数据为4TB的分区
ntfs ##可最大支持数据为32TB的分区
xfs ##可最大支持数据为18EB的分区,吞吐速度为4GB/s,属于大数据文件系统
删除分区:
umount /dev/vdb1 ##先取消挂载
fdisk /dev/vdb ##在进入硬盘后删除
4.swap分区的管理
1>.swap分区的查看
swap变换分区,系统自己使用,不需要挂载
swapon -s ##swap分区的查看
2>.swap分区的建立
fdisk /dev/vdb
Device Boot Start End Blocks Id System
/dev/vdb1 2048 2050047 1024000 83 Linux ##默认情况下此分区为linux的普通分区
t ##修改分区的id
l ##列出所有id的类型代码
82 ##把/dev/vdb1的分区类型修改为swap,swap类型代码为82
wq ##退出保存
mkswap /dev/vdb1 ##格式化设备为swap文件系统格式
swapon -a /dev/vdb1 ##**swap设备,使系统利用此设备(临时**)
vim /etc/fstab ##让此设备开机自动**,永久性**
swapon -a ##检查是否有错,出错的话会使swap分区无法**
reboot ##重启
swapoff /dev/vdb1 ##关闭swap分区
注意:当磁盘全部被占用不能创建新分区时,可用文件来代替分区,具体步骤如下:
1.dd if=/dev/zero of=/swapfile bs=1M count=1000
2.mkswap /swapfile
3.blkid
4.vim /etc/fstab
5.swapon -a
6.swapon -s
3>.swap分区的删除
删除/etc/fstab/配置文件里修改的内容;
swapoff /swapfile;
swapoff /dev/vdb1;
rm -rf /swapfile;
fdisk /dev/vdb.
5.磁盘配额
为磁盘使用用户分配额度,分区配额是针对设备的
umount /westos
mount -o usrquota /dev/vdb1 /westos
chmod 777 /westos/
edquota -u student /dev/vdb1
Filesystem blocks soft hard inodes soft hard
/dev/vdb1 0 0 2048000 0 0 0
以存在文件大小 软额度 最大额度 文件个数 软额度 最大额度
partprobe ##同步分区表
设备管理文件被删除后如何恢复
rm -rf /dev/cdb1 ##设备管理文件被删除后无法挂载
ll /dev/vdb
brw-rw---- 1 root disk 253,16 Nov 7 20:16 /dev/vdb
mknod /dev/vdb1 b 253 17 ##恢复,b为文件类型
永久性**配额
vim /etc/fstab ##开机自动**配额
6.GPT
GUID磁碟分割表,缩写为GPT,其含义为“全局唯一标识磁盘分区表”,与MBR最大4个分区表项的限制相比,GPT对分区数量没有限制,所以在企业里大多用GPT。
分区修改方式:mbr -----> gpt
parted /dev/vdb
mklabel ##修改设备分区方式标签,两下Tab键可以查看所有分区方式标签
gpt ##把原有的dos标签改成gpt格式
quit ##退出
fdisk -l ##查看
分区修改方式:gpt -----> mbr
parted /dev/vdb
mklabel ##修改设备分区方式标签,两下Tab键可以查看所有分区方式标签
msdos ##把原有的gpt标签改成mbr格式
quit ##退出
fdisk -l ##查看7.分区加密
1>.建立分区
2>.cryptsetup luksFormat /dev/vdb1 ##加密
3>.cryptsetup open /dev/vdb1 westos ##打开
4>.mkfs.xfs /dev/mapper/westos ##文件系统的安装
5>.mount /dev/mapper/westos /mnt/ ##挂载
touch /mnt/file{1..6}
6>.umount /mnt
cryptsetup close westos ##关闭
7>.cryptsetup open /dev/vdb1 westos
mount /dev/mapper/westos /mnt/
加密设备开机自动挂载
1>.vim /etc/fstab
/dev/mapper/westos /mnt xfs defaults 0 0
2>.vim /etc/crypttab
westos /dev/vdb1 /root/passfile
3>.vim /root/passfile
westos123
4>.cryptsetup luksAddkey /dev/vdb1 /root/passfile
5>.reboot重启后查看
加密清除
1>.umount /dev/mapper/westos
cryptsetup close westos
2>.mkfs.xfs /dev/vdb1 -f
3>.删除配置文件里的内容以及/root/passfile文件
4>.df查看