Resolvido: su, sudo, kdesu e gksu não funcionam

Publicado por Francisco Raimundo da Silva em 13/03/2008

[ Hits: 17.459 ]

Blog: http://www.facebook.com/profile.php?id=100003055572272

 


Resolvido: su, sudo, kdesu e gksu não funcionam



Algum de vocês já passou por este problema, logo após a (re)instalação de sua distro, reaproveitando uma pasta home antiga e na hora de usar os poderes de superusuário o su, kdesu ou mesmo gksu não funcionam alegando falha de login ou a seguinte mensagem com o sudo:

sudo: must be setuid root

Isto acontece porque há um problema de permissões erradas na sua pasta de usuário, ou mesmo na partição, caso você tenha usado um comando chmod recursivo (chmod -R permissões caminho) com as permissões erradas. Você consegue logar na sua sessão, mas não consegue usar o su, o sudo.... Mas você pode iniciar uma sessão como root. Muita gente tem tido problemas com isso, e as soluções que aparecem na web funcionam em algumas distros e em outras não, ou em casos específicos, os quais não são objetivo desta dica. Bom, chega de conversa e vamos a resolução do problema.

Em primeiro lugar, o owner (dono) e o group (grupo) de sua pasta de usuário devem ser os mesmos, ou seja, seu grupo principal deve ser um grupo de nome igual ao seu login ou então deve possuir o mesmo número que seu uid (user id), que na maioria das distros é 500. Inicie uma sessão como root, pelo kdm ou gdm. Caso ao criar o seu usuário padrão não tenha sido criado um grupo com seu mesmo login e uid (você pode verificar no kuser por exemplo), crie o grupo com o comando:

# groupadd fulano

E então edite como root o arquivo /etc/passwd e deixe a linha que contém seu user assim:

fulano:x:500:500:Fulano da Silva:/home/fulano:/bin/bash

O primeiro "500" é seu uid e o segundo é seu gid (group id). Agora adicione seu usuário a este grupo com o comando:

# gpasswd -a fulano fulano

Depois disto, agora é só setar as permissões corretamente. Como root use o comando

# chown -R fulano:fulano /home/fulano

Este comando faz com que seu usuário e seu grupo principal tenham acesso à sua home. Você deve logo em seguida decidir como vai ser o acesso a sua home tanto pelo seu grupo, como para outros. Use como usuário normal

$ chmod -R 755 /home/fulano

para que você tenha todas as permissões e apenas leitura e execução para seu grupo e outros. Para isso, estando você logado em uma sessão como root, dê o comando # su fulano, e você estará logado como usuário normal para fazer este passo. Depois dê um exit e você será root novamente.

Agora vem a parte que todo mundo acha no Google, mas que sozinha não resolve o problema:

# chmod 4111 /usr/bin/sudo

Este último comando faz com que o sudo seja executado com setuid root. Após terminar, faça o login como usuário normal e veja que o sudo, su, kdesu ou gksu estarão funcionando normalmente e que você não verá mais a mensagem: "sudo: must be setuid root"

Outras dicas deste autor

Conhecendo e usando o debdelta

Lendo manpages no Firefox

Aplicativos no KDE/Plasma sem bordas a hora que você quiser

Gerenciadores de download para o Apt-fast

Xorg não funciona mesmo com input-hotplug configurado

Leitura recomendada

Removendo Kernel Antigo do Fedora Linux

Como resolver o problema das teclas Alt+F2 e Ctrl+Alt+F2 no Sabayon Linux 4

Fazendo o Slackware desligar seu gabinete ATX

Adicionando repositórios para o Fedora Core 5 e 6

Fedora 12 e Vmplayer 3.0

  

Comentários
[1] Comentário enviado por p@1980 em 02/01/2011 - 01:40h

desculpa, sou novo!!

Estou passando exatamente por isso, depois que mexi na permissão da pasta USR, para copiar um arquivo na pasta do AMSN.

usei o seguinte comando:

chown -hR meuusuario // usr

e ai ferrou tudo.

mas meu amigo, não entendi essa parte, podeira me ajudar??

"E então edite como root o arquivo /etc/passwd e deixe a linha que contém seu user assim:

fulano:x:500:500:Fulano da Silva:/home/fulano:/bin/bash"

abraço

[2] Comentário enviado por chimico em 07/01/2011 - 16:33h

Olá p@1980, desculpe a demora, vamos as suas dúvidas:

Primeiro, nunca, em hipótese alguma mude as permissões das pastas do sistema como /bin, /usr/bin, /usr/local/bin,/sbin,/usr/local/sbin, /usr/sbin,/etc,/dev,/tmp,/var. O bom funcionamento do sistema depende das permissões corretas(originais) destas pastas.

Com o seu comando voce alterou recursivamente, ou seja, subpasta por subpasta, arquivo por arquivo, tudo que estava dentro de /usr.
O comando "chown -R" só deve ser usado na sua pasta de usuário, no caso do artigo. Para setar as permissões originais será
muito trabalhoso, é mais fácil reinstalar o sistema.
Da próxima vez que for copiar um arquivo para uma das pastas do sistema use:
sudo cp -fv arquivo /pasta
ou no caso de uma pasta use:
sudo cp -rfv suapasta /pasta

Para editar como root o arquivo /etc/passwd use:
sudo gedit /etc/passwd
(você usa Ubuntu e provavelmente o Gnome)
ou sudo kedit /etc/passwd
(caso use o KDE)
ou sudo mousepad /etc/passwd
(caso use o xfce)

Você é iniciante e gostaria de ensinar muitas coisas, mas recomendo que leia o Guia FocaLinux(eu lí a oito anos atrás qdo comecei)

Eis o link:
http://www.guiafoca.org/

Lá tem nível iniciante, intermediário e avançado, vai te ajudar muito com o uso do pinguim e você aprenderá muito

Espero que tenha ajudado

abraços



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts