sudo: “uid eficaz não é 0, sudo é instalado root setuid?” em um Raspberry Pi

1

Eu tenho usado um Raspberry Pi por algumas semanas e coloquei muitas horas em configurar tudo para o meu projeto universitário.

Eu queria instalar o Samba e ter tudo como uma pasta de rede. Eu usou sudo chown -R pi:pi / .

Agora meu sudo está corrompido e imprime sudo: effective uid is not 0, is sudo installed setuid root? toda vez que eu o executo (por exemplo, sudo nano ).

Isso pode ser reparado? Por favor me ajude, então eu não tenho que reinstalar TUDO. Eu não consigo nem lembrar o que eu fiz nas últimas semanas ... então muito trabalho.

    
por user141671 04.11.2015 / 23:03

3 respostas

2

A execução de sudo chown -R pi:pi / basicamente quebrou a propriedade de todos os arquivos em seu sistema.

Infelizmente, a reinstalação é provavelmente a opção mais fácil no seu caso. Seria muito tedioso e propenso a erros tentar restaurar as propriedades apropriadas manualmente (usando um computador diferente, presumivelmente). Eu recomendo o armazenamento de imagens do seu Raspberry Pi antes de reinstalar, para que, após a reinstalação, você possa restaurar algumas das alterações feitas.

    
por 04.11.2015 / 23:08
0

O bit setuid em um arquivo executável significa que o arquivo em questão pode alterar seu UID efetivo para que seja do usuário proprietário em vez daquele do usuário que está chamando / executando.

Ao executar sudo chwon -R pi:pi / você fez sudo pertencer ao usuário pi (UID diferente de zero) e, portanto, quando sudo verificar se pode alterar seu UID efetivo para 0 ( root ), ele vê que não pode, porque não é mais de root .

Você pode tentar repará-lo executando chown root:root over sudo , mas pode dizer que você não tem permissão suficiente para fazer isso, então a reinstalação pode ser a única possibilidade.

    
por 04.11.2015 / 23:16
0

A abordagem mais fácil é encontrar e salvar todos os arquivos que foram modificados nas "últimas semanas", depois reinstalar e reaplicar as alterações.

  1. Inicialize um disco de recuperação.
  2. Encontre e salve "recentemente" arquivos alterados - cd /mnt/root && tar czvf /mnt/usb/tarball.tgz --newer-mtime='2015-10-01 00:00:00' . Verifique se /mnt/root é a raiz do seu sistema Pi e não a raiz do disco de recuperação, e que /mnt/usb está em algum lugar seguro, como um USB ficar
  3. Reinstalar
  4. Restaurar os arquivos que você salvou com cuidado - cd / && tar xzvf /root/tarball.tgz
  5. Reinicializar
por 04.11.2015 / 23:14