Alterou acidentalmente o proprietário de / bin e outros diretórios

3

Eu recentemente fiz algo muito, muito estúpido. Em vez de digitar: chown adam ./* eu escrevi: chown adam /* (eu esqueci o ponto muito importante). Agora eu tenho alguns arquivos com o dono adam ao invés de ... hmm eu realmente não sei quem. Eu não posso nem mesmo chamar su e logar como root porque eu recebo: su: cannot set groups: Operation not permitted . Eu sou capaz apenas de executar o meu CD do Arch Linux, executá-lo no modo EFI, fazer login como root e chamar arch-chroot /mnt , onde sob/mnt minha partição principal do Linux está montada. A situação é ruim, mas não terrível. Existe alguma maneira de restaurar meu sistema?

    
por Yob 30.08.2012 / 18:13

1 resposta

5

Eu começaria com sudo chown -R root /bin /sbin /lib /usr /sys /boot /etc /dev de dentro do chroot - Isso deveria te dar um sistema inicializável, mas eu não tenho 100% de certeza. Pode querer esperar que alguém confirme que isso não piorará a situação.

Note, se você simplesmente colocou os arquivos, você está em uma posição muito melhor do que alguém que chmod'd ou chgrp'd seu sistema. A maioria dos arquivos em um sistema de usuário único (por exemplo, usado apenas por você) pertence a você (em / home / username) ou é de propriedade de root. Pode haver alguns arquivos estranhos em /var e há definitivamente alguns em /run e /tmp que são de propriedade dos serviços que os criaram. Tente sudo chown root /var /run /tmp (note a falta de -R ) para esses diretórios.

Você provavelmente desejará eliminar o conteúdo /run e /tmp ( sudo rm -rf /run/* /tmp/* - Tenha muito cuidado para que isso seja digitado corretamente), pois eles são transitórios e reconstruídos pelos aplicativos quando o sistema é reiniciado e isso é muito mais fácil do que tentar rastrear os proprietários e consertar isso.

/var vai ser uma bagunça complicada. Muitos daemons esperam poder gravar lá (mysql, apache, etc.) e ter pastas aninhadas dentro delas. É seguro recuperar o conteúdo de nível superior ( sudo chown root /var/* ), mas as coisas nas pastas precisam ser restauradas com cuidado. Você pode procurar nas pastas /var do live-cd por algumas dicas.

    
por 30.08.2012 / 18:51