Linux中的设备管理
1、设备识别存在方式:设备在系统中都是以文件的形式存在的设备类别:设备名称设备类别设备标识含义SATS/SAS/USB串口硬盘/dev/sda,/dev/sdbs=SATA,d=DISK,a=第几块IDEide接口硬盘/dev/hd0,/dev/hd1h=hardVIRTIO-BLOCK虚...
1、设备识别
存在方式:设备在系统中都是以文件的形式存在的
设备类别:
设备名称 | 设备类别 | 设备标识 | 含义 |
SATS/SAS/USB | 串口硬盘 | /dev/sda,/dev/sdb | s=SATA,d=DISK,a=第几块 |
IDE | 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 | mmc卡 | /dev/mmcblk0,/dev/mmcblk1 | mmcblk=mmc卡 |
光驱 | /dev/cdrom,/dev/sr0,/dev/sr1 |
设备的查看:
命令 | 含义 |
df | 查看当前挂载设备 |
lsblk | 查看设备使用情况 |
blkid | 查看设备管理方式和id |
fdisk -l | 查看磁盘分区情况 |
cat /proc/partitions | 通过文件查看系统识别设备 |
2、设备挂载
条件:只有当设备具有ID时才能被挂载,被使用
挂载命令:
时间 | 命令格式 | 命令 | |
临时挂载 | 挂载 | mount -o 参数 设备 挂载点 | mount /dev/cdrom /mnt |
读写挂载 | mount -o rw 设备 | mount -o rw /dev/nvme0n1p1 | |
修改挂载权限 | mount -o remount,权限 挂载点 | mount -o remount ,ro /westos | |
卸载 | umount 设备/挂载点 | umount /dev/sr0 | |
设备正忙时的卸载 | fuser -kvm 设备/挂载点(-k 结束挂载,-v显示详情,-m显示进程) | fuser -kvm /westos | |
永久挂载 | 编写配置文件:/etc/fstab | 设备 挂载点 文件系统类型 挂载参数 是否备份 是否检测 | /dev/sr0 /westos iso9660 default 0 0 |
配置文件出现错误:
输入超级用户密码,注释错误行
继续执行即可开机。
【注】1、 永久挂载不会立马生效,需要吗mount -a 重新加载配置文件目录;
2、 文件内容错误会出现启动失败,按照提醒输入超级用户密码,进行更改配置文件即可;
3、 /etc/fstab与/etc/rc.d/rc.loacl的区别:/etc/fstab为系统配置文件,在系统加载配置时会执行,/etc/rc.d/rc.loacl为系统加载完成后,开机前执行的脚本。
3、设备文件中的查找
命令 | 命令参数 | 含义 | |
find | -name | 按名称查找 | |
-user | 按用户查找 | ||
-group | 按组名查找 | ||
-type | 安文件类型查找 | ||
-perm | 按权限查找 | ||
111 | 文件权限为111 | ||
-111 | 文件权限u位有1、g位有1且o 位有1 | ||
/111 | 文件案权限u或g或O 含有1 | ||
-exec | 查找后做一定的操作 | ||
-maxdepth | 查找的最大深度 | ||
-mindepth | 查找的最小深度 | ||
-o | 或 | ||
-a | 且 | ||
-not | 反义 |
【注】-exec 后接命令参数若含有目标对象为所查找文件,则格式如下:<{} \;> {} 是查询结果 \是转移;。
4、分区
4.1 分区的基本介绍
分区方式 | 基本介绍 | 位数 | 分区表大小 | 主分区个数 | 支持单个分区大小 |
MBR | 由主分区,扩展分区,逻辑分区组成,逻辑分区包含在扩展分区中 | 32 | 64 | 主分区4,所有分区64 | 2.2TB |
GPT | 固化在UEFI上的智能分区方式 | 64 | 128 | 理论上无限,windos128 | 8ZB |
【注】主分区:主分区表记录分区的信息,可直接使用
扩展分区:主分区表记录的分区信息,不可直接使用,是逻辑分区的容器
逻辑分区:扩展分区上划分的分区
4.2 分区的过程
(1)基本分区:fdisk /dev/sda
命令参数 | 含义 |
m | 帮助 |
d | 删除 |
n | 新建 |
F | 查看当前磁盘信息 |
l | 列出分区类型 |
p | 显示分区表 |
t | 转化分区类型 |
w | 保存更改 |
q | 退出分区界面 |
(2)同步分区表:
命令 | 含义 |
partprobe | 同步分区表 |
partx -d | 清楚分区表 |
partx -a | 重新加载分区表 |
(3)格式化设备:mkfs.xfs /dev/sda 1 (格式化设备为xfs文件,相当于安装启动系统)
分区转换方式: parted /dev/sda
5、swap交换分区
作用:当运行在RAM上的数据,超过了限额,为了使系统更加稳定,故在磁盘上划分一部分空间作为缓存swap,当RAM中的数据超过限额时,内核将RAM中闲置的数据放置swap中,当程序使用时,再由内核调回RAM即可;
分区建议:
内存大小 | swap大小 | 开启HIBERNATE |
0~2GIB | 内存两倍 | 内存三倍 |
2~8GIB | 等于物理内存 | 内存两倍 |
8~64GIB | 4GIB | 内存1.5倍 |
64GB~ | 4GIB | 不建议开启 |
【注】HIBERNATE:在关机时用于存储内存中的数据,加快开机速度
swap管理:
时效 | 目标 | 命令 | 操作结果 |
临时 | 创建 | 1、fdisk /dev/sda 2、创建分区并修改类型为swap 3、mkswap /dev/sda1 | 创建磁盘分区 |
swapon /dev/sda1 -p **(0-32767) | 设置分区并修改优先级 | ||
永久添加 (配置目录:/etc/fstab) | 创建 | /dev/sda1 swap swap pri=4 0 0(设备 类型 类型 优先级 是否备份 是否检测) | 配置文件中设置swap分区 |
删除 | 删除相应的swap分区的命令 | 修改配置文件 | |
在shell中的操作 | 查看 | swapon -s | 查看分区信息 |
重新加载配置文件 | swapon -a | 刷新配置 | |
关闭swap分区 | swapoff /dev/sda | 关闭当前分区的swap |
【小技巧】当swap不够用时,内存中也不可扩展,我们可以将内存中过大的文件删除,并截取相较大的空间(内存中空闲),将该目录当作swap临时使用。
6、磁盘配额
作用:配置不同用户的最的磁盘操作空间
设定方式:
时效 | 目标 | 命令 | 效果 |
临时 | 设置用户配额 | 1、mount /dev/sda1 /pub/ -o usrquota 2、quotaon -uv /dev/sda1(u 设备对象 v 详细参数) 3、edquota -u username | 1、过载设置的磁盘,打开配额参数 2、激活配额操作 3、设定用户配额 |
永久 | 配置目标文件:/etc/fstab | /dev/sda1 /pub xfs defaults,usrquota 0 0 | 永久打开/dev/sda1的用户配额参数(打开之后,操作和临时操作一致) |
在shell中的操作 | 关闭配额 | quotaoff -uv /dev/sda1 | 关闭配额;(若永久设置需在配置文件中删除配置参数) |
【注】用户配额设置文件如下:
Disk quotas for user lee (uid 1001):
设备 用户已经创建数据 软限 硬限 用户已经创文件个数 软限 硬限
Filesystem blocks soft hard inodes soft hard
/dev/sda 20480 0 20480 1 0 0
7、逻辑卷
7.1 基本知识:
基本字符 | 含义 |
pv | 物理卷 被处理过的的物理分区 |
pe | 物理扩展 设定最小的存储单元 |
vg | 物理卷组 捆绑pv到一个组中 |
lv | 逻辑卷 分配最终的使用设备 |
【注】为了方便结果,我们设置监控界面:watch -n 1 "pvs;echo ====;vgs;echo =====;lvs;echo =====;df -h /weixindata"
7.2 建立lvm的过程
(1)创建磁盘,并设置类型为lvm;
(2)建立pv:pvcreate /dev/sda2;
(3)建立vg,斌设置pe为2M:vgcreate weixinvg -s 2M /dev/sda1;
(4)建立lvm,并指定大小为100M:lvcreate -L 100M -n weixinlv weixinvg;
(5)格式化磁盘为xfs:mkfs.xfs /dev/mapper/weixinvg-weixinlv (/dev/weixinvg/weixinlv);
(6)lvm挂载到设备上:mount /dev/weixinvg/weixinlv/ /weixindata/。
7.3 lvm的拉伸
7.3.1 当vg中容量充足的时候
扩大逻辑卷的内存:lvextend -L 200M /dev/mapper/weixinvg-weixinlv
刷新挂载点的内容:
格式 | 命令 |
xfs | xfs_growfs /weixindata/ |
ext | resize2fs /dev/mapper/weixinvg-weixinlv |
7.3.2 当vg中容量不足的时候
增加物理卷:pvcreat /dev/sda3
增加物理卷组:vgextend weixinvg /dev/sda3
增加逻辑卷:lvextend -L 2500M /dev/weixinvg/weixinlv
刷新挂载点:xfs_growfs /weixindata
7.4 lvm的缩减
前提:xfs文件系统不支持缩减格式,ext文件系统支持缩减
格式修改:mkfs.ext4 /dev/weixinvg/weixinlv
缩减步骤:
(1)卸载设备,进行缩减:umount /weixindata
(2)查看磁盘内容,方便进行缩减前的检查:e2fsck -f /dev/weixinvg/weixinlv
(3)进行设备缩减,可重新挂载查看效果:resize2fs /dev/weixinvg/weixinlv 500M
(4)缩减逻辑卷:lvreduce -L 500M /dev/weixinvg/weixinlv
(5)缩减物理卷组:vgreduce weixinvg /dev/sda3
(6)缩减物理卷:pvremove /dev/sda3
7.5 删除磁盘
(1)卸载挂载的磁盘:umount /dev/mapper/weixinvg-weixinlv
(2)lvremove /dev/weixinvg/weixinlv
(3)vgremove weinxinvg
(4)pvremove /dev/sda2
上述为Linux中设备管理,若有问题,欢迎大家指出;因实验有时结果会覆盖上一条命令的操作,若上述内容还有所不懂,欢迎留言,会在第一时间给尽自己所能,给大家解决。愿上述内容有所用!
更多推荐
所有评论(0)