sudo: /usr/lib/sudo/sudoers.so deve ser propriedade de uid 0

9

Sempre que tento fazer qualquer coisa que exija minha senha, ela retorna:

u7ur7l3@ubuntu:~$ sudo
sudo: /usr/lib/sudo/sudoers.so must be owned by uid 0
sudo: fatal error, unable to load plugins
u7ur7l3@ubuntu:~$

Portanto, não posso instalar nada do Centro de Software / gerenciador de pacotes ou executar qualquer comando no terminal que exija minha senha. Eu consigo logar, mas é bem isso.

Eu acidentalmente mudei as permissões de alguns arquivos, então mudei um pouco mais para tentar corrigi-lo: /. Agora estou completamente perdido quanto ao que fazer.

Foi o que aconteceu quando tentei fazer com que o sudo funcionasse novamente usando o pkexec:

u7ur7l3@ubuntu:~$ pkexec chown root /usr/lib/sudo/sudoers.so
Error getting authority: Error initializing authority: Error calling StartServiceByName for org.freedesktop.PolicyKit1: GDBus.Error:org.freedesktop.DBus.Error.Spawn.ExecFailed: Failed to execute program /usr/lib/dbus-1.0/dbus-daemon-launch-helper: Success 

u7ur7l3@ubuntu:~$ sudo ls
sudo: /usr/lib/sudo/sudoers.so must be owned by uid 0 sudo: fatal error, unable to load plugins

E para alterar as permissões, eu estava usando as Ações Raiz como uma coisa de serviço / plug-in de golfinhos, portanto, o histórico não mostra as alterações de permissão.

Acabei de perceber que os sons não funcionam mais. Quando entro no Phonon, minhas configurações padrão e os dispositivos de reprodução nem estão lá. Também não tenho a opção de desligar, só posso sair ou sair.

    
por 7UR7L3 02.04.2013 / 06:33

1 resposta

17

Propriedade de pelo menos um dos seus arquivos de sistema importantes está errado. Isso é uma coisa ruim; Se isso aconteceu com muitos arquivos do sistema (talvez você executou um grande comando sudo chown com o sinalizador -R em algum momento?), isso poderia causar vários outros erros e instabilidades do sistema. Então, se você instalou recentemente o Ubuntu, você pode querer reinstalar como sugere Adam Heathcote. . Adam Heathcote sugere . p>

Mas você não precisa reinstalar para corrigir esse problema . Em vez disso, basta corrigir a propriedade desse arquivo. Se você obtiver erros sobre outros arquivos depois disso, poderá corrigi-los também (embora você possa ter que nos dizer quais são as mensagens de erro, para que possamos dizer como corrigi-los também).

sudo não funciona, mas using sudo é uma de duas maneiras para administradores para executar ações como root no Ubuntu. O outro é Polkit (que costumava ser chamado de PolicyKit).

Execute este comando, que usa o Polkit (via pkexec ) para alterar a propriedade de /usr/lib/sudo/sudoers.so de volta para root (ou seja, uid 0):

pkexec chown root /usr/lib/sudo/sudoers.so

Em seguida, tente usar sudo novamente. Você pode executar algo trivial como sudo ls e ver se recebe uma mensagem de erro.

Por fim, recomendo executar history para revelar todos os comandos que você executou. Espero que liste todos os comandos que você executou que alteraram as permissões. Supondo que sudo funcione agora, recomendo postar uma nova pergunta incluindo a saída de history , para obter ajuda para desfazer todas as alterações de propriedade e permissões de arquivos que você fez.

Se pkexec não funcionar ...

Você tentou pkexec e não funcionou. Como nem o sudo nem o Polkit estão trabalhando para permitir que você execute ações como root, você terá que inicializar no modo de recuperação e obter um shell de root. Para fazer isso, pressione Shift enquanto estiver inicializando o seu computador, para garantir que você tenha um menu de inicialização visível do GRUB. Selecione uma entrada que contenha as palavras modo de recuperação (geralmente, você deve selecionar o mais próximo do topo que tenha essas palavras). Então você vai ter um menu onde você tem um número de opções - selecione a opção para ir para um shell de root.

Instruções detalhadas sobre como acessar um shell de root no modo de recuperação estão aqui:

Depois de ter um shell de root, execute:

chown root /usr/lib/sudo/sudoers.so

Se você receber um erro sobre o arquivo ou sistema de arquivos não ser modificável, remonte-o readwrite:

mount -rw -o remount /

(Fonte para a ideia de remontar e como fazê-lo: esta resposta não relacionada entre si .)

Em seguida, depois de executar o comando mount , execute o comando chown acima novamente e veja se funciona.

Quando terminar no modo de recuperação, você poderá reinicializar executando:

reboot

sudo deve então funcionar, ou pelo menos dar algum outro outro erro.

Por fim, lembre-se de que, dados os erros que você mostrou, é provável que muitos arquivos tenham a propriedade ou as permissões incorretas. Seria ideal se você pudesse descobrir quais arquivos você modificou dessa maneira. Por exemplo, se você pudesse descobrir que eram todos os arquivos em algumas pastas específicas, talvez seja possível corrigir a extensão completa dos problemas recentes que você teve.

A reinstalação é definitivamente uma opção, mas especialmente se tudo que você alterou foi propriedade (e não permissões, que são um pouco mais difíceis de reconstruir, pois variam mais), deve ser possível simplesmente definir as permissões recursivamente de volta para seus donos originais (provavelmente geralmente root) e reverter o dano totalmente.

Obter sudo funcionando novamente é o primeiro passo. Espero que a técnica acima permita que você faça isso.

    
por Eliah Kagan 02.04.2013 / 06:55