Quebrou meu arquivo / etc / sudoers no amazon EC2

7

Eu editei minha instância do Linux Amazon EC2 usando o vim / etc / sudoers e tentei adicionar outra conta à lista. Eu percebo agora que isso foi um erro terrível. Eu não consigo mais sudo de nenhuma conta (o que significa que não posso editar o arquivo novamente) e não tenho a senha da conta root. Há algo que eu possa fazer para corrigir isso?

Obrigado.

    
por Progger 26.05.2012 / 20:05

4 respostas

19

Espero que você esteja usando um volume raiz do EBS. Se assim for, a solução não é muito difícil.

Essencialmente, você anexa o volume do EBS a outra instância para fazer as alterações e o reconecta à instância original:

  • Pare (não termine) a instância original
  • Desanexe o volume do EBS
  • Iniciar outra instância
  • Anexe seu volume atual do EBS à nova instância
  • SSH na nova instância, monte o volume do EBS e faça as alterações necessárias
  • Desmonte o volume do EBS (por exemplo, umount -d /dev/xvdh ou umount -d /dev/sdh )
  • Separe o volume do EBS da nova instância e anexe-o como volume raiz (por exemplo, /dev/sda1 ) da instância anterior
  • Iniciar a instância antiga
  • Se tudo estiver funcionando, termine a nova instância

A razão pela qual isso funciona é que, na nova instância, você tem as permissões adequadas - seu volume raiz está intacto - o que torna o arquivo sudoers de sua instância original apenas outro arquivo que você pode editar.

Se você tiver um volume raiz de armazenamento de instância, provavelmente não conseguirá corrigir o problema e terá que reverter para uma AMI criada anteriormente como backup.

    
por 26.05.2012 / 21:26
2

Depende se é um dispositivo raiz da AMI ou do EBS.

Se é uma AMI e você não tem a senha de root, e a AMI não configura o acesso root SSH, então não há nada que você possa fazer.

Se for uma raiz do EBS, você poderá finalizá-lo e anexar o volume a uma instância diferente (como um disco adicional, não a raiz). Você pode acessar os dados ou corrigir o arquivo sudoers e iniciar uma nova instância usando o volume.

    
por 26.05.2012 / 21:24
0

mesmo que instance-store seja o volume raiz, você pode anexar esse volume raiz como um volume secundário em outra instância (como / dev / xvdh) e montá-lo em alguma pasta e fazer as alterações em sudoers.

    
por 11.06.2014 / 13:17
0

Aqui está o que eu fiz Para resolver este problema -

  1. Lançou uma mesma instância do Hardware Like (aquela que foi confusa).
  2. Pare a instância desarrumada.
  3. ssh a pasta completa do ubuntu (que tinha todos os arquivos necessários).
  4. Iniciamos o servidor de réplica e garantimos que tudo funcionasse bem (usamos Mongo, Mysql, Tomcat e Java).
  5. Depois de concluído, desanexei o IP elástico usado para a instância confusa e anexado à instância da réplica.

Voila Agora você tem uma nova instância em execução com a mesma configuração e IP.

Tempo decorrido de 30 minutos.

    
por 23.07.2014 / 12:26