化学设备的命名规则
Linux系统内核中的udev设备管理器会手动把硬件名称规范上去,目的是让用户通过设备文件的名子可以猜出设备大致的属性以及分区信息等。
如:/dev/sda5这个设备文件名称所包含信息
说明:
/dev:表示硬件设备文件所在的目录,也就是我们添加里面硬件设备到系统上,这么设备将在这个目录下边呈现。
/dev/sda5中的sd:sd表示是SCSI设备,hd表示IDE设备。
/dev/sda5中的/sdn,n以字母a、b、c…表示,表示的是硬碟的顺序号linux 磁盘管理工具,假定我们如今Linux有两块硬碟,第一个是/dev/sda,第二个就是/dev/sdb。
/dev/sda5中的/sdan,n以数字表示1、2、3…表示分区的顺序号,这个顺序号可以按照fdisk命令来操作。
Linux中硬碟分区部份
首先我们须要看懂我们创建分区是拿来干哪些的?
我们创建完分区以后分区是拿来构建文件系统的。
查看计算机上的硬碟及分区情况的操作:fdisk-l
fdisk常用方式:
fdisk-l:查看计算机上的硬碟及分区情况
fdisk-d:删掉c盘分区
fdisk具体硬碟
之后m参数解释:
在讲Linux系统分区之前,首先得介绍一下硬碟分区的知识,具体分区知识如右图所示。
Linux在分区上构建文件系统
之后我们又抛出一个问题:为何要构建文件系统,构建文件系统后能干嘛?
为了能在硬碟分区上储存和读取文件,我们须要在分区上创建文件系统。每一个文件系统在Linux中都被解释成由一个根目录为起点的目录树结构,但是Linux将各个文件系统挂载(mount命令)在系统目录树中使用,也就是我们可以在挂载的目录下储存文件,之后文件就储存在该分区上的意思。对于不同的设备,计算机上面有许许多多中文件系统,不同的文件系统储存和搜索文件的形式都有不同。
硬碟分区后,下一步的工作就是构建文件系统。类似于Windows下的低格硬碟。低格硬碟就相当于初始化操作。
构建文件系统的命令是mkfs。
查看可构建文件系统的命令是mkfs[Tab][Tab],如
在/dev/sdb1上创建一个xfs类型的文件系统(初始化过程)
mkfs.xfs/dev/sdb1
接出来将分区挂载到对应的目录上面。
挂载
这么哪些又是挂载?
Linux系统中“一切皆文件”,所有文件都放置在以根目录为树叶的树状目录结构中。在Linux看来,硬件设备也都是文件,它们各有自己的一套文件系统。
因而形成的问题是,当在Linux系统中使用这种硬件设备时,只有将Linux本身的文件目录与硬件设备的文件目录合二为一,硬件设备能够为我们所用。合二为一的过程称为“挂载”。
我们先来举个反例
我们想通过Linux命令的形式来访问我们的U盘设备,而且我们的U盘设备有自己的一套文件目录结构,而我们Linux本身也有自己的一套文件目录结构。如右图所示:
图中可以见到,目前Linux系统文件和U盘分属两个文件系统,还未能使用命令行找到U盘文件(未能找到/dev/sdb1下的文件如/sdb1/a),须要将两个文件系统进行挂载。
所以我们须要在Linux的根目录下边新建一个目录,如/mnt/hardware-u,通过挂载命令将U盘系统文件挂载到此目录中,如右图所示:
挂载完成后,U盘文件系统早已成为Linux文件系统中的一部份了,此时我们访问/mnt/hardware/就相当于访问U盘。
我们晓得Linux根目录下边的/dev目录文件负责所有的硬件设备文件,当我们将U盘插入Linux后,系统会给U盘分配一个目录文件,这个就是坐落/dev下边,如/dev/sdb1,然而未能通过/dev/sdb1/直接访问U盘数据,访问这个目录只会提供给我们设备的一些基本信息。所以我们必须进行挂载到Linux目录下边才可以使用。
而若果是构建好的文件系统,也可以用前面的来解释,我们在分区上构建好文件系统,并且这个文件系统例如xfs有自己的一套目录文件系统,Linux也有自己一套目录文件系统,这个时侯,我们难以通过/dev/sdn的方法来访问我们在硬件分区上构建的xfs文件系统,所以我们必须将我们硬件分区上构建的xfs文件系统目录与Linux文件系统目录结构合二为一,既挂载,我们才可以在Linux系统中进行访问。
Linux硬碟管理工具
1、df命令
拿来查看所有文件系统的使用情况,如容量、已用、可用、挂载点等,参数-h表示容易读取
df-h
2、mount、umount挂载和卸载命令
(1)mount挂载
文件系统所挂载到的目录被称为挂载点(mountpoint),Linux系统中提供了**/mnt和/media**两个专门的挂载点。
挂载命令:mount参数设备挂载点
参数:
umount命令:mount设备挂载点
3、文件系统手动挂载
假如要实现每次开机手动挂载文件系统,可以通过编辑/etc/fstab文件来实现。
比如,倘若实现每次开机手动将文件系统类型为xfs的分区/dev/sdb1挂载到/sdb1目录下,须要在/etc/fstab文件中添加下边一行。
/dev/sdb1/sdb1xfsdefaults00
LVM逻辑卷管理器
LVM(LogicalVolumeManager)容许用户对硬碟资源进行动态调整。也就是说LVM是管理c盘的一种形式,核心特征是灵活调整大小,一般是空间不够用,进行扩展。例如说,我们Linux中根空间/root空间不够了,我们怎样进行扩展,假如LVM的c盘管理,这么我们就很容易进行扩展。LVM技术是在硬碟分区和文件系统之间添加了一个逻辑层,它提供了一个具象的卷组,卷组可以把多块硬碟进行卷组合并。这样我们就不用关系数学硬件设备的底层构架和布局就可以实现对硬碟分区的动态调整。
LVM技术构架如图所示:
通常而言,在生产环境中难以精确地预估每位硬碟分区在日后的使用情况,因而会造成原本分配的硬碟分区不够用。例如,伴随着业务量的降低,用于储存交易记录的数据库目录的容积也急剧降低;剖析并记录用户的行为引起日志目录的容积不断变大,这种就会造成原有的硬碟分区在使用上捉襟见肘。另外,还存在对较大的硬碟分区进行精简缩容的情况。
可以通过布署LVM来解决上述问题,布署LVM时,须要挨个配置化学卷、卷组和逻辑卷。
化学卷、卷组合逻辑卷的构建
化学卷可以构建在整个化学硬碟上,也可以构建在硬碟分区中。
(1)构建LVM类型的分区
借助fdisk命令在/dev/sdc上构建LVM类型的分区。
①先构建主分区
②使用t子命令将第1个分区的类型更改为LVM类型。
③最后使用w命令保存对分区的更改,并退出fdisk命令。
(2)构建化学卷
借助pvcreate命令可以在早已创建好的分区上构建化学卷。化学卷直接完善在化学硬碟或则硬碟分区上,所以化学卷的设备文件使用系统中现有的硬碟分区设备文件的名称。
构建化学卷PhysicalVolume的过程中LVM将底层硬碟空间界定成了一个一个的PE(physicalEtend),LVMc盘管理中PE的默认大小是4M大小,PE是逻辑卷管理的基本单位例如说我有一个400M的硬碟,这么在将其格式化成PV的时侯arm linux,其实际就是将这块化学硬碟界定成了100个的PE,由于PE默认的大小就是4M。(这儿的PE似乎不能更改)
化学卷的命令:
(3)构建卷组(可以修改PE,一旦定了就不能改了)
在创建好化学卷后,使用vgcreate命令构建卷组。卷组中可以包含多个化学卷,也可以只有一个数学卷。
卷组的命令:
构建好卷组后,可以使用命令lvcreate在已有卷组上构建逻辑卷。逻辑卷设备文件坐落其所在的卷组的卷组目录中linux操作系统培训,该文件是在使用lvcreate命令构建逻辑卷时创建的。
逻辑卷命令:
逻辑卷的使用
虚拟机创建过程:
发觉,我们在创建系统的时侯,新挂载点是使用LVM分区方案来的
尽管选择了LVM分区方案,并且我们的/boot分区的分区类型依然是标准分区,由于/boot一般不须要扩大和缩小。/boot文件系统默认是xfs,通常1g就够用了。
swap,交换分区,也就是虚拟显存,对于swap来说,设备类型就是LVM类型了
根分区/和swap是一样的,如图
创建完步入系统:
pvdisplay
vgdisplay
lvdisplay
两个逻辑卷,一个swap,一个root,swap大小是2G,而root大小是27G,加上去就是29G,所以这两个逻辑卷占用了centos卷组的所有空间
使用lsblk命令来查看关系:
如今假定centos中的root逻辑卷空间不够了,我们须要给他降低空间,假如我们这个时侯使用命令
lvextend-L-5g/dev/centos/root来给逻辑卷降低新的空间,这么肯定会失败,
由于我们的centos卷组早已没有了空间,而centos卷组的空间又来自于/dev/sda2,这个分区的空间也用完了,这么这个时侯我们该如何做呢?
我们须要创建新的数学硬碟linux 磁盘管理工具,之后把数学硬碟弄成化学卷,将数学卷加入到卷组中,之后把数学卷的空间给centos卷组,之后接出来就可以给centos卷组下的逻辑卷root降低空间了。
添加新硬碟:
弄成数学卷
将数学卷添加到centos卷组中,也就是给centos卷组降低新的空间。
vgextend那个卷组使用那个数学卷来扩充
vgextendcentos/dev/sdb
执行命令以后再看一下
之后拓展centos下的root逻辑卷
先使用lsblk来查看
使用:lvextend-L+5g/dev/centos/root
然而这儿须要注意:我们使用df-hT来查看文件系统,容量还是之前的27g,其实之前的更改对他没有用,所以,我们调整完逻辑卷的大小以后,也须要对文件系统的大小进行调整来匹配。
使用命令:xfs_growfs/dev/centos/root
若果是ext4,则xfs_growfs换成resize2fs