我有一台专用服务器(Debian 8),有两个 1.8T SSD 驱动器作为 RAID 1 运行。在默认配置中,仅使用一小部分磁盘空间,我想修改分区以使用所有内容。
lsblk 的输出:
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 1.8T 0 disk
|-sda1 8:1 0 4G 0 part
| `-md1 9:1 0 4G 0 raid1 /
|-sda2 8:2 0 2G 0 part [SWAP]
`-sda3 8:3 0 1.8T 0 part
`-md3 9:3 0 1.8T 0 raid1
|-vg00-usr 253:0 0 5G 0 lvm /usr
|-vg00-var 253:1 0 5G 0 lvm /var
`-vg00-home 253:2 0 5G 0 lvm /home
sdb 8:16 0 1.8T 0 disk
|-sdb1 8:17 0 4G 0 part
| `-md1 9:1 0 4G 0 raid1 /
|-sdb2 8:18 0 2G 0 part [SWAP]
`-sdb3 8:19 0 1.8T 0 part
`-md3 9:3 0 1.8T 0 raid1
|-vg00-usr 253:0 0 5G 0 lvm /usr
|-vg00-var 253:1 0 5G 0 lvm /var
`-vg00-home 253:2 0 5G 0 lvm /home
df 的输出:
$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/md1 4095616 283056 3812560 7% /
udev 10240 0 10240 0% /dev
tmpfs 3287176 98888 3188288 4% /run
/dev/dm-0 5029504 1344456 3406520 29% /usr
tmpfs 8217932 4 8217928 1% /dev/shm
tmpfs 5120 0 5120 0% /run/lock
tmpfs 8217932 0 8217932 0% /sys/fs/cgroup
none 8217932 0 8217932 0% /tmp
/dev/mapper/vg00-var 5029504 573944 4177032 13% /var
/dev/mapper/vg00-home 5029504 3001552 1749424 64% /home
tmpfs 1643588 0 1643588 0% /run/user/0
tmpfs 1643588 0 1643588 0% /run/user/1000
tmpfs 1643588 0 1643588 0% /run/user/1001
如何使用剩余的可用空间创建 /data?
答案1
由于您已经有了 LVM,并且从您所显示的卷组中显示有相当多的未使用空间,您应该能够仅使用 lvcreate 添加另一个卷并将其安装在 /data 处。您可以通过使用 vgdisplay 作为 root 来确认 vg00 中有多少可用内容。无论如何,这应该有效:
lvcreate -L50G -n data vg00
mkfs.ext4 /dev/mapper/vg00-data #or some other fs type if you prefer
然后在 /etc/fstab 中为新分区添加一行。可能通过 UUID 是最好的。
需要注意的一件事是,在上面的命令中,我一开始只为新卷分配了 50G,根据我的经验,这样做比立即填满卷组要好得多。安全地增加卷(即使是在线卷)比缩小卷要简单得多。当然,在接触数据之前,通常需要注意适当备份数据。您可以使用以下过程调整卷大小:
lvextend -L+50G /dev/mapper/vg00-data # make it 50G larger
reseize2fs /dev/mapper/vg00-data # assuming extfs
在远程连接上,我建议在 screen/tmux 内发出这些命令,这样如果您的 ssh 会话中断,它们就不会面临中途神秘死亡的风险。
答案2
我认为你的要求是相互矛盾的 - 如果你是不是该领域的专家,然后接触跑步系统听起来像一个坏的主意。
无论如何,您可以研究各种工具(例如 resize2fs,甚至 gparted);这似乎适用于乌班图。
然后,一个建议:在正在运行的服务器上尝试其中任何一项之前,最好创建一个具有匹配配置(可能较小的磁盘)的虚拟机,以测试在将该虚拟机应用到您的真实系统之前对其进行任何更改!