实践参考:parted创建硬盘分区并创建LVM

简介:
从RHEL5开始,RHEL有了新的分区工具,parted,最大的亮点就是可以分2TB以上的分区,而且操作简单,个人感觉比fdisk好使
现在用一块硬盘/dev/sdb 使用parted分区,并且创建LVM

一。创建分区
1。先rpm -qf /sbin/parted
parted-2.1-13.el6.x86_64
如果没有就先安装

对/dev/sdb进行分区
parted /dev/sdb
GNU Parted 2.1
使用 /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted)                
进入parted对话框,输入help得到帮助

2。进行分区,使用mkpart创建分区,先创建一个主分区,大小为2g

mkpart primary 1024K 2048G

Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdb: 8590MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type     File system  标志
 1      1024kB  2048MB  2047MB  primary

3。 现在开始创建一个扩展分区

mkpart extended 2048M 8590M

4。 成功后创建逻辑分区

mkpart logical 2048M 8590M

5。成功后,需要更改分区类型,改为LVM

Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdb: 8590MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type      File system  标志
 1      1024kB  2048MB  2047MB  primary
 2      2049MB  8590MB  6541MB  extended               lba
 5      2049MB  8590MB  6541MB  logical

6。使用toggle 更改硬盘类型

toggle 1 lvm

toggle 5 lvm

 

Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdb: 8590MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type      File system  标志
 1      1024kB  2048MB  2047MB  primary                lvm
 2      2049MB  8590MB  6541MB  extended               lba
 5      2049MB  8590MB  6541MB  logical                lvm


7。现在退出parted,然后分区就创建完毕了。这时候要么重启,然后使分区表生效,或者使用命令partprobe将分区表注入到内核中

[root@station ~]# fdisk -cul /dev/sdb

Disk /dev/sdb: 8589 MB, 8589934592 bytes
255 heads, 63 sectors/track, 1044 cylinders, total 16777216 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00042564

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2000     4000000     1999000+  8e  Linux LVM
/dev/sdb2         4001792    16777215     6387712    f  W95 Ext'd (LBA)
/dev/sdb5         4001793    16777215     6387711+  8e  Linux LVM

二。创建完分区后,就可以创建PV了,PV应该是physical volume的缩写,物理卷

1。使用命令pvcreate创建物理卷

pvcreate /dev/sdb1

pvcreate /dev/sdb5

2。 创建VG(卷组),名称为rhel,并将PV包含在VG中,通过包含物理卷,可以为系统提供逻辑的划分空间

vgcreate rhel /dev/sdb1 /dev/sdb5

也可以通过vgextend 来向rhel组添加物理卷

vgextend rhel /dev/sdb6

3。 创建完卷组后,就可以创建逻辑卷了,这逻辑可真够复杂的,都已经三层了

lvcreate -n lvname -L 2G rhel

参数-n表示逻辑卷的名称,-L表示大小,后面是卷组名称

可以通过lvdisplay /dev/rhel来查看所创建的逻辑卷

4。 格式化逻辑卷为ext4格式,并添加挂载点

mkfs.ext4 /dev/rhel/lvname

mkdir /data

mount /dev/rhel/lvname /data

blkid /dev/rhel/lvname

echo "UUID=d8d7a0bd-0d3e-4dbb-a7bc-ad5f4529ae9b /data ext4 defaults 1 2" >>/etc/fstab

df -h /data

[root@station ~]# df -h /data
文件系统       容量  已用  可用 已用%% 挂载点
/dev/mapper/rhel-lvname
                      2.0G   67M  1.9G   4% /data

5。 现在一个逻辑卷就创建好了。并挂载到了/data目录下,大小为2G         

三。扩展逻辑卷和ext4

逻辑卷的好处就是可以扩展硬盘空间,当分配给一个挂载点的硬盘空间不足时,可以动态的加载硬盘容量,这个感觉跟微软的动态磁盘类似,不过微软的动态磁盘就不说什么了。这个东西有利,但是安全性无法保障,例如重装系统的时候,如果硬盘是动态磁盘,就准备哭吧。不知道RHEL对LVM的动态支持性怎么样,这个还有待于以后的实验。

首先,扩展逻辑卷,可以在线扩容。具体步骤如下:

1。先确保卷组的可扩容容量,防止扩容容量超出卷组可用容量,如果卷组容量不足,可以通过vgextend来扩展

vgdisplay rhel

2。扩展逻辑卷,例如,要给逻辑卷lvname扩展2G

lvresize -L +2G /dev/rhel/lvname

运行lvdisplay rhel查看,可以看到已经扩展成4G

[root@station ~]# lvdisplay rhel
  --- Logical volume ---
  LV Name                /dev/rhel/lvname
  VG Name                rhel
  LV UUID                tDIQwm-dCQ8-8GWO-1SGb-2vyx-M2tS-534s4t
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                4.00 GiB
  Current LE             1024
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:2

但是挂载点/data却仍然是2GB

[root@station ~]# df -h /data
文件系统       容量  已用  可用 已用%% 挂载点
/dev/mapper/rhel-lvname
                      2.0G   67M  1.9G   4% /data

3。使用resize2fs来扩展挂载点的文件系统

resize2fs /dev/rhel/lvname

做完后,再查看/data,可以看到已经扩展

[root@station ~]# df -h /data
文件系统       容量  已用  可用 已用%% 挂载点
/dev/mapper/rhel-lvname
                      4.0G   68M  3.7G   2% /data

 

其次,可以缩减容量

在缩减容量的时候,需要将硬盘离线,并且需要备份数据。

缩减容量的顺序相反,先要从文件系统缩减容量,然后再从逻辑卷缩减容量

1。解除挂载

umount /data

2。 执行fsck验证所有文件系统数据结构

fsck -f /dev/rhel/lvname

3。 缩减文件系统,将大小调整为3G,也就是减少1G

resize2fs /dev/rhel/lvname 3G

4. 缩减逻辑卷(LV),将大小调整为3G

lvreduce /dev/rhel/lvname -L -1G

[root@station ~]# lvreduce /dev/rhel/lvname -L -1G
  WARNING: Reducing active logical volume to 3.00 GiB
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce lvname? [y/n]: y
  Reducing logical volume lvname to 3.00 GiB
  Logical volume lvname successfully resized

这个比较讨厌,不能跟resize的容量对应起来。

5。重新挂载

mount -a
 

这样,一个LVM的创建,增加与删减的操作就完成了。 

 刚才看了一篇文章

http://hi.baidu.com/suofang/blog/item/02ce933dd837b614bba1676c.html

对LVM的逻辑结构讲的比较清楚,总算弄明白了PE个数与PE大小之间的关系,所以在扩展的时候,还可以通过PE的个数来扩展,这样的话,可以利用所有的空间或者部分的空间,比较欣赏这点。

像扩展空间就可以使用

lvextend -l +100 /dev/rhel/lvname

剩下的步骤一样,每个PE在创建vg的定义,默认是4m,可以修改成最大16GB,乖乖,真够大的,一个卷组里面最大的PE个数是2的16次方,65536个。这样灵活的组合,就可以管理容量巨大的卷组。非常犀利啊



本文转自 念槐聚 博客园博客,原文链接:http://www.cnblogs.com/haochuang/archive/2012/03/13/2393690.html,如需转载请自行联系原作者

相关文章
|
6月前
|
Linux 测试技术
非LVM磁盘分区根目录扩容操作参考
在操作系统部署时,根目录使用的是非LVM分区,后期空间不足又无法扩容。 提供一个思路是新增一块硬盘,创建为逻辑卷,把根目录迁移过去,然后引导以新分区启动。 迁移完成后,旧的根目录可以再格式化为逻辑卷,合并到新磁盘分区。 本操作仅在CentOS Linux release 7.9.2009实验过,其他环境可能不支持。
514 0
|
Linux Windows
10.16 Linux parted命令用法详解:创建分区
虽然我们可以使用 fdisk命令对硬盘进行快速的分区,但对高于 2TB 的硬盘分区,此命令却无能为力,此时就需要使用 parted 命令。
371 0
10.16 Linux parted命令用法详解:创建分区
|
Linux
11.14 Linux LVM(逻辑卷管理)的删除
创建好 LVM 之后,如果经过一段时间的运行,我们发现 LVM 技术并未像有些人吹嘘的那样为系统的管理和维护工作带来很大的方便,可以手动删除它。
714 0
11.14 Linux LVM(逻辑卷管理)的删除
|
IDE Linux 开发工具