matdavy Posted November 12, 2020 at 12:30 PM Share Posted November 12, 2020 at 12:30 PM Olá Pessoal estava resolvendo uma solução front-end e não estava conseguindo acessar a pasta onde poderia codificar e usar o comando code . para abrir o VsCode, pois dava erro de permissão , logo me veio a ideia de usar o chmod 777 -R /pasta, porém o sistema acabou dando o comando em todas as pastas do sistema e alterando as permissões alguém sabe como posso reverter? Link to comment Share on other sites More sharing options...
matdavy Posted November 12, 2020 at 12:34 PM Author Share Posted November 12, 2020 at 12:34 PM Eu utilizo o Ubuntu versão 20.04 Link to comment Share on other sites More sharing options...
matdavy Posted November 12, 2020 at 12:41 PM Author Share Posted November 12, 2020 at 12:41 PM Meu sistema nem abre mais, mesmo entrando em modo recovery e tentando restaurar os arquivos que estão quebrados, nada acontece, apenas consigo acessar o terminal do recovery mode, dei um cd /bin ls -lah e ele me lista os arquivos, todos como root Link to comment Share on other sites More sharing options...
fredericopissarra Posted November 12, 2020 at 01:28 PM Share Posted November 12, 2020 at 01:28 PM TODOS os arquivos em /bin são de propriedade do root mesmo. O problema é que modificações feitas como root geralmente não podem ser "revertidas". Você terá que mudar as permissões manualmente (assim como as mudou antes, manualmente!). Eis o problema com seu chmod... Alguns arquivos precisam do flag SETUID lidados a permissão é rwsr-xr-x. Ao usar 777 você sobrescreveu isso. Outros diretórios não podem estar acessíveis para usuários comuns (sbin, por exemplo)... Alguns arquivos não podem ter permissões para usuários comuns (alguns de /boot, por exemplo)... Como regra geral: UNIX (e Linux) faz o que você mando ele fazer, errado ou não... Acho que sua única saída é fazer o backup de seus arquivos (ajudaria se os mantivesse em outro disco ou numa partição isolada para /home), e instalar o Linux de novo... E não use login como root (mesmo sudo -s ou sudo -i)... É fácil fazer besteira como root. Link to comment Share on other sites More sharing options...
Administrators Fernando Mercês Posted November 12, 2020 at 07:40 PM Administrators Share Posted November 12, 2020 at 07:40 PM De fato.. Será que o sistema não sobe por conta do SUID? Talvez uma solução seja , olha que loucura, instalar a mesma versão do Ubuntu em uma máquina virtual e gerar uma lista em txt com as permissões de todos os arquivos, aí copiar este txt para o seu Ubuntu que tá zuado e restaurar. Seria algo assim: 1. Primeiro vamos gerar um padrão na máquina afetada, de modo que todo diretório seja 0755 e todo arquivo 0644 (valores comuns para ambos): # find / -type d -exec chmod 0755 {} \; # find / -type f -exec chmod 0644 {} \; 2. Depois, usamos o comando find na VM de Ubuntu recém-instalada (mesma versão) pra gerar uma lista com os caminhos dos arquivos e suas permissões originais, separados por tab: # find / -printf '%p\t%m\n' /bin 755 /bin/ls 644 /var 755 /var/log 755 /var/log/httpd.log 644 Estando tudo certo, é só gerar uma lista: # find / -printf '%p\t%m\n' > lista.txt 3. De volta à máquina afetada, copiar o lista.txt para ela e fazer um loop que vai ler o conteúdo deste arquivo e passar como parâmetros para o chmod. Aqui prefixei todo o comando com o comando echo só pra ver como ficaria: $ while read -r arq perm; do echo chmod "$perm" "$arq"; done < lista.txt chmod 755 /bin chmod 644 /bin/ls chmod 755 /var chmod 755 /var/log chmod 644 /var/log/httpd.log Se remover o comando echo, o chmod é executado: $ while read -r arq perm; do chmod "$perm" "$arq"; done < lista.txt Se o seu problema for mesmo só de permissionamento mesmo, pode funcionar, mas é por sua conta em risco. ? Caso resolva tentar, posta aí mensagens de erro que possivelmente apareçam, etc. Abraço! Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.