存储设备在linux名称,Linux下的存储设备的管理
存储是每个计算机的基本需求。RedHat Linux 提供了一些强大的工具,他们能在大量的场景中管理多种类型的存储设备
1.本地存储设备的识别
fdisk -l ##真实存在的设备
cat /proc/partitions ##系统识别的设备
blkid ##系统可使用的设备
df ##系统正在挂载的设备
1.设备名称
/dev/xdx ##/dev/hd0 dev/hd1 /dev/sda /dev/sda1
/dev/sda2 /dev/sdb /dev/sdb1
/dev/sr0 ##光驱
/dev/mapper/* ###虚拟设备
2.设备的挂载
mount 设备 挂载点
mount /dev/sdb1 /mnt ##挂载sdb1到mnt
umount /mnt ##卸载
mount -o ro /dev/sdb1 /mnt ##只读挂载(无法写入)
mount ##查看挂载信息
mount -o remount,rw /dev/sdb1 ##重新读写挂载
3.解决设备正忙情况
当有程序使用此设备时,无法直接卸载设备
方法1
fuser -kvm /mnt
umount /mnt
方法2
losf /mnt
kill -9 xxxxx
umount /mnt
3.磁盘分区
1. 分区简介
硬盘0磁道1扇区的的512个字节中记录的信息如下
512=446 + 64 + 2
mbr(主引导记录) mpt(主分区标) 55aa(硬盘的有效性标示)
硬盘分区表
64
1个分区占用16个字节
一个硬盘最多可以划分4个主分区
其中最后一个为扩展分区,剩下的都会在扩展分区里,在扩展分区里划分逻辑分区
2.分区步骤
1.fdisk -l
2.fdisk /dev/vdb
Command (m for help): m ---->查看帮助
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
g create a new empty GPT partition table
G create an IRIX (SGI) partition table
l list known partition types
m print this menu
n add a new partition --------------->新建
o create a new empty DOS partition table
p print the partition table-------->查看信息
q quit without saving changes-------->退出不保存
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit--------->保存
x extra functionality (experts only)
1.建立主分区
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): 1------->分区数
First sector (2048-20971519, default 2048): 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
2.建立扩展分区
Command (m for help): n
Partition type:
p primary (3 primary, 0 extended, 1 free)
e extended
Select (default e): e
Selected partition 4
First sector (616448-20971519, default 616448):
Using default value 616448
Last sector, +sectors or +size{K,M,G} (616448-20971519, default 20971519): --------->默认剩余的空间全给扩展分区
Using default value 20971519
Partition 4 of type Extended and of size 9.7 GiB is set
3.建立逻辑分区
逻辑分区即在扩展分区内
Command (m for help): n
All primary partitions are in use
Adding logical partition 5
First sector (618496-20971519, default 618496):
Using default value 618496
Last sector, +sectors or +size{K,M,G} (618496-20971519, default 20971519): +500M
Partition 5 of type Linux and of size 500 MiB is set
Command (m for help): w-------->保存
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
保存后查看分区信息
[root@localhost ~]# cat /proc/partitions
major minor #blocks name
253 0 10485760 vda
253 1 10484142 vda1
253 16 10485760 vdb
253 17 102400 vdb1
253 18 102400 vdb2
253 19 102400 vdb3
253 20 1 vdb4------->此为扩展分区,只有1kb,只作为容器,无法使用
253 21 512000 vdb5
4.给设备安装文件系统
ext3 rhel5及之前的版本 最多支持32TB的文件系统和2T的文件,实际12TB文件系统,16G文件
ext4 rhel6 1EB 16TB
xfs rhel7 18EB 9eB 7G/s 4G/s
mkfs.xfs /dev/vdb1 ##格式化
mount /dev/vdb1 /mnt
vim /etc/fstab
设备 挂载点 文件系统 挂载参数 是否备份 是否检测
/dev/vdb1 /mnt xfs defaults 0 0
mount -a 开机即可自动挂载
5.swap分区管理
1.swap分区建立
划分分区并设定分区标签为82
1.mkswap /dev/vdb3
2.swapon -a /dev/vdb3
3.swapon -s
4.vim /etc/fstab
/dev/vdb3 swap swap defaults 0 0 ##即可开机自动挂载
2.swap分区删除
1.vim /etc/fstab ##删掉自动挂载
2.swapoff /dev/vdb ##删除swap分区
3.swapon -s
6.配额
配额是针对设备的
mkdir /pub
mkfs.xfs /dev/vdb6 ##格式化
mount /dev/vdb6 /pub
chmod 1777 /pub-------->挂载后再修改权限否则挂载后依然是原来的权限
umount /pub
mount -o usrquota /dev/vdb6 /pub-------->打开用户配额挂载
Disk quotas for user student (uid 1000):
Filesystem blocks soft hard inodes soft hard
/dev/vdb6 0 0 20480 0 0 0
文件大小软限制 硬限制 文件个数 个数软限制 个数硬限制
su - student ##切换到student测试
截取文件测试
dd if=/dev/zero of=/pub/studentfile bs=1M count=3
dd if=/dev/zero of=/pub/studentfile bs=21M count=3
7.磁盘加密
cryptsetup luksFormat /dev/vdb3---------> 加密(会覆盖原文件内容)
WARNING!
========
This will overwrite data on /dev/vdb3 irrevocably.
Are you sure? (Type uppercase yes): YES------->要用大写
Enter passphrase: ------->密码六位以上的字母和数字组合
Verify passphrase:
cryptsetup open /dev/vdb3 westos-------->打开锁(westos为这个锁的名字)
Enter passphrase for /dev/vdb3:------>输入密码
mkfs.xfs /dev/mapper/westos-------->格式化
mount /dev/mapper/westos /mnt------->挂载
touch /mnt/file{1…8}--------->建立文件
umount /mnt------->卸载
cryptsetup close westos------->关锁
此时即将vdb3相当于锁在了一个盒子里,只有重新输入密码打开锁方可重新挂载
加密磁盘开机自动挂载
1.vim /etc/fstab-------->开启自动挂载
/dev/mapper/westos /mnt xfs defaults 0 0
vim /etc/crypttab--------->读取密码的方式
westos /dev/vdb3 /root/westoskey
3.vim /root/westoskey------>密码文件
westos2019
4.cryptsetup luksAddKey /dev/vdb3 /root/westoskey
即自动挂载
5.reboot后df查看
取消加密设备
vim /etc/fstab----->注释掉自动挂载
umount /mnt------>卸载
cryptsetup close westos------>关锁
mkfs.xfs /dev/vdb3 -f-------->强制格式化
此时vdb3便不被加密,恢复正常
8.lvm
1.lvm建立
pv ##物理卷
被lv命令处理过的物理分区
vg ##物理卷组
被组装到一起的物理卷
pe ##图里扩展
lv设备的最小存储单元lvm是pe的整数倍
lvm ##逻辑卷
直接使用的设备,可以增大缩减并保持原有数据不变
1.分区时定分区标签为8e
2.打开监控命令
watch -n 1 "pvs;echo ===;vgs;echo ===;lvs;echo ===;df -h /mnt"
3.
pvcreate /dev/vdb5 ##建立物理卷
pvcreate /dev/vdb6
4.
vgcreate vg0 /dev/vdb5 ##建立物理卷组
vgextend vg0 /dev/vdb6
5.
lvcreate -L 20M -n lv0 vg0 ##建立lvm
6.
mkfs.xfs /dev/vg0/lv0 ##格式化为xfs文件系统
mount /dev/vg0/lv0 /mnt ##挂载
df -H /mnt ##查看lvm大小(H1000k为1M,h1024k为1M)
2.lvm的拉伸
1.watch -n 1 "pvs;echo ===;vgs;echo ===;lvs;echo ===;df -h /mnt" ##打开监控
2.lvextend -L 800M /dev/vg0/lv0 ##lvm拉伸,总量不可超过vg0
3.xfs_growfs /dev/vg0/lv0 ##xfs文件系统的扩展
若vg0不够,则添加
1.fdisk /dev/vdb ##建立新的分区
2.partprobe ##同步分区
3.pvcreate /dev/vdb7 ##添加物理卷
4.vgextend vg0 /dev/vdb7------->扩大物理卷组
5.lvextend -L 1400M /dev/vg0/lv0 ##拉伸到1500M
6.xfs_growfs /dev/vg0/lv0 ##扩展文件系统容量
3.lvm缩减
xfs文件系统无法缩减
1.umount /mnt ##卸载/dev/vg0/lv0
2.mkfs.ext4 /dev/vg0/lv0 ##转换文件系统
3.e2fsck -f /dev/vg0/lv0 ##检测改设备是否安全
4.resize2fs /dev/vg0/lv0 1000M ##将文件系统缩减到1000M
5.mount /dev/vg0/lv0 /mnt ##重新挂载后查看
6.lvreduce -L 1000M /dev/vg0/lv0 ##将逻辑卷缩减到1000M
7.pvmove /dev/vdb7 /dev/vdb6 ##将物理卷7数据移入物理卷6
8.vgreduce vg0 /dev/vdb7 ##移出物理卷7
9.pvremove /dev/vdb7 ##删除物理卷7
4.lvm快照
lvcreate -L 50M -n /dev/vg0/lv0_snap -s /dev/vg0/lv0
示例
1. ls /mnt
2.touch /mnt/file{1..8}
3.ls /mnt
4.umount /mnt
5.ls /mnt
6.lvcreate -L 50M -n /dev/vg0/lv0_snap -s /dev/vg0/lv0 ##快照
7.mount /dev/vg0/lv0_snap /mnt ##挂载快照
8.ls /mnt
若快照损坏,则删除后重新建立即可
1.rm -fr /mnt/*
2.ls /mnt
3.umount /mnt
4.lvremove /dev/vg0/lv0_snap ##删除有问题的快照
5.lvcreate -L 50M -n /dev/vg0/lv0_snap -s /dev/vg0/lv0 ##重新建立快照
6.mount /dev/vg0/lv0_snap /mnt ##挂载新建的快照
7.ls /mnt
5.lvm删除
1.umount /mnt ##卸载
2.lvremove /dev/vg0/lv0_snap ##删除快照
3. lvremove /dev/vg0/lv0 ##删除逻辑卷
4.vgremove vg0 ##删除物理卷组
5.pvremove /dev/vdb5 ##删掉物理卷
6.pvremove /dev/vdb6
7.pvremove /dev/vdb7
8.fdisk /dev/vdb ##删除分区
9.fdisk -l
存储设备在linux名称,Linux下的存储设备的管理相关推荐
- Linux、UNIX 下磁带机设备(Tape)的管理和使用(转自互联网)
磁带机简介 目前市场上有很多自称是"完美的系统备份选择"的设备,包括磁带机,便携式磁盘驱动器,甚至还有一些神秘的Internet备份系统.对于备份操作来说,还是磁带机提供了 ...
- Linux、UNIX 下磁带机设备(Tape)的管理和使用
磁带机简介 目前市场上有很多自称是"完美的系统备份选择"的设备,包括磁带机,便携式磁盘驱动器,甚至还有一些神秘的Internet备份系统.对于备份操作来说, 还是磁带机提供 ...
- linux怎样标识空设备,Linux系统命令------Ubuntu下解决adb设备列表为空
1:sudo apt-get install adb 安装adb工具 手机打开开发者选项 2:adb devices 解释一下这一行输出 Bus 001 表示第一个USB主控制器(HOST) , 可以 ...
- 【Linux】Linux 文件系统与设备文件
Ref: <Linux设备驱动开发详解:基于最新的Linux4.0内核>中的第5章<Linux 文件系统与设备文件> 基于Linux 5.10 本文结合源码和实例分析了Li ...
- Linux 驱动开发 三:字符设备驱动框架
一.参考 (3条消息) Linux 字符设备驱动结构(一)-- cdev 结构体.设备号相关知识解析_知秋一叶-CSDN博客 (3条消息) linux设备驱动框架_不忘初心-CSDN博客_linux设 ...
- 蓝桥云课linux入门3:用户及文件权限管理
内容转自蓝桥云课 目录 1.内容 2.Linux用户管理 2.1查看用户 2.2创建用户 2.3用户组 将其它用户加入 sudo 用户组 2.4删除用户和用户组 3.Linux文件权限 3.1查看文件 ...
- 安卓(android)6.0高通平台下设备树专题视频讲解【全国独家+设备树视频教程】
安卓(android)6.0高通平台下设备树专题视频讲解[全国独家+设备树视频教程] 独家拥有 ...
- linux查看usb设备名称,Linux系统下查看USB设备名及使用USB设备
1.系统插入USB设备后,从控制台界面有如下提示: 从控制台信息可以看出插入的USB设备名. 从上图可以看出,插入的USB设备为sde4. 但是,如果是CRT工具远程连接过去,可以使用下面的命令来查看 ...
- linux判断usb进程命令,一种在Linux系统下审计USB设备历史使用情况的方法与流程...
本发明涉及计算机审计技术领域,具体涉及一种在Linux系统下审计USB设备历史使用情况的方法. 背景技术: 如今,在linux系统中,对于USB设备的插入拔出事件,系统自身是不带有审计功能的,这使得普 ...
- Linux单用户下提示权限不够,Linux_/dev/null 权限不足,/dev/null文件设备的权限不对, - phpStudy...
/dev/null 权限不足 /dev/null文件设备的权限不对,会造成诸如pop3中的:Starting POP3d: ll_daemon_resetio: Permission denied的错 ...
最新文章
- ​我国科学家成功研制全球神经元规模最大的类脑计算机
- 包云岗:关于RISC-V成为印度国家指令集的一些看法
- shell实例第7讲:awk命令
- Vxworks信号量分析
- python对象模型_[译] 用 Python 实现一个最简单的对象模型
- php 系统交互 删除文件_FileSystemMap:与文件系统交互的自然方法
- php ajax json 实例,php+ajax+json 详解及实例代码
- Android无线测试之—UiAutomator UiObject API介绍二
- 我的天!我靠这个拥有了自己第一架无人机!
- java中的多对多关系解析_Java中多对多映射关系(转)
- 剑指 Offer——和为 S 的两个数字
- Memcached总结四:用ava程序连接memcached进行操作
- USB协议详解第28讲(USB硬件设计和热拔插原理)
- 极限编程和极限编程方法采用的有效的开发实践
- 阿里巴巴图标库字体iconfont旋转
- 文件二维码制作生成网站
- jav学习笔记-String源码分析
- 项目管理必备的软件,实用方便
- 【Unity】UGUI控件大小适配父容器
- 维基解密:攻击 Mac/Linux 的CIA三款工具
热门文章
- 易会满重磅发声!新证券法将给资本市场带来哪些新变化?证监会职责定位有何新要求?...
- ZStack 3.6.0发布:支持云主机从KVM云平台在线迁移至ZStack
- 【优化算法】寄生-捕食算法(PPA)【含Matlab源码 1801期】
- 【数据融合】基于matlab拓展卡尔曼滤波IMU和GPS数据融合【含Matlab源码 1600期】
- 毕设题目:Matlab电力负荷预测
- 例2.12 今年暑假不AC - 九度教程第22题(贪心算法)
- 红米note7html5测试,红米Note 7 Pro评测:千元王者名副其实
- vue中书写JSX一些坑-特殊属性名
- Delphi动态事件深入分析
- Cesium 显示CZML数据