VM의 성능 문제가 발생한 후 시스템을 btrfs에서 ext4로 마이그레이션했습니다. 랩톱에 사용할 두 개의 하드 드라이브가 있습니다. 홈 파티션을 성공적으로 옮겼지만 사용한 것과 동일한 단계가 루트에서 작동하지 않습니다.
지금까지 진행 :
나는 한 dd
'에서 내 루트 파티션을 거라고 /dev/sda3
로 /dev/sdb3
. 나는 /etc/fstab
다음과 같이 수정 했다.
$ cat /etc/fstab
#
# /etc/fstab: static file system information
#
# <file system> <dir> <type> <options> <dump> <pass>
# UUID=95f13c34-96ca-49e3-bcb2-ff594df31506
/dev/sdb3 / btrfs rw,noatime,ssd,space_cache,discard 0 0
# UUID=0fe04f59-599f-41e2-ac30-2ad0f17a9727
/dev/sda2 /boot ext2 rw,relatime 0 2
# UUID=44741e0f-924a-4841-80ef-2132bef84182
/dev/sda4 /home ext4 rw,noatime,discard 0 0
실행합니다 sudo mkinitcpio -p linux
. 작동하는 것 같습니다. 두 번째 디스크에 파티션을 마운트하여 부팅 할 수 있습니다. df
보여줍니다 :
$ df
Filesystem Size Used Avail Use% Mounted on
/dev/sdb3 28G 18G 9.8G 65% /
따라서 분명히 sdb3
그렇지 않습니다 sda3
. 문제가있는 단계 sda3
는 다음과 같습니다. 형식을 사용하려고 할 때 사용하지 않는 것으로 가정하면 다음과 같은 결과가 나타납니다.
$ sudo mkfs.ext4 /dev/sda3
[sudo] password for stew:
mke2fs 1.42.11 (09-Jul-2014)
/dev/sda3 contains a btrfs file system
Proceed anyway? (y,n) y
/dev/sda3 is apparently in use by the system; will not make a filesystem here!
sda3
사용 중입니다. 어떻게 그리고 왜 사용할 수 있습니까?
casey의 의견에 따라 mount 출력은 다음과 같습니다.
mount | grep sd
/dev/sdb3 on / type btrfs (rw,noatime,ssd,discard,space_cache)
/dev/sda4 on /home type ext4 (rw,noatime,discard,data=ordered)
/dev/sda2 on /boot type ext2 (rw,relatime)
Warwick의 의견에 따라 마운트 해제 :
$ sudo umount /dev/sda3
umount: /dev/sda3: not mounted
다른 곳에서 sda3를 마운트 및 마운트 해제하면 성공적으로 작동하지만 아무것도 변경되지 않습니다.
업데이트 : 더 비린내 행동 :
$ mount | grep sd
/dev/sdb3 on / type btrfs (rw,noatime,ssd,discard,space_cache)
/dev/sda4 on /home type ext4 (rw,noatime,discard,data=ordered)
/dev/sda2 on /boot type ext2 (rw,relatime)
$ sudo mount /dev/sda3 mnt
[sudo] password for stew:
$ mount | grep sd
/dev/sda3 on / type btrfs (rw,noatime,ssd,discard,space_cache)
/dev/sda4 on /home type ext4 (rw,noatime,discard,data=ordered)
/dev/sda2 on /boot type ext2 (rw,relatime)
/dev/sda3 on /home/stew/mnt type btrfs (rw,relatime,ssd,discard,space_cache)
sda3을 마운트 한 후 sdb3은 더 이상 마운터가 아닙니다. 이상해?
mikeserv에 따라 :
$ rmmod btrfs
rmmod: ERROR: Module btrfs is in use
sdb3가 btrfs이고 root에 마운트되기 때문에 이것은 매우 기대됩니다. 내 mkinitcpio.conf 파일에서 :
MODULES=""
HOOKS="base udev autodetect modconf block filesystems keyboard fsck"
wipefs
수퍼 블록을 제거하기 위해 디스크 또는 디스크에 블랙리스트를 올릴 수 rmmod
있습니다 ... .... 많은 방법이 있지만 모듈을로드하거나 언로드하지 않는 것이 좋습니다.