Como faço para redefinir a propriedade de / usr / bin / sudo no Linux?

1

Eu acidentalmente mudei a propriedade de /usr/bin/sudo para o meu usuário atual (eu também fiz isso para algumas outras coisas no meu diretório /usr ). Eu não posso mudar nenhum deles de volta porque eu preciso da propriedade de /usr/bin/sudo para ser o root para fazer isso. Eu não tenho acesso root porque estou em uma instância do Amazon EC2 executando linux.

Aqui está o que eu fiz (tolamente eu sei):

sudo chown -R ec2-user.ec2-user /usr/

Eu também já inalei muitas outras coisas no processo, mas acho que tudo pode ser resolvido se eu puder redefinir a propriedade de /usr/bin/sudo

Por favor ajude. Eu sou novo no Linux e estou fazendo tudo da linha de comando.

Eu tenho meus dados importantes em um EBS separado, montado, mas sou péssimo com o administrador do servidor e provavelmente levarei um dia inteiro para configurar uma nova instância, mas temo que essa seja minha única opção.

    
por T. Brian Jones 13.07.2011 / 23:26

5 respostas

1

Após uma pesquisa exaustiva, não consegui encontrar uma maneira de resolver isso e tive que recriar o servidor.

    
por 09.08.2011 / 17:49
1

(repetindo minha resposta SE)

Você está executando em um volume do EBS? Você pode cancelar a instância por alguns minutos?

Se fizer isso, você poderá parar temporariamente a instância atual, iniciar outra instância, montar o volume EBS da primeira instância e corrigir suas permissões, desmontá-lo e reiniciar a primeira instância.

    
por 13.07.2011 / 23:30
1

Se você possui scripts que são executados via cron como root e você ainda pode editá-los, adicione o seguinte.

# chown root.root /usr/bin/sudo
# chmod u+s /usr/bin/sudo

Caso contrário, quando você descobrir como obter root na caixa, você precisa fazer esses comandos.

    
por 13.07.2011 / 23:49
1

(reescrevendo isso já que aparentemente não foi entendido por algumas pessoas)

Os kernels do Linux anunciam _POSIX_CHOWN_RESTRICTED como true, o que significa que apenas root pode usar chown() . Se fosse definido como falso, isso significaria que existe uma maneira de os usuários comuns alterarem a propriedade de seus arquivos.

chown(3) tem texto que sugere que é possível alterar _POSIX_CHOWN_RESTRICTED no nível do kernel; No entanto, o Linux não permite que ele seja alterado, portanto, simplesmente não há maneira de não root to chown de seus próprios arquivos.

    
por 14.07.2011 / 00:43
0

Reinicialize seu computador e mantenha pressionada a tecla F8 após o splash do BIOS para abrir o menu de inicialização do GRUB. Se você usa uma das distribuições populares do Linux (algo como o Ubuntu), deve haver uma opção para iniciar o Linux no modo de recuperação (a opção pode ser encontrada em um submenu 'Opções avançadas' se você usar o GRUB 2). Inicie o linux no modo de recuperação, e (se você usar uma distro popular) você deve eventualmente receber um pequeno menu de opções de recuperação. Primeiro, selecione a opção de recuperação do fsck para remontar / no modo de leitura e gravação e monte todos os outros sistemas de arquivos no fstab. Em seguida, selecione a opção que lhe dará um prompt root. Como o shell está logado como root, todos os comandos serão executados como root sem precisar do comando sudo. Você pode usar isso para reparar as permissões em / usr / bin / sudo:

chown root:root /usr/bin/sudo
chmod u+s /usr/bin/sudo
exit

Depois de fazer isso, você pode selecionar a opção 'retomar a inicialização normal' (ou apenas reiniciar o computador se não tiver um) e efetuar login normalmente e usar o comando sudo para reparar o restante de suas permissões . Para fazer isso, você geralmente precisa copiar as permissões de outro computador que tenha permissões "próximas o suficiente". Eu corri para este problema com meu desktop quando eu manualmente instalei um compilador cruzado que acabei de criar usando o rsync com o sinalizador -a. Depois que eu percebi que eu queria que os arquivos do cross-compiler fossem chown'ed para root e não para mim, eu estupidamente executei chown -R root: root / usr e nuked minhas permissões por acidente. Felizmente, eu tinha um laptop da mesma distro e tinha quase o mesmo conjunto de pacotes instalados. Copiei as permissões dele e resolvi meus problemas de permissão em menos de uma hora.

    
por 02.04.2013 / 07:55