Como @Leiaz apontou muito corretamente nos comentários, /sbin no Arch (e por extensão, Manjaro) agora é um link simbólico para /usr/bin . Isso significa que, a menos que /usr esteja montado, /usr/sbin/init não existirá. Portanto, você precisa certificar-se de que /usr seja montado pelo ramdisk inicial. Isso é o que a citação do wiki do Arch no seu OP significa:
If you keep /usr as a separate partition, you must adhere to the following requirements:
Enable mkinitcpio-generate-shutdown-ramfs.service or add the shutdown hook.
Add the fsck hook, mark /usr with a passno of 0 in /etc/fstab. While recommended for everyone, it is mandatory if you want your /usr partition to be fsck'ed at boot-up. Without this hook, /usr will never be fsck'd.
Add the usr hook. This will mount the /usr partition after root is mounted. Prior to 0.9.0, mounting of /usr would be automatic if it was found in the real root's /etc/fstab.
Então, você precisa gerar um novo arquivo init com os ganchos direitos 1 . Estes são adicionados alterando a linha HOOKS="" em /etc/mkinitcpio.conf . Então
-
Inicialize no Mint e monte o diretório Manjaro
/:mkdir manjaro_root && sudo mount /dev/sda11 manjaro_rootAgora, a raiz do Manjaro será montada em
~/manjaro_root. -
Edite o arquivo
mkinitcpio.confusando seu editor favorito (estou usandonanocomo exemplo, não mais):sudo nano ~/manjaro_root/etc/mkinitcpio.confEncontre a linha
HOOKSe verifique se ela contém os ganchos relevantesHOOKS="shutdown usr fsck"Importante ": não remova nenhum dos ganchos já presentes. Basta adicionar o acima aos que estão lá. Por exemplo, o resultado final pode parecer
HOOKS="base udev autodetect sata filesystems shutdown usr fsck" -
Marque
/usrcom um passno de 0 em/etc/fstab. Para fazer isso, abramanjaro_root/etc/fstabe encontre a linha/usr. Para este exemplo, assumirei que é/dev/sda12, mas use o que estiver em seu sistema. O número "pass" é o último campo de uma entrada/etc/fstab. Então, você precisa ter certeza de que a linha se parece com/dev/sda12 /usr ext4 rw,errors=remount-ro 0 0 ^ This is the important one -----| -
Crie a nova imagem de inicialização. Para fazer isso, você terá que montar também o diretório
/usrdo Manjaro.sudo mount /dev/sda12 ~/manjaro_root/usrEu não tenho muita experiência com o Arch, então isso pode não ser necessário (você pode executar
mkinitcpiosemchroot), mas para garantir, configure um ambientechroot:sudo mount --bind /dev ~/manjaro_root/dev && sudo mount --bind /dev/pts ~/manjaro_root/dev/pts && sudo mount --bind /proc ~/manjaro_root/proc && sudo mount --bind /sys ~/manjaro_root/sys && sudo chroot ~/manjaro_rootVocê agora estará em um ambiente chroot que pensa que
~/manjaro_root/é realmente/. Agora você pode ir em frente e gerar sua nova imagem de inicializaçãomkinitcpio -p linux -
Saia do
chrootexit -
Atualize seu
grub.cfg(novamente, isso pode não ser realmente necessário):sudo update-grub
Agora reinicie e tente iniciar o Manjaro novamente.
1 "Ganchos" são pequenos scripts que dizem ao mkinitcpio o que deve ser adicionado à imagem do init que ele gera.