存储设备的管理
1 设备的查看
1.1发现系统中的设备(能不能被使用未知)
fdisk -l
cat /proc/partitions
使用fdisk -l 这个命令,从图片中我们可以看到,我们这台主机上面有两个硬盘,/dev/vda和/dev/vdb,大小都为8G。/dev/vda已经被划分成了三个区,文件系统为xfs,/dev/vdb这个硬盘还是个新的,什么都没有设置,接下来我们所有的实验将围绕着这个硬盘展开。
使用cat /proc/partitions命令,这个文件存储的是我们的分区表信息
1.2 系统发现的,但是没有投入使用,随时可以使用
blkid
主要用来查看设备的id信息
1.3 发现并且在使用的设备
df - report file system disk space usage
df [OPTION]… [FILE]… ##默认单位为k
OPTIONS
-h, –human-readable
print sizes in human readable format(e.g., 1K 234M 2G) #####-H, –si
likewise, but use powers of 1000 not 1024
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/mapper/* #系统中的虚拟设备
3.设备的使用
设备必须要用目录来对设备中的内容进行读取
所以设备在使用时需要做挂载动作
3.1设备挂载
blkid:识别可用设备
mount 设备 挂载点 #挂载设备
mount /dev/sdb1 /mnt #把系统中的第二块硬盘的第一个分区挂载到mnt下
只读挂载: mount -o ro /dev/sdb1 /mnt(默认为读写挂载)
重新挂载: mount -o remount,rw /mnt|/dev/sdb1 :对设备做热更改,在设备被使用时更改设备的挂载参数为rw
硬盘挂载默认是可读写的,但如果我们想要只读呢?我们可以使用下面的命令对硬盘进行只读挂载,实验证明只读挂载是不能往设备里面写东西的,所以我们创建文件是失败的。(因为我是用同一块设备进行实验,所以我第一步是先将设备卸载,卸载了以后查看这个文件夹是空的,并没有之前建立的文件,就说明之前对这个挂载了设备的文件夹的更改完全是对设备进行的)
当设备正在被使用的时候,我们是不能直接对其卸载的,但如果我们想要对设备重新挂载,即想要从只读挂载变为读写挂载的时候,我们就可以使用如下命令,对设备进行热更改,在设备被使用时更改设备的挂载参数为rw。
3.2设备卸载:
umount 设备|挂载点 #卸载设备
注意:当卸载设备时出现下列情况
[root@foundation27 ~]# umount /dev/sdb1
umount: /mnt: target is busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1))
标示设备正在被系统的某个程序使用,处理方式为:
进程发现的方式
fuser -vm /dev/sdb1
lsof /dev/sdb1
进程终止的方式
kill -9 pid
fuser -kvm /dev/sdb1
卸载设备:
umount /dev/sdb1