几周前,我安装了 Opensuse 13.2。我对磁盘进行了分区,以便根目录“/”、/var、/tmp 和 /home 位于不同的分区上。今天我注意到,虽然 /var 位于分区 sda8 上,但 /var 中的所有目录(例如 /var/tmp 和 /var/spool)与根目录一起位于 sda5 上!!
以下是df
、 和 的转储/etc/fstab
:
wsl@wsl-home:~> df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda5 20978688 6735728 13435504 34% /
devtmpfs 8165516 4 8165512 1% /dev
tmpfs 8172456 92 8172364 1% /dev/shm
tmpfs 8172456 2272 8170184 1% /run
tmpfs 8172456 0 8172456 0% /sys/fs/cgroup
/dev/sda5 20978688 6735728 13435504 34% /.snapshots
/dev/sda5 20978688 6735728 13435504 34% /usr/local
/dev/sda5 20978688 6735728 13435504 34% /srv
/dev/sda5 20978688 6735728 13435504 34% /opt
/dev/sda5 20978688 6735728 13435504 34% /boot/grub2/x86_64-efi
/dev/sda5 20978688 6735728 13435504 34% /boot/grub2/i386-pc
/dev/sda1 98304 29763 68541 31% /boot/efi
/dev/sda7 20510716 6516980 12928780 34% /home
/dev/sda9 8123832 19528 7668592 1% /tmp
/dev/sda8 8122808 256472 7430676 4% /var
/dev/sda5 20978688 6735728 13435504 34% /var/tmp
/dev/sda5 20978688 6735728 13435504 34% /var/spool
/dev/sda10 688740348 30521160 658219188 5% /home/wsl/data
/dev/sda5 20978688 6735728 13435504 34% /var/opt
/dev/sda5 20978688 6735728 13435504 34% /var/log
/dev/sda5 20978688 6735728 13435504 34% /var/lib/pgsql
/dev/sda5 20978688 6735728 13435504 34% /var/lib/named
/dev/sda5 20978688 6735728 13435504 34% /var/crash
/dev/sda5 20978688 6735728 13435504 34% /var/lib/mailman
wsl@wsl-home:~> cat /etc/fstab
UUID=4d3e8ed7-ebcf-4b7f-b5d0-dc6c34d8cfaa swap swap defaults 0 0
UUID=75b8af56-c4bd-4067-b8d8-091cd244aed0 / btrfs defaults 0 0
UUID=75b8af56-c4bd-4067-b8d8-091cd244aed0 /boot/grub2/i386-pc btrfs subvol=boot/grub2 /i386-pc 0 0
UUID=75b8af56-c4bd-4067-b8d8-091cd244aed0 /boot/grub2/x86_64-efi btrfs subvol=boot/grub2 /x86_64-efi 0 0
UUID=75b8af56-c4bd-4067-b8d8-091cd244aed0 /opt btrfs subvol=opt 0 0
UUID=75b8af56-c4bd-4067-b8d8-091cd244aed0 /srv btrfs subvol=srv 0 0
UUID=55fc7bae-856b-42f1-87de-f8e0f96017c6 /tmp ext4 acl,user_xattr 1 2
UUID=75b8af56-c4bd-4067-b8d8-091cd244aed0 /usr/local btrfs subvol=usr/local 0 0
UUID=c40639b5-7e55-4194-a1c4-7ec7a88046bf /var ext4 acl,user_xattr 1 2
UUID=75b8af56-c4bd-4067-b8d8-091cd244aed0 /var/crash btrfs subvol=var/crash 0 0
UUID=75b8af56-c4bd-4067-b8d8-091cd244aed0 /var/lib/mailman btrfs subvol=var/lib/mailman 0 0
UUID=75b8af56-c4bd-4067-b8d8-091cd244aed0 /var/lib/named btrfs subvol=var/lib/named 0 0
UUID=75b8af56-c4bd-4067-b8d8-091cd244aed0 /var/lib/pgsql btrfs subvol=var/lib/pgsql 0 0
UUID=75b8af56-c4bd-4067-b8d8-091cd244aed0 /var/log btrfs subvol=var/log 0 0
UUID=75b8af56-c4bd-4067-b8d8-091cd244aed0 /var/opt btrfs subvol=var/opt 0 0
UUID=75b8af56-c4bd-4067-b8d8-091cd244aed0 /var/spool btrfs subvol=var/spool 0 0
UUID=75b8af56-c4bd-4067-b8d8-091cd244aed0 /var/tmp btrfs subvol=var/tmp 0 0
UUID=525E-0482 /boot/efi vfat umask=0002,utf8=true 0 0
UUID=9efb5733-8a11-4cf2-83c9-3a72548f3748 /home ext4 acl,user_xattr 1 2
UUID=75b8af56-c4bd-4067-b8d8-091cd244aed0 /.snapshots btrfs subvol=.snapshots 0 0
UUID=27E244980138EAC9 /home/wsl/data ntfs-3g uid=1000,gid=100,umask=0026 0 0
现在我需要将 /var 中的所有这些目录移动到 sda8。另外我想知道是什么原因造成的?!我肯定没有在安装 Opensuse 时创建所有这些挂载点!
谢谢。
答案1
看起来 openSUSE 安装程序将 /var 下的一堆目录放在了 btrfs 子卷上。我不知道如何在安装程序中禁用此行为。但是,对于此已安装的系统,如果您需要删除子卷,您可以启动到救援模式,挂载 /var 并挂载子卷,然后对于挂载在挂载点 i 的每个子卷,mkdir i.tmp,将所有内容从 i/ 移动到 i.tmp/,umount i,rm i,mv i.tmp 到 i,最后在 fstab 中注释掉 i 的行。
请注意,您可能试图通过将 /var 树隔离到单独的文件系统来完成这项任务,而这项任务显然已经通过使用 btrfs 子卷为您完成了。
如果您想了解有关 btrfs 的更多信息,请观看有关在 btrfs 上安装 Arch Linux 的视频教程: