Qual é o significado da permissão de '/ etc'?

5

Tentando replicar o problema descrito em " /etc/profile permission denied! " onde OP da postagem em seus comentários menciona a sequência de permissão para o diretório /etc sendo drw-r--r-- . Eu emiti sudo chmod 644 /etc e sim que replicou o problema. Então, no ambiente ao vivo, corrigi a permissão de volta para 755 . (Pensei que isso não causaria nenhum dano, eu estava apenas alterando as permissões!) Com /etc permissão revertida de volta ao original, os problemas de login e outros como não ser capaz de sudo foram corrigidos, mas estou enfrentando muitos problemas na GUI. Unity não carrega, nenhum Launcher, nenhum Dash aparece! ajudou até certo ponto, mas outros problemas ainda persistem.

A pergunta:

Qual é a razão por trás disso? Eu apenas alterei o bit de execução da permissão de /etc ! Por que isso teve um efeito significativo na Unidade?

    
por precise 20.03.2014 / 15:24

1 resposta

3

Certo, tentei isso (em uma VM : -) ) e obtive o mesmo comportamento que você descreve. Alterei as permissões em /etc e reinicializei e desde que configurei meu sistema para efetuar login automaticamente , ele tentou me conectar diretamente e falhou.

Eu não sei o suficiente sobre os componentes internos da Unity para entender os detalhes, mas meu palpite é que, quando você tentou fazer login, como o sistema não tinha acesso a /etc , ele não conseguia ler todos os tipos de arquivos essenciais como /etc/passwd ou /etc/group ou qualquer coisa para mapear seu nome de usuário para o UID e o GID apropriados. Portanto, após a tentativa de login, os detalhes do arquivo foram de alguma forma confundidos.

Meu palpite , e enfatizo que estou supondo, é que foram feitas alterações nas configurações de gconf , que então foram parafusadas com o Unity.

Eu consertei isso na minha VM simplesmente excluindo todos os arquivos do meu $HOME , removendo meu usuário e o recriando. Obviamente, isso não é uma solução no sistema que você realmente usa.

A única solução que consigo pensar é mover / renomear todos os arquivos e diretórios de configuração:

mkdir old_dotfiles
for file in .*; do mv "$file" old_dotfiles; done

Isso moverá todos os seus arquivos e diretórios de configuração para ~/old_dotfiles . Você pode então fazer logout e login novamente ou reiniciar e as coisas devem voltar ao normal, embora você tenha perdido suas configurações. Você pode então tentar copiá-los novamente. Se isso for apenas um problema de propriedade de arquivo, copiá-lo de volta deve redefinir a propriedade e corrigir seu problema. Se a alteração foi feita dentro de um dos arquivos conf, isso irá quebrar seu sistema novamente, então continue com cautela.

Tenha em mente que a maioria dos arquivos de configuração será criada automaticamente, portanto, você só precisa se preocupar com casos em que fez alterações nos padrões. Além disso, você deve se certificar de que as pastas "system" da sua GUI, como ~/Desktop , estejam configuradas corretamente.

Meu palpite é que isso deve ser suficiente para retornar a um sistema em funcionamento, com um novo amor pelas máquinas virtuais.

    
por terdon 20.03.2014 / 18:21