第6章: 配置磁盘设备
目标
完成这一章,你能够做以下事情:
※描述进行磁盘分区的原因
※使用整盘方式对磁盘进行分区
※描述LVM的特征和优点
※定义术语:卷组,逻辑卷,和物理卷,并且解释它们之间的关系。
※在命令行创建物理卷,卷组,和逻辑卷
磁盘分区
※每一个磁盘都可能有一个或多个分区
※每一个分区能够被用于:
? -一个文件系统
? -交换空间
? -裸数据
? -引导区
系统通过分区来组织磁盘空间,一个分区就是为实现特定目的而分配的一部分磁盘空间。一个分区可以于跨越一个磁盘或多个磁盘,也可以是一个磁盘的一部分。每一个分区都能包含:
※一个文件系统(为文件和目录分配的空间)
※一个交换区(内核用来补充物理内存的空间)
※裸设备(应用程序直接存取的数据,例如数据库)
※引导区(包含引导过程中使用的工具)
HP-UX提供了两种方式来创建和管理磁盘分区:
※整盘方式
※逻辑卷管理(LVM)
系统中的一些磁盘可以使用整盘的方式来配置,而另外一些磁盘可以使用LVM来配置。两种技术可以用在同一个系统中,但是不能同时用在同一块磁盘上。
两种方式都有其优点和缺点。整盘方式容易配置,而LVM提供了更多的灵活性。
整盘方式分区
使用整盘方式,一个磁盘可以有五种不同的配置方式。
※磁盘全部被一个单个文件系统使用
※磁盘全部作为一个交换区
※磁盘全部作为一个裸分区
※磁盘的一部分作为一个文件系统,剩下的部分作为一个交换区
※磁盘被配置为一个引导盘,其中包含root文件系统,一个交换区和一个2M的特殊的引导区(其中包括系统引导时使用的工具)。
虽然整盘方式分区使用起来十分容易,但是它有以下几个限制:
※一个文件系统不能够跨越多个磁盘
※一个磁盘只能有一个文件系统。
※如果需要更多的磁盘空间,扩展一个文件系统会十分困难。
由于这些原因,许多管理员选择使用逻辑卷管理器来代替整盘方式管理磁盘空间。
LVM磁盘分区
逻辑卷管理(LVM)使你能够组合几个磁盘(在LVM中称为“物理卷”)上的空间来形成一个“卷组”。你可以继续细分这个卷组中的空间为“逻辑卷”(在LVM中等价于一个分区)。逻辑卷管理(LVM)克服了整盘方式的限制,是以下事情变得可能:
※创建跨越多个磁盘的逻辑卷
※在一个磁盘上创建多个逻辑卷
※在需要时扩展和缩小逻辑卷的大小
物理卷
LVM管理的一块磁盘被称为一个物理卷。当一块磁盘被LVM使用之前,必须先在磁盘上面创建一些特殊的数据结构。一旦这些数据结构被创建,这块磁盘就被认为是一个物理卷,同时就可以被加入到一个卷组中去。
卷组
卷组是一个或者多个物理卷的组合。一个卷组中的物理卷组合在一起,可以被分割为一个或者多个逻辑卷。卷组通常遵循以下的命名原则:
※/dev/vg00
※/dev/vg01
※/dev/vg02....
你可以使用任何你喜欢的名字对一个卷组命名。vg00卷组是一个特殊的卷组,被作为"root卷组”,其中包含默认的引导盘和大部分操作系统。
逻辑卷
一个卷组中的磁盘空间可以被分割为一个或者多个逻辑卷。一个逻辑卷和一个分区类似,也可以包含一个文件系统,交换区,或者裸分区。
逻辑卷能:
※ 包含所有或一部分物理卷的空间
※跨越多个LVM物理卷
※重新调整大小,或者在需要增加时,移动到一个不同的磁盘上去。
在默认的情况下,一个卷组中的逻辑卷的名字分配如下:
※ /dev/vg01/lvol1
※/dev/vg01/lvol2
※/dev/vg01/lvol3 etc
你也可以使用任何你想要的名字命名逻辑卷。
LVM的设备文件
物理卷,卷组,和逻辑卷都是通过设备文件来检索,就像磁盘设备通过设备文件来检索一样。
物理卷的设备文件
你可以使用与物理卷关联的磁盘的设备文件来检索一个物理卷。由于磁盘可以以块或者字符模式使用。所以每一个物理卷同时拥有一个块和字符的设备文件。
例子:
/dev/dsk/c0t5d0????#在SCSI地址为5的磁盘的块设备名
/dev/rdsk/c0t5d0??? #在SCSI地址为5的磁盘的字符设备名
卷组设备文件
卷组也是由设备文件来检索,每一个卷组在/dev目录下都有一个子目录,其中包含组自身的设备文件,同时包含这个卷组中所有的逻辑卷的设备文件。卷组子目录的目录名决定这个卷组名。
例子:
/dev/vg01 ???????#包含vg01相关联的设备文件的目录
/dev/vg01/group ????#vg01卷组的设备文件。
逻辑卷的设备文件
逻辑卷的设备文件存在于它们所属的卷组的目录下。每一个逻辑卷都有两个设备文件:一个是在使用字符模式存取逻辑卷时使用,另外一个在使用块模式存取逻辑卷时使用。
例子:
/dev/vg01/lvol1????#逻辑卷“lvol1”的块设备文件
/dev/vg01/rlvol1 ???#逻辑卷“lvol1"的字符设备文件
LVM的主号和次号
与其它设备文件类似,每一个逻辑卷和卷组的设备文件都有主号和次号。
所有的LVM设备文件的主号都是64,这个主号对应的是内核中的LVM的驱动程序。
次号的前两位表明这个设备文件所属的是那一个卷组。最后两位表明设备文件对应的逻辑卷。
设备文件名:/dev/vg0/lvol2
主号 #:64
次号#:0x010002
例子:
※这个设备文件的主号,同所有的LVM设备文件一样,是64
※次号阿前两位01,指明逻辑卷所属卷组是vg01
※次号的最后两位,指明这个逻辑卷是lvol2
问题:
如果vg02有三个以默认的命名规则创建的逻辑卷,:
1,包含这些逻辑卷设备文件是什么目录。
2. 卷组的设备文件是什么?
3. 第一个逻辑卷的裸设备文件名是什么?
4. 在/dev/vg02目录下,有多少个设备文件?
5. 第三个逻辑卷设备文件的次号应该为什么?
LVM的extents
在实际配置LVM之前,我们需要进一步认识一些概念。
在LVM中最小的分配单元为“Extend”.一个物理卷被分成"Physical
Extents”(PEs),当物理卷被加入到一个卷组的时候,这是一个有效的分配单元。
一个逻辑卷是由一系列的有连续编号的“Logical
Extents"(LEs)组成。每一个逻辑extent只是一个指向磁盘上的物理extents的一个指针。越大的逻辑卷的逻辑extents越多,为了增大一个逻辑卷,LVM只需要增加更多的extents即可。
PE和LE在一个卷组内是一致的,当卷组最初被创建的时候被设置。默认的extent的大小为4M
问题:
1. 假定一个卷组使用的是默认的extent大小。在一个88MB的逻辑卷中有多少个逻辑extent?
2. 假定一个卷组使用的是默认的extent大小,在一个400MB的物理卷中有多少个物理extent?
创建物理卷
pvcreate /dev/rdsk/c0t3d0
pvcreate /dev/rdsk/c0t4d0
在你开始使用一个磁盘上的逻辑卷空间之前,你必须先将这块磁盘配置成为一个物理卷。一旦这块磁盘被配置为一个物理卷,你就可以将其加入到一个卷组中去,并且开始分配逻辑卷。
准备一个物理卷
你准备用作物理卷的磁盘必须先要保证连接到你的系统,并且电源是打开的。你可以使用ioscan命令来找出新磁盘的设备文件名。
# ioscan -funC disk
如果磁盘在先前已经被使用,或者你不信任磁盘的一致性,你可以使用mediainit工具。mediainit通过格式化磁盘来进行磁盘初始化,通过运行写和读的测试来验证媒介的一致性,然后备份任何发现的坏块。mediainit执行后会破坏磁盘上已有的用户数据。
# mediainit /dev/rdsk/c0t3d0
# mediainit /dev/rdsk/c0t4d0
下一步,执行pvcreate命令来在磁盘上创建LVM数据结构,如果这块磁盘在以前已经属于另外一个卷组的一部分,你可能需要使用-f选项来覆盖磁盘上已经存在的数据结构。
# pvcreate -f /dev/rdsk/c0t3d0
# pvcreate -f /dev/rdsk/c0t4d0
到这里,你的磁盘已经准备好加入一个新的或者已经存在的卷组中。
LVM数据结构
LVM在物理卷的开始部分存储数据结构信息。
物理卷保留区域(PVRA)包含有物理卷的LVM信息。这个区域是由pvcreate创建。
卷组保留区域(VGRA)包含有整个卷组的LVM信息。在卷组中每一个物理卷中都有VGRA的一个拷贝。在VGRA中是卷组状态区域(VGSA),其中包含卷组的定额信息,和卷组描述区域(VGDA),其中包含有配置卷组所需的地设备驱动程序。VGRA是由vgcreate建立的。
用户数据区域包括文件系统,虚拟内存(交换区),或者用户应用。当一个卷组被创立,用户数据区域被分割成为固定大小的物理extents,这些物理extent又会映射为逻辑extents。
坏块重定位区域(BBRA),包含坏块的恢复机制信息。
LVM引导磁盘包含引导过程的附加的数据结构。
创建卷组
创建: mkdir /dev/vg01
????mknod /dev/vg01/group c 64 0x010000
检查: vgdisplay -v vg01
??? pvdisplay -v /dev/dsk/c0t3d0
??? pvdisplay -v /dev/dsk/c0t4d0
在磁盘已经被配置为一个LVM的物理卷后,你就可以创建卷组。一旦卷组被创建后,你就可以在其中创建逻辑卷。
第一步
为卷组创建一个目录。目录的命名规则为/dev/vgnn,其中nn表示卷组号。如果你的系统是预装的操作系统,你会发现/dev/vg00这个卷组已经存在。
例如,想要创建一个卷组01,你需要键入:
mkdir /dev/vg01
第二步
在目录/dev/vgnn下面创建名为group的控制文件,使用mknod命令。group文件是一个字符设备文件。主号始终是64。次号是十六进制数,通常以0000结尾,格式为:
0xhh0000
其中hh代表卷组号。
例如,想要为卷组01创建一个group文件,你应该键入:
mknod /dev/vg01/group c 64 0x010000
第三步
现在你能够创建卷组,并且指明这个卷组的物理卷。使用vgcreate命令,你可以一次分配多个卷到一个卷组。
vgcreate /dev/vg01 /dev/dsk/c0t3d0 /dev/dsk/cot4d0
注意,你正在使用块设备来创建一个卷组。
vgcreate 命令的选项有:
-e max_physical_extents??设置物理extent数目的最大值(默认为1016).
-l max_logical_vols????设置卷组中逻辑extent数目的最大值(默认为255)
-p max_physical_vols ???设置卷组中LVM磁盘(物理卷)的最大值(默认为16)。
-s physical_extent_size ? 设置卷组中每一个物理extent的大小(M),(默认为4M).
第四步
你可以通过vgdisplay和pvdisplay命令来确认你创建的卷组。
创建逻辑卷
创建: ?lvcreate -L 16 -n myswap vg01
????lvcreate -L 16 -n myfs1 vg01
????lvcreate -L 16 -n myfs2 vg01
检查: vgdispaly -v vg01
??? lvdisplay -v /dev/vg01/myswap
使用lvcreate命令可以在卷组中创建逻辑卷。
你可以使用Mbyte或者LVM extent作为单位来分配磁盘空间给文件系统,交换区,或者裸数据空间
当使用lvcreate命令创建逻辑卷的时候,会同时创建块和字符设备文件并且将它们放在/dev/vgnn目录下。这个命令不会自动指明大小,除非你在lvcreate命令中指明大小。你也可以使命令默认值来创建一个逻辑卷,然后再对其进行更改。
选项
-L
logical_volume_size????逻辑卷的大小(M),这个值必须最接近整个逻辑extent的总?????????????????和。默认为0
-l logical_extents_number ??逻辑extent的数量,默认为0
-n name??????????? ?你想要分配给这个逻辑卷的名字,
例子
想要以默认的特征,在卷组/dev/vg01下面创建一个逻辑卷:
lvcreate /dev/vg01
创建一个拥有10个逻辑extents的逻辑卷:
lvcreate -l 10 /dev/vg01
创建一个100M大小的逻辑卷:
lvcreate -L 100 /dev/vg01
创建一个非标准名字的逻辑卷。
lvcreate -L 16 -n myswap vg01
观察你的逻辑卷
你可以使用两个命令来观察你的逻辑卷的相关信息:
# vgdisplay -v vg01?? ??????#确定在vg01中有那些逻辑卷。
# lvdispaly -v /dev/vg01/myswap ??#浏览"myswap"逻辑卷的细节。
阅读(598) | 评论(0) | 转发(0) |