Remover arquivos com mais de "N" dias da Lixeira do Samba
Quando implantei o sistema de lixeira no samba surgiu a necessidade de "esvazia-la" periodicamente, como não queria fazer isso manualmente, escrevi esse script para automatizar a remoção dos arquivos copiados automaticamente para a lixeira do samba.
Com o problema resolvido, decidi compartilhar a solução que desenvolvi com toda comunidade...
Espero que tal solução possa ser útil.
Com o problema resolvido, decidi compartilhar a solução que desenvolvi com toda comunidade...
Espero que tal solução possa ser útil.
Descrição
Quando implantei o sistema de lixeira no samba surgiu a necessidade de "esvazia-la" periodicamente, como não queria fazer isso manualmente, escrevi esse script para automatizar a remoção dos arquivos copiados automaticamente para a lixeira do samba.
Com o problema resolvido, decidi compartilhar a solução que desenvolvi com toda comunidade...
Espero que tal solução possa ser útil.
Com o problema resolvido, decidi compartilhar a solução que desenvolvi com toda comunidade...
Espero que tal solução possa ser útil.
# limpalixeira.sh V 0.1 # Shell Script para remocao de arquivos da lixeira (samba) com mais de N dias # Autor: Tiago Jorge - http://www.vivaolinux.com.br/~Tjdestroyer #!/bin/bash # Diretorio Lixeira LIXEIRA=/mnt/trash/ # Arquivo de Log > adicionar o caminho completo do arquivo de log ARQLOG=$LIXEIRA.arqremovidos.log # Quantidade de dias que os arquivos ficam na lixeira DIAS=15 # Listando todo conteudo do diretorio lixeira que tenha mais de n dias echo $0: `date`: Verificando Existencia de Arquivos com mais de $i dias >> $ARQLOG for i in `find $LIXEIRA -depth -mtime +$DIAS` do # Comparando se arquivo não é arquivo de log e a raiz da lixeira if [ "$i" != "$ARQLOG" ]; then if [ "$i" != "$LIXEIRA" ]; then # Removendo arquivo antigo rm -rf $i echo $0: `date`: Arquivo Removido Permanentemente!: $i >> $ARQLOG fi fi done echo $0: `date`: Verificação Concluída! >> $ARQLOG # Fim do Arquivo # Para adicionar ao crontab: # crontab -e # 00 18 * * * caminho_do_script # esse comando fara o script rodar todos os dias as 18:00h
Altere as linhas:
# Listando todo conteudo do diretorio lixeira que tenha mais de n dias
echo $0: `date`: Verificando Existencia de Arquivos com mais de $i dias >> $ARQLOG
para:
# Listando todo conteudo do diretorio lixeira que tenha mais de n dias
echo $0: `date`: Verificando Existencia de Arquivos com mais de $DIAS dias >> $ARQLOG
Essa mudança não interfere em nada o funcionamento do script, apenas altera como a informação aparece no log.