Você primeiro tentou consertá-lo estava faltando apenas '{}'
, mas então você tornou as coisas muito piores ...
Quase não há um motivo para qualquer arquivo ter 777
permissões, e dificilmente há um bom caso de uso para o sinal -R
ao usar chmod
, porque precisamos que os diretórios sejam executáveis para entrar ou declará-los, mas raramente queremos que todos os arquivos sejam executáveis.
Primeiro, chown
do seu diretório inicial. Conectado como você mesmo, execute
sudo chown -R $USER: ~
Se você simplesmente executar algo como
chmod 600 ~
Em seguida, reverta:
chmod 755 ~
No entanto, se você executou algo realmente imprudente como ( não executar ) chmod -R 777 ~
, a correção das permissões será mais complicada.
find
é muito útil para isso. As permissões de diretório em sua casa variam e podem ser 700
, 775
, 755
ou 750
. Para errar do lado da cautela, eu faria isso:
find ~ -type d -exec chmod 700 '{}' +
Então, só você pode acessar os diretórios. Você poderia usar 755
e corrigir esses modos:
chmod 700 ~/.local ~/.cache ~/.dbus ~/.thumbnails ~/.gconf ~/.thunderbird
Em seguida, arquivos. Você pode ter alguns scripts executáveis em sua casa, mas em geral os arquivos não devem ser executáveis. A maioria dos arquivos em sua casa provavelmente teria 664
ou 644
de permissão, mas, novamente, para estar seguro, você pode querer ir com
find ~ -type f -exec chmod 600 '{}' +
Isso faz com que apenas você possa acessar os arquivos e diretórios em sua casa. Se preferir, use 644
e corrija o modo do arquivo Xauthority
e alguns outros:
chmod 600 ~/.Xauthority ~/.ICEauthority ~/.bash_history ~/.local/share/keyrings/* ~/.xsession-errors ~/.lesshst
Se você quer ser realmente completo, você pode instalar uma nova VM Ubuntu ou verificar as permissões de ~
em outra máquina ... algo como
find ~ -type d -not -perm 700 -exec stat -c "%n %a" {} \; | tee dirperms
e
find ~ -type f -not -perm 600 -exec stat -c "%n %a" {} \; | tee fileperms
Irá gerar listas que você pode usar para fazer correções.