我有一个带 LVM2 层的 Debian Jessie 系统。由于错误,我安装了带有许多分区(root、usr、home、var 等)的系统。现在,我的磁盘空间不足,无法用于usr
分区var
,即使分区中有足够的空间home
。
我决定更改磁盘布局。首先,我将所有文件(、、、...)复制到bin
分区中。我创建了一个符号链接以显示在分区中。所以,我想如果我可以将分区挂载为分区,那么一切都应该会正常工作。usr
var
home
home -> .
home
home
/
我曾经是fstab
这样的:
/dev/mapper/cca--erik--vg-root / ext4 errors=remount-ro 0 1
# /boot was on /dev/sda1 during installation
UUID=49819ee7-f63b-4eb9-b83e-6e2cf868df62 /boot ext2 defaults 0 2
/dev/mapper/cca--erik--vg-home /home ext4 defaults 0 2
/dev/mapper/cca--erik--vg-tmp /tmp ext4 defaults 0 2
/dev/mapper/cca--erik--vg-usr /usr ext4 defaults 0 2
/dev/mapper/cca--erik--vg-var /var ext4 defaults 0 2
#/home/var /var none bind
/dev/mapper/cca--erik--vg-swap_1 none swap sw 0 0
/dev/sr0 /media/cdrom0 udf,iso9660 user,noauto 0 0
我把它改成这样:
/dev/mapper/cca--erik--vg-home / ext4 errors=remount-ro 0 1
/dev/mapper/cca--erik--vg-swap_1 none swap sw 0 0
/dev/sr0 /media/cdrom0 udf,iso9660 user,noauto 0 0
同样地,我把grub
条目从:
linux /vmlinuz-3.13-1-amd64 root=/dev/mapper/cca--erik--vg-root ro quiet ipv6.disable=1
到:
linux /boot/vmlinuz-3.13-1-amd64 root=/dev/mapper/cca--erik--vg-home ro quiet ipv6.disable=1
但没有成功。initrd 仍然坚持/dev/mapper/cca--erik--vg-root
以 形式挂载/
。这是为什么?
答案1
我终于弄清楚了我所犯的一系列错误。
首先,这是我最后达到的状态:
ceremcem@cca-erik:ceremcem$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/cca--erik--vg-home 876G 817G 15G 99% /
udev 10M 0 10M 0% /dev
tmpfs 790M 788K 789M 1% /run
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 4.7G 108K 4.7G 1% /run/shm
none 4.0K 0 4.0K 0% /sys/fs/cgroup
ceremcem@cca-erik:ceremcem$ ls /
bin dev lib media owncloud srv var
boot etc lib32 mnt proc sys vmlinuz
guest lib64 nginx-body root tmp
ceremcem home libx32 nginx-root run tmp-backup
debian-root initrd.img lost+found opt sbin usr
ceremcem@cca-erik:ceremcem$
是的,我/etc/fstab
之前编辑过该文件,但实际上我编辑的是 lvm 分区中的文件/dev/mapper/cca--erik--vg-root
。由于我通过启动参数告诉内核:“嘿,从现在开始你的根目录是/dev/mapper/cca--erik--vg-home
”,因此它将...-vg-home
lvm 分区挂载为/
,文件etc/fstab
保持不变。我只是编辑了该文件(/home/etc/fstab
),系统按预期启动。
(实际上存在内核恐慌的情况,但据我所知,我没有创建/home/dev
目录(甚至是一个空目录)。所以我创建了这个目录和其他所需的目录;系统启动了。)