Por favor, leia a minha resposta à sua pergunta anterior - como se recuperar da montagem / usr / nosuid - mover /usr
para uma partição montada não é apenas "uma má ideia", mas resultará em falhas silenciosas, a menos que você também modifique sua imagem initrd, pois espera-se que / usr esteja disponível durante a processo de inicialização antecipada antes que qualquer partição não-raiz seja montada.
Além disso, não há grandes problemas com a movimentação de /usr
- tudo o que você precisa fazer é
- copia arquivos de / usr para uma partição separada
- modificar o / etc / fstab
- issue
mount /dev/sdb1 /usr
(onde / dev / sdb é sua "partição separada")
É isso aí, você deveria estar usando o novo / usr agora. Note que os arquivos em sua partição root / usr não são removidos - isso pode exigir algum truque porque / usr inevitavelmente fica indisponível por um momento, mas todos os comandos necessários estão localizados em / bin, então parece que ele pode funcionar. Na verdade, eu tentei montar o / usr em uma partição separada em uma instância do VirtualBox descartável e funcionou bem:
mkdir /usr.new
mount /dev/sdb1 /usr.new
cp -rp /usr/* /usr.new/
umount /usr.new
nano /etc/fstab # added a line /dev/sdb1 /usr ext3 relatime,errors=remount-ro 0 0
mv /usr /usr.old
mkdir /usr
mount /usr
rm -rf /usr.old
sync # flush disk caches just in case it hangs up during the shutdown
reboot
E deveria ser isso!
Na minha caixa de teste, não encontrei problemas com as regras do usev com falha, mas, novamente, é uma instância do Virtualbox, YMMV.
ATUALIZAÇÃO: Eu estou achando que o sudo parou de funcionar nessa caixa, reclamando do suid bit não definido - isso foi causado por eu usar cp -r
ao invés de cp -rp
, como foi sugerido em os comentários