SSH:缩小根分区

SSH:缩小根分区

我有一台可通过 SSH 访问的服务器,它有一个带有一个分区的 3.6TB 硬盘

我想将/分区缩小到 92GB,并创建一个 8GB 分区,/tmp并创建另一个分区(3.5TB),/home但是......我不知道该怎么做。

root@server4 [/etc]# parted /dev/sda unit s print
Model: HP LOGICAL VOLUME (scsi)
Disk /dev/sda: 7813971632s
Sector size (logical/physical): 512B/4096B
Partition Table: gpt

Number  Start    End          Size         File system  Name  Flags
 1      2048s    514047s      512000s      ext2               boot
 2      514048s  7813969919s  7813455872s                     lvm


root@server4 [/etc]# lvs
  LV   VG   Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  root vg   -wi-ao----  3.61t                                                   
  swap vg   -wi-ao---- 23.62g                                                   
  tmp  vg   -wi-ao----  1.00g                                                   

CentOS 6.7 x86_x64

答案1

以下信息摘自https://rbgeek.wordpress.com/2013/02/11/how-to-reduce-the-root-partition-in-lvm/这是 CentOS 6.3,但我不明白为什么它不适用于 6.7。

  1. 启动 CentOS 安装 DVD 并选择 Rescue 选项
  2. 跳过选项,直到到达可以启动 shell 的位置。 (不允许系统尝试挂载文件系统。)
  3. vgscan使用以下命令在救援环境中启用 LVMvgchange -a y
  4. 运行lvdisplay | grep Path并确认要收缩的根分区是/dev/vg/root
  5. 通过运行确保文件系统是干净的fsck -f /dev/vg/root。如果您收到文件系统已安装的警告,请立即停止并且不要继续。
  6. 将文件系统的大小调整root为所需的大小,lvresize --resizefs --size 92G /dev/vg/root.这可能会重新运行fsck;没关系。

此时,您的 LVM 分区中应该有足够的空间来扩展和创建新的文件系统

  1. 将分区大小调整tmp为新的可用空间,lvresize --size 8G /dev/vg/tmp并扩展文件系统fsck -f /dev/root/tmp; resize2fs /dev/root/tmp
  2. 创建home文件系统。我建议您最初将其创建为 1T 而不是整个磁盘,因为以后很容易增加文件系统和分区的大小。跑步lvcreate --name home --size 1T /dev/vg
  3. 在新文件系统上创建文件系统mkfs -t ext3 -L home /dev/vg/home。如果您可以ext4使用它而不是ext3文件系统类型
  4. 退出救援 shell 并重新启动系统

登录并挂载新home文件系统/mnt/home

mkdir /mnt/home
mount /dev/vg/home /mnt/home

将所有数据从 /home 移动到 /mnt/home

mv /home/* /mnt/home

编辑/etc/fstab并创建一个新条目/home。请记住使用ext4而不是ext3如果这就是您之前创建文件系统的方式

LABEL=home /home ext3 defaults 0 2

卸载新的主目录文件系统并将其重新安装到它所属的位置

umount /mnt/home
mount /home

再次重新启动以获得良好的效果。至少,注销,但我建议完全重新启动。

相关内容