Estou migrando meu sistema do btrfs para o ext4 depois de executar problemas de desempenho com as VMs. Eu tenho dois discos rígidos no meu laptop para trabalhar. Eu movi com sucesso minha partição home, mas as mesmas etapas que usei não estão funcionando para o root.
Progresso até agora:
Eu tenho dd
minha partição raiz de /dev/sda3
em /dev/sdb3
. Eu modifiquei /etc/fstab
para o seguinte:
$ 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
e execute sudo mkinitcpio -p linux
. Parece funcionar. Eu sou capaz de arrancar montando a partição no segundo disco. df
mostra:
$ df
Filesystem Size Used Avail Use% Mounted on
/dev/sdb3 28G 18G 9.8G 65% /
Então, claramente, sdb3
está montado, não sda3
. Aqui está o passo problemático: Quando eu tento formatar o sda3
, que é supostamente não usado, recebo o seguinte:
$ 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
está em uso. Como e por que poderia estar em uso?
De acordo com o comentário de casey, a saída de 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)
De acordo com o comentário de Warwick, desmontando:
$ sudo umount /dev/sda3
umount: /dev/sda3: not mounted
A montagem e o envio de sda3 em outros lugares funciona com sucesso, mas nada muda.
Atualização: mais comportamento suspeito:
$ 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)
Após a montagem de sda3, sdb3 não é mais mounter. Estranho, né?
Como por mikeserv:
$ rmmod btrfs
rmmod: ERROR: Module btrfs is in use
Isso é muito esperado, já que o sdb3 é btrfs e deve ser montado no root. Do meu arquivo mkinitcpio.conf:
MODULES=""
HOOKS="base udev autodetect modconf block filesystems keyboard fsck"