Se você inicializar na recuperação e receber um menu no qual possa ativar a rede (essa opção monta o sistema de arquivos com permissão de leitura de gravação), ative a rede e escolha a opção insira um shell de root e pule para etapa 3 - você pode omitir sudo
nos comandos nesse caso. Se você inicializar na recuperação e não conseguir essa opção, ela não funcionará porque você precisa usar sudo
para remontar como leitura-gravação e não pode usar sudo
, então, nesse caso:
Se você não tem a rede & amp; opção de recuperação do shell de root, então inicialize em uma sessão ao vivo (pegue esse amigo para fazer um USB ao vivo se você não tiver um) e monte sua instalação:
-
Encontre a partição raiz com sudo fdisk -l
. Será o maior caso você não tenha dual boot e provavelmente tenha um sistema de arquivos ext4.
-
Monte a partição usando o nome real da sua partição raiz em vez de /dev/sdxY
e cd
para o ponto de montagem:
sudo mount /dev/sdxY /mnt
cd /mnt
-
Verifique as permissões atuais
ls -ld /usr
-
Altere o proprietário de volta para a raiz, se não for raiz:
sudo chown root:root /usr
Verifique se o seu amigo usou -R
fazendo ls -ld /usr/bin
e se ele diz que root é o proprietário, não faça mais nada e vá para a próxima etapa. Se seu amigo usou -R
, você deve usar sudo chown -R root:root /usr
para corrigi-lo aqui. root deve ser o proprietário de tudo em /usr
exceto /usr/bin/at
, que deve pertencer a daemon
, então se você usou chown -R root:root /usr
, em seguida, faça chown daemon:daemon /usr/bin/at
(verifiquei isso usando o achado inteligente comando de esta resposta ... se você tiver /usr/sbin/uuidd
que também deve ser chown
ed: chown libuuid /usr/sbin/uuidd
-
altere as permissões ( NÃO USANDO -R )
sudo chmod 755 /usr
Novamente, por favor não use o -R
flag
-
a. Supondo que você não usou o sinal -R
em primeiro lugar, você o corrigiu agora. Se fez usar o sinalizador -R
, talvez seja É mais fácil fazer o backup de seu /home
material com segurança e reinstalar, mas por enquanto corrija o sudo
que precisa do bit setuid (octal 4):
sudo chmod 4755 /usr/bin/sudo
-
Se estiver executando uma sessão ao vivo, cd
out e desmonte a partição:
cd /
sudo umount /dev/sdxY
e reinicie novamente no seu sistema. Agora você tem sudo
, e chmod
está em /bin
, então você pode usar sudo chmod
para consertar as permissões quebradas em qualquer coisa que você precisar em / usr para o que você quiser fazer a seguir, mas tenha certeza de que você está fazendo (leia algumas coisas, por exemplo este e this ) ao usar chmod
(leia e evite usar o -R
flag - se você limpar o bit setuid de sudo
você vai quebrá-lo novamente.