Alterei a propriedade /etc da minha conta agora desconectada do sudo?

Alterei a propriedade /etc da minha conta agora desconectada do sudo?

Eu estava trabalhando em algum SFTP via filezilla para permitir o download e reupload de algum arquivo que assumi como proprietário via ROOT e chown -R 'myusername' /etc e chmod 777 minha conta de usuário para -R /etc

Agora o tempo limite expirou e tentei fazer login no root novamente e isso me deu um erro sudo: /etc/sudoers é de propriedade do uid 1000, deveria ser 0 sudo: nenhuma fonte válida de sudoers encontrada, saindo do sudo: incapaz de inicializar o plugin de política que eu tenho acesso ao /etc e 777 em todos os arquivos e também pode acessá-los via FTP, então sugira como restaurar o acesso à conta root. Além disso, o root não tem senha no momento, então não posso executar os comandos gerais pkexec ou visudo.

Por favor, sugira uma solução e também se existe uma maneira de redefinir manualmente os arquivos /etc/shadow ou passwd.

Acho que é um pouco diferente da duplicata indicada porque também alterei as permissões dos arquivos. Além disso, se eu executar chown root:root /etc/ isso me dará chown root:root /etc chown: alterando a propriedade de '/etc': Operação não permitida

Obrigado!

Responder1

Provavelmente, a maneira mais fácil de corrigir isso exigirá uma reinicialização. Aqui estão duas soluções que vêm à mente:

  1. Inicialize o ubuntu livecd e monte o dispositivo que possui o arquivo /etc. Então faça um chown -R root:root /path/to/etc.

  2. Se você não tiver um livecd ou uma maneira de inicializar o livecd, tente isto. Reinicie o computador. Quando você chegar ao prompt do grub, edite a entrada de inicialização na linha com o linuxcomando para anexar break=bottom(isso pode exigir que você mantenha pressionada a <shift>tecla durante a inicialização). Em seguida, pressione a <F10>tecla para inicializar a entrada de inicialização modificada. Isso lhe dará um shell root no initrd onde o rootfs and /devestá montado. Em seguida, faça /bin/chroot /rootchroot no rootfs. Se /etcnão estiver no rootfs, monte o dispositivo em digamos /tmp. Então você pode fazer chown -R root:root /path/to/etc. Se você montou /etc, certifique-se de desmontá-lo quando terminar e, em seguida, saia do chroot e do shell initrd para continuar inicializando normalmente. Seus /etcarquivos devem ter permissão de root.

informação relacionada