Bom pessoal, alguns dias atrás, passei por alguns transtornos referente à permissões de pasta no Ubuntu. Como sou muito curioso, pensei comigo: "o que aconteceria se eu executar este comando":
# chmod 000 / -R
Como diria o Capitão Nascimento: "Isso vai dar me**a". E foi o que aconteceu, não conseguia entrar na Internet, não conseguia entrar como root e, também, nem reconhecia o pendrive ou o CD-ROM. No meu caso, tive que refazer a instalação do Ubuntu.
Aí, veio a dúvida, será que não tem um jeito de fazer o backup das permissões para qualquer coisa que acontecer e, eu simplesmente restaurar?
Então, através dessa dúvida, encontrei dois comandos que eu desconhecia e achei muito interessante, que é o
getfacl e o
setfacl.
Backup
Agora, mostrarei como utilizá-lo para fazer backup das permissões de arquivos e pastas. O comando para realizar o backup, é:
getfacl -Rp /home/usuario/ > /home/usuario/Área\ de\ trabalho/permissoes.txt
Utilizamos o
-R para fazer o backup recursivo, isso quer dizer, que ele vai pegar as pastas e as subpastas. O
-p é, simplesmente, para preservar o caminho absoluto.
Para mais detalhes das opções do comando
getfacl, consulte o manual:
man getfacl
O arquivo gerado, no meu caso, ficou nesse formato:
# file: /home/diego/
# owner: diego
# group: diego
user::rwx
group::r-x
other::r-x
# file: /home/diego//Área de trabalho
# owner: diego
# group: diego
user::rwx
group::r-x
other::r-x
# file: /home/diego//Área de trabalho/layout.php~
# owner: diego
# group: diego
user::rw-
group::r--
other::r--
# file: /home/diego//Área de trabalho/permissos.txt
# owner: diego
# group: diego
user::rw-
group::r--
other::r--
Restaurar
Para fazer a restauração das permissões, é bem simples. Apenas, digite o comando a seguir:
setfacl --restore=/home/usuario/Área\ de\ trabalho/permissoes.txt -R
Onde:
- Na opção --restore=, você informará o caminho onde ficou salvo o backup que, no nosso caso, seria: /home/diego/Área\ de\ trabalho/permissoes.txt
- E a opção -R, como foi dito anteriormente, é para que o comando restaure as permissões recursivamente.
Caso queira verificar as permissões, simplesmente, utilize o comando:
ls -l /home/usuario
E você verá as permissões da pasta que foram restauradas.
Pronto, agora as permissões estão salvas e prontas para serem usadas, caso algo errado aconteça nas permissões dos diretórios.
Agora você que é iniciante, pode fazer seus testes tranquilo sem a preocupação de danificar seu sistema, por mudar uma permissão em algum diretório.
Obs.: caso tenha alguma dúvida referente à permissões de arquivos e pastas no
GNU/Linux, sugiro que faça a leitura desse artigo, para compreender mais sobre as permissões:
A realização desse teste foi feito no Ubuntu 12.10 e no Debian Wheezy 7.