如何在 SLES SP4 上从 /home 增加 /root 的磁盘空间?

如何在 SLES SP4 上从 /home 增加 /root 的磁盘空间?

目前我无法在 SLES SP4 系统上运行或安装任何内容,因为 /root 空间不足。您能否建议一种在 SLES SP4 上从 /home 增加 /root 磁盘空间的方法?

以下是当前磁盘使用情况:

df -hT
Filesystem     Type      Size  Used Avail Use% Mounted on
devtmpfs       devtmpfs  4.0M     0  4.0M   0% /dev
tmpfs          tmpfs     126G     0  126G   0% /dev/shm
tmpfs          tmpfs      51G   10M   51G   1% /run
tmpfs          tmpfs     4.0M     0  4.0M   0% /sys/fs/cgroup
/dev/sda2      btrfs      40G   29G   11G  74% /
/dev/sda2      btrfs      40G   29G   11G  74% /.snapshots
/dev/sda2      btrfs      40G   29G   11G  74% /boot/grub2/i386-pc
/dev/sda2      btrfs      40G   29G   11G  74% /opt
/dev/sda2      btrfs      40G   29G   11G  74% /root
/dev/sda2      btrfs      40G   29G   11G  74% /srv
/dev/sda2      btrfs      40G   29G   11G  74% /tmp
/dev/sda2      btrfs      40G   29G   11G  74% /usr/local
/dev/sda2      btrfs      40G   29G   11G  74% /boot/grub2/x86_64-efi
/dev/sda2      btrfs      40G   29G   11G  74% /var
/dev/sda3      xfs       876G   74G  802G   9% /home
/dev/sda1      vfat      511M  8.3M  503M   2% /boot/efi
overlay        overlay   876G   74G  802G   9% /home/docker_new/docker/overlay2
tmpfs          tmpfs     126G   20K  126G   1% /home/docker_new/docker/containers
tmpfs          tmpfs      26G  4.0K   26G   1% /run/user/1000


lsblk
NAME                      MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda                         8:0    0 931.5G  0 disk
├─sda1                      8:1    0   512M  0 part /boot/efi
├─sda2                      8:2    0    40G  0 part /var
│                                                   /boot/grub2/x86_64-efi
│                                                   /usr/local
│                                                   /tmp
│                                                   /srv
│                                                   /root
│                                                   /opt
│                                                   /boot/grub2/i386-pc
│                                                   /.snapshots
│                                                   /
├─sda3                      8:3    0 875.5G  0 part /home
└─sda4                      8:4    0  15.5G  0 part [SWAP]
sdb                         8:16   0 931.5G  0 disk
├─sdb1                      8:17   0   512M  0 part
├─sdb2                      8:18   0     1G  0 part
└─sdb3                      8:19   0 464.3G  0 part
  └─ubuntu--vg-ubuntu--lv 254:0    0 464.3G  0 lvm



Disk /dev/sda: 1000GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system     Name  Flags
 1      1049kB  538MB   537MB   fat32                 boot, esp
 2      538MB   43.5GB  42.9GB  btrfs
 3      43.5GB  984GB   940GB   xfs
 4      984GB   1000GB  16.6GB  linux-swap(v1)        swap

答案1

救援 CD 或其他东西的启动。您无法缩小xfs文件系统。使用 xfsdump 进行备份。删除分区,在可用空间末尾创建一个新的、较小的分区,并将数据恢复到其中,在可用空间中创建一个新分区,将其添加到您的 btrfs。

答案2

由于您启用了快照,默认设置可能会使用过多的快照空间(请参阅官方文档了解空间建议,也许openSUSE:Snapper 教程)。

尝试du -sh /.snapshots获取快照所消耗的空间。

显然,您可以通过使用snapper命令(如snapper -v cleanup timeline)删除快照来“产生”一些可用空间,但请先参阅手册页 snapper(8) 和 snapper-configs(5)!

/etc/snapper/configs/root您还可以查看例如中的设置。

最后警告:使用snapper命令清理快照;我通过删除错误的“快照”破坏了系统。

相关内容