十八、Linux系统中的设备管理
18.1 设备识别
- 设备接入系统后都是以文件的形式存在
- 设备文件名称:
设备类型 | 文件名称 |
---|---|
SATA/SAS/USB | /dev/sda,/dev/sdb 【s= SATA, d=DISK a=第几块】 |
IDE | /dev/hd0,/dev/hd1 【h= hard】 |
VIRTIO-BLOCK | /dev/vda,/dev/vdb 【v=virtio】 |
M2(SSD) | /dev/nvme0,/dev/nvme1 【nvme=m2】 |
SD/MMC/EMMC(卡) | /dev/mmcblk0,/dev/mmcblk1 【mmcblk=mmc卡 】 |
光驱 | /dev/cdrom,/dev/sr0,/dev/sr1 |
- 设备查看:
命令 | 效果 |
---|---|
fdisk -l | 查看磁盘分区情况 |
lsblk | 设备使用情况 |
blkid | 设备管理方式及设备id |
df | 查看正在被系统挂载的设备 |
cat /proc/partitions | 查看系统识别设备 |
- 举例
18.2 设备挂载
18.2.1 临时挂载以及卸载
[root@localhost Desktop]$ mount #查看挂载信息
[root@localhost Desktop]$ mount -o rw /dev/nvme0n1p1 /text #读写挂载
[root@localhost Desktop]$ mount -o remount,ro /text #转换挂载参数由读写变为只读
[root@localhost Desktop]$ umount /text #卸载设备
- 示例
- 再卸载时出现设备繁忙时的处理方法
18.2.2 永久挂载
修改配置文件 /etc/fstab
代码 | 效果 |
---|---|
find -name | 按名字查找 |
find -user | 按文件拥有者查找 |
find -group | 按文件拥有组查找 |
find -type | 按类型查找 |
find -perm | 按文件权限查找 |
find -exec | 对查找结果进行处理,后面跟将要执行的命令 |
find -maxdepth | 按最大查找深度 |
find -mindepth | 按最小查找深度查找 |
find -o | 或 |
find -a | 并且 |
find -not | 否 |
[root@localhost Desktop]$ find /etc/ -name passwd
[root@localhost Desktop]$ find /etc/ -maxdepth 1 -name passwd
[root@localhost Desktop]$ find /etc/ -maxdepth 2 -name passwd
[root@localhost Desktop]$ find /etc/ -maxdepth 2 -mindepth 2 -name passwd [root@localhost Desktop]$ find /mnt -user westos
[root@localhost Desktop]$ find /mnt -not -user westos
[root@localhost Desktop]$ find /mnt -user westos -o -user lee
[root@localhost Desktop]$ find /mnt -user westos -a -group lee
[root@localhost Desktop]$ find /mnt -type d
[root@localhost Desktop]$ find /mnt -perm 111 #查找文件权限为111
[root@localhost Desktop]$ find /mnt -perm -111 #查找文件权限u位有1 G位有1 o 位有1
[root@localhost Desktop]$ find /mnt -perm /111 #查找文件案权限u或G或O 含有1
[root@localhost Desktop]$ find /mnt -perm /111 -type f -exec chmod ugo-x {} \; #{} 表示find命令查找结果 #\是为了转译“;”
- 例子:
18.4 磁盘分区
分区方式 | 位数 | 分区表大小 | 支持分区个数 | 支持单个分区大小 |
---|---|---|---|---|
传统分区方式(mbr:主引导记录) | 32 | 64 | 主分区4个,所有分区16个 | 2.2TB |
UEFI(GPT :全局唯一标识分区表) | 64 | 128 | 理论上无限制,windows128个 | 8ZB |
18.4.1 mbr分区
18.4.1.1 mbr分区方式
分区 | 解释 |
---|---|
主分区 | 主分区表记录分区的信息并可以直接使用的分区 |
扩展分区 | 主分区表记录的分区,不可以直接使用,只是逻辑分区容器 |
逻辑分区 | 扩展分区之上划分的分区叫做逻辑分区 |
18.4.1.2 mbr分区方法
(1)管理磁盘分区
常识:
(2)新建磁盘分区
(3)同步分区表并格式化文件系统就可以投入使用
(4)当使用新建完四个主分区可以建立逻辑分区
18.4.2 mbr分区方式转换为GPT
18.5 swap分区
18.5.1 基本介绍
- 作用:
- 程序在运行时所有数据是在RAM
- 当RAM使用量超过了限额
- 为了使系统更加稳定
- 我们在硬盘上划分一部分空间来作内存缓冲区swap
- 当内存使用超过限额,内核会把内存中闲置的数据存放到swap中
- 当程序需要swap分区中的数据时内核将swap分区中的数据在交还给内存进程处理
- swap分区大小建议
物理内存大小 | swap分区大小建议 | 当允许HIBERNATE |
---|---|---|
2GiB以下 | 物理内存两倍 | 物理内存3倍 |
2-8 GiB | 等于物理内存 | 内存2倍 |
8-64 GiB | 4GiB | 内存1,5倍 |
64 GiB以上 | 4GiB | HIBERNATE不开 |
18.5.2 swap分区创建
(1)常规创建swap分区
(2)永久修改优先级
(3)删除swap分区
(4)当swap分区不足临时扩充
18.6 磁盘配额
18.6.1 基本介绍
作用:设定用户能写入指定设备的最大额度
18.6.2 磁盘配额实现:
18.6.2.1 临时磁盘配额
(1)配置
(2)检验:
(3)关闭配额
18.6.2.2 永久开启配额
vim /etc/fstab
18.7 逻辑卷
18.7.1 基本介绍
- LVM:(Logical Volume Manager) ,逻辑卷管理器。
- 解决分区空间不够用或者分区空间绰绰有余的情况
- 逻辑卷
pv | 物理卷 | 被处理过的物理分区 |
---|---|---|
pe | 物理拓展 | 设定存储的最小单元 |
vg | 物理卷组 | 捆绑pv到一个小组 |
lv | 逻辑卷组 | 分配最终的使用设备 |
- 逻辑卷的工作原理:逻辑卷(lv)是将几个磁盘分区或者块设备(pv,pv的id必须是8e的,pv可以位于不同的磁盘分区里,pv大小可以不一)组织起来形成一个大的扩展分区(vg,卷组,一个vg至少要包含一个pv。),该扩展分区不能直接用,需要将其划分成逻辑卷(lv)才能使用,lv可以格式化成不同的文件系统,挂载后直接使用。 lv的扩展和缩减是不会影响原有数据的,但逻辑卷缩减的风险大于逻辑卷扩展的风险。逻辑卷可以支持快照功能。
18.7.2 lv建立
(2)设置分区类型
(2)建立
(3)xfs式格式化并挂载
mkfs.xfs /dev/mapper/textvg-telv #格式化
18.7.3 lvm拉伸
18.7.3.1 vg容量充足时拉伸
18.7.3.2 vg容量不充足时拉伸
18.7.4 lvm缩减
xfs文件系统不支持缩减ext文件系统可以
(1)转变为ext文件系统
(2)缩减