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.