最近想试试LVM,可是当时装系统的时候我没考虑到这个,又不想重装系统,也没有新的硬盘,怎么办呢?
幸好RHEL和CentOS默认都是用LVM管理磁盘,默认的分区结构是一个VG,2个LV,LogVol00作为根分区,LogVol01作为swap分区,所以我打算缩小根分区,让VG有大量的空闲空间,以便我实践LVM。
但是新的问题出来了,系统采用的是ext3文件系统,要改变文件系统大小和LV大小,必须要先umount,但是根目录是无法umount的,所以我打算用光盘rescue模式启动系统,然后进行操作。
第一步,安装光盘插入光驱,重启系统,进入安装画面后,输入linux rescue,然后回车。
注意:可能rhel6或者CentOS6在安装画面没有可输入的文字提示符,那么你按下esc键,就出来了。然后按照提示一步一步向下,在下面这个界面选择Skip,然后就到命令行操作界面了。
第二步,开始缩小根分区(LogVol00)
1.激活VG
1
|
sh-3.2
# lvm vgchange -a y
|
2.检查我们要缩小的对象LV文件系统的整合性
1
|
sh-3.2
# fsck.ext3 -f /dev/VolGroup00/LogVol00
|
3.缩小LV文件系统的大小,我缩小为15G
1
|
sh-3.2
# resize2fs /dev/VolGroup00/LogVol00 15G
|
4.缩小LV的大小,我缩小为15G(这一步可能会有警告信息,直接输入y回车)
1
2
|
sh-3.2
# lvm lvreduce -L15G /dev/VolGroup00/LogVol00
Do you really want to reduce LogVol00? [y
/n
]: y
|
5.工作完了,输入exit重新启动系统,取出安装光盘
1
|
sh-3.2
# exit
|
第三步,确认
1.确认根目录(LogVol00)是否已经变成15G
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
[root@
test
~]
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
15G 898M 14G 7% /
/dev/cciss/c0d0p2
19G 238M 18G 2%
/var
/dev/cciss/c0d0p1
99M 19M 76M 20%
/boot
tmpfs 2.0G 0 2.0G 0%
/dev/shm
[root@
test
~]
# lvdisplay /dev/VolGroup00/LogVol00
--- Logical volume ---
LV Name
/dev/VolGroup00/LogVol00
VG Name VolGroup00
LV UUID fDHwa0-IUZV-no5O-RRJB-4N9o-U2MV-TAqucp
LV Write Access
read
/write
LV Status available
# open 1
LV Size 15.00 GB
Current LE 480
Segments 1
Allocation inherit
Read ahead sectors auto
- currently
set
to 256
Block device 253:0
|
可见,我们的操作成功了,根分区已经变成15G了。
2.确认VG的空闲空间
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
[root@
test
~]
# vgdisplay
--- Volume group ---
VG Name VolGroup00
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 4
VG Access
read
/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 1
Act PV 1
VG Size 253.81 GB
PE Size 32.00 MB
Total PE 8122
Alloc PE / Size 653 / 20.41 GB
Free PE / Size 7469 / 233.41 GB
VG UUID 0UvEJz-rfLm-MVDb-20uW-JMCa-T14K-wCmyLO
|
由倒数第二行可以看出,VG里有233.41GB的空间可用,倒数第三行已经使用的刚好是根分区和swap的大小和。
特别说明:如果是ReiserFS文件系统,不umount即可resize,因此如果你要使用LVM,使用ReiserFS文件系统是个理想的选择,但是我没测试过。