我们的公司标准是 CentOS(它似乎更喜欢 LVM),而我主要来自非 LVM 背景,所以我正在为这个问题开辟新天地。
我继承了一台旧机器作为日志服务器,不得不重新安装 CentOS。由于主板上的 EHCI 问题(通过正常安装 DVD 或通过 LiveCD GUI 安装),我能找到的唯一可以安装 CentOS 6.3 的是 LiveCD 文本安装。LiveCD 文本安装不允许我在磁盘上进行自己的分区设置;它只安装 LVM 并给了我错误的日志服务器空间分配......
[mpenning@someHost ~]$ cat /etc/issue
CentOS release 6.3 (Final)
Kernel \r on an \m
[mpenning@someHost ~]$ df -m
Filesystem 1M-blocks Used Available Use% Mounted on
/dev/mapper/vg_livecd-lv_root
50397 2167 47719 5% /
tmpfs 1850 0 1850 0% /dev/shm
/dev/md127p1 485 65 395 15% /boot
/dev/mapper/vg_livecd-lv_home
227001 188 215283 1% /home
[mpenning@someHost ~]$ sudo lvm vgdisplay
--- Volume group ---
VG Name vg_livecd
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 4
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 3
Open LV 3
Max PV 0
Cur PV 1
Act PV 1
VG Size 278.96 GiB
PE Size 4.00 MiB
Total PE 71415
Alloc PE / Size 71415 / 278.96 GiB
Free PE / Size 0 / 0
VG UUID 8qywNz-cmKv-RxAH-WcsV-2nEA-sGg3-fcZ6BU
[mpenning@someHost ~]$
两个问题:
- 如果我需要增加到
/
257398 个 1-M 块并减少/home
到 20000 个 1-M 块,我可以在不重新启动的情况下执行此操作吗?如果可以,执行此操作的具体命令序列是什么? - 如果我想添加一个专用
/var
分区,我应该如何做而不是完全重新安装?
您大约有 280GB 的可用空间,其中 50GB 已分配给 '/',230GB 已分配给
/home
. 因为这代表了您所有的可用空间,所以您必须先释放一些空间。这里有几个选项:如果您没有在 中放置任何数据
/home
,最简单的方法是丢弃现有文件系统并以适当的大小重新创建它:卸载
/home
:将逻辑卷 (LV) 的大小减小到 20GB:
重新创建
/home
文件系统:并重新安装
/home
:可以缩小
/home
而不是丢弃它,但这可能有点棘手:卸载
/home
:fsck
文件系统。这可能是下一步所需要的:调整文件系统大小:
降低 LV:
您会注意到我减少的文件系统比 LV 多一点;这是因为我永远不记得他们是否以相同的方式计算事物,所以我尽量留出一点回旋余地。
在任何一种情况下,此时您的卷组中都有大约 210GB 的可用空间。现在您可以增加根文件系统的大小:
增加根 LV 的大小:
增加文件系统的大小:
请注意,由于我在此答案中使用的四舍五入,您可能需要使用略小于 260G 的数字。此外,最新版本的 LVM 实用程序包括为您调整文件系统大小的功能,但在这些选项可用之前我就一直在这样做……所以我不能声称确切地知道它们是如何操作的。
首先,您可能希望在单用户模式下执行此操作,否则正在运行的进程可能会打开文件以
/var
使其难以替换。话说回来...您将再次需要可用空间。如果您没有在上一步中用完所有可用空间,而是留下几 GB 的可用空间,您可以这样做:
创建一个新的逻辑卷:
创建一个新的文件系统:
编辑以通过添加以下行
/etc/fstab
来挂载新 LV :/var
但是不要安装它!
在方便的地方安装新文件系统:
复制以下内容
/var
:重命名
/var
并/var.old
创建一个新目录:将你的新 LV 安装在
/var
:# 卸载 /mnt # 挂载 /var
并继续开机。当您对一切正常工作感到满意时,您可以删除
/var.old
.考虑到:
AFAIC,我会尝试通过 netinstall/kickstart 以一种可复制的方式一次获得所需的配置。
我的 2cts