Este artigo do Alessandro de Oliveira Faria (alessandrofaria@netitec.com.br) explica como ativar uma lixeira automática nos compartilhamentos Samba, fazendo todos os arquivos excluídos irem para ela automaticamente, permitindo fácil recuperação em caso de remoção acidental.
Inserindo o recurso de LIXEIRA nos compartilhamentos SAMBA
por Alessandro de Oliveira Faria (alessandrofaria@netitec.com.br)
Inúmeras vezes eu e minha equipe aqui na empresa apagamos acidentalmente arquivos que se encontravam em um compartilhamento samba. Com este tutorial, todos os arquivos apagado (até os da linha de comando do MSDOS) irão para uma pasta .recycle.
Assim sendo, podemos recuperar qualquer arquivo excluido, simplesmente movendo o arquivo que se encontra nesta pasta oculta para o seu local de origem.
Requisitos mínimos:
Não vou neste artigo mencionar nenhuma instalação do serviço SAMBA, pois o mesmo se encontra em abundância na internet. Portando partirei do pré-suposto que o serviço SAMBA e seus compartilhamentos estão devidamente configurados.
Outro fato em que devemos estar atentos, é ser o seu sistema tem suporte ao VFS (Virtual File System). Em meu caso usei a distribuição Linux Conectiva 9.
Instalação:
No cd de sua distribuição, você encontrara um arquivo com o nome samba-vfs-x.y.zcl.i386.rpm onde x.y.z é a versão do pacote de devemos instalar.
[root@via800 etc]# mount /mnt/cdrom
[root@via800 etc]# cd ./mnt/cdrom/conectiva/RPMS
[root@via800 RPMS]# ls samba-vfs*
samba-vfs-2.2.8-27519cl.i386.rpm
Após encontra-lo, execute o seguinte comando abaixo:
[root@via800 RPMS]# rpm -igh samba-vfs-2.2.8-27519cl.i386.rpm
########################################### [100%]
########################################### [100%]
Configuração:
O arquivos /etc/samba/recycle.conf é o principal arquivo deste tutorial, ele vem configurado e pronto para ser usado.
Ele é tão simples, que nem vou explica-lo. Segue abaixo o seu conteudo caso este arquivo venha case vazio em sua distribuição.
[root@via800 RPMS]#cd /etc/samba
[root@via800 samba]# cat recycle.conf
# Sample config file for recycle.so Samba VFS module
# in order to use this module you must add the following lines
# (uncommented, of course) to /etc/samba/smb.conf, inside a share
# definition:
# [share]
# ...
# vfs object = /usr/lib/samba/vfs/recycle.so
# vfs options = /etc/samba/recycle.conf
# ...
# /etc/samba/recycle.conf itself
# name of the recycle bin at root level of share
name = .recycle
# mode :
# KEEP_DIRECTORIES = retain directory hierarchy of deleted file,
# i.e. recreate all directories in recycle bin
# VERSIONS = create copies in case of identical file names in recycle bin
# TOUCH = touch access date of files moved into the recycle bin
mode = KEEP_DIRECTORIES|VERSIONS|TOUCH
# maximum file size to be moved to the recycle bin (0 means any size)
maxsize = 0
# exclude file names with the following extensions:
exclude = *.tmp|*.temp|*.o|*.obj|~$*
# exclude directories:
excludedir = /tmp|/temp|/cache
# Add file extensions of files where no versioning is wanted (i.e. copy # 1...)
# only valid when mode=VERSIONS is set
noversions = *.doc|*.xls|*.ppt
Para adicionarmos o recurso de lixeira nos compartilhamentos, devemos inserir as seguintes linhas nas seções dos compartilhamentos:
vfs object = /usr/lib/samba/vfs/recycle.so
vfs options = /etc/samba/recycle.conf
Por exemplo: Eu tenho 2 compartilhamentos importantes, o [fontes] onde se encontra todos os fontes do pessoal de desenvolvimento de software e o [Diretoria] que contem os documentos administrativos do diretor técnico e comercial.
Para que estes 2 compartilhamentos passe a ter a lixeira irei inserir as linhas mencionadas logo acima no arquivo smb.conf nas respectivas seções:
[Diretoria]
comment = Compartilhamento disponivel para direcao da NETi
path = /rede2/diretoria
writeable = yes
create mask = 2770
force create mode = 770
force directory mode = 2770
guest ok = no
browseable = no
vfs object = /usr/lib/samba/vfs/recycle.so
vfs options = /etc/samba/recycle.conf
[fontes]
comment = Fontes de Projetos
path = /rede2/desenvol
create mask = 2770
public = yes
writable = yes
printable = no
write list = @staff
force directory mode = 2770
force create mode = 770
guest ok = no
vfs object = /usr/lib/samba/vfs/recycle.so
vfs options = /etc/samba/recycle.conf
Pronto! Agora é só reiniciar o serviço SAMBA:
[root@via800 samba]# samba restart
Interrompendo os serviços SMB: [ OK ]
Interrompendo os serviços NMB: [ OK ]
Iniciando os serviços SMB: [ OK ]
Iniciando os serviços NMB: [ OK ]
[root@via800 samba]#
Testando o recurso:
Vá até o recurso compartilhado, e apague um arquivo no Windows Explorer ou até mesmo do prompt do MSDOS!!!!!.
Vale a pena resaltar que se apagarmos um arquivo na linha de comando do MSDOS em nosso HD local, o Windows não envia o mesmo para a lixeira. Já no Linux é claro isto não acontence. (é por esta razão e muitas outras que sempre usarei LINUX).
Para recuperar o arquivo apagado, vá na raiz do compartilhamento e entre na pasta oculta .recycle, lá você encontrará todos os arquivos deletados.
Este recurso passa a ser um diferencial na sua instalação Linux. Não preciso nem mencionar sobre a manutenção periódica na lixeira, para que não acabe ocupando todo o espaço disponível do hd né?
Autor: Alessandro de Oliveira Faria (alessandrofaria@netitec.com.br)
» Postado por: Tiago Cruz em novembro 6, 2003 01:34 PM, 200.207.152:
Alessandro,
Parabéns velhom, show de bola!
Funcionou direitinho cara, valeu! ;)
No Mandrake 9.2 o samba-vfs já vem 'embutido' no pacote samba-server-2.2.8a-13mdk
Abraços
» Postado por: Tiago Cruz em novembro 10, 2003 09:13 AM, 200.207.152:
Para não encher a lixeira, no crontab:
00 18 * * 1-5 find /dados/drive_f/.recycle/ -type f -mtime 15 -exec rm -r {} \;
Abraços
» Postado por: Leonardo Mello em janeiro 13, 2004 04:58 PM, 200.202.96.:
Alessandro,
Obrigado pela dica!!
Para calar a boca de quem disse que o recurso de recuperação de arquivos deletados do Novell era o melhor que foi feito.
Abraços,
Leonardo Mello
» Postado por: Lélio Flávio em fevereiro 11, 2004 10:08 AM, 200.160.246:
Gostaria de saber se tem como colocar a lixeira nos compartilhalmentos do samba usando a distribuição Conectiva 8. Tenho dúvida se tenho que atualizar algum pocote e qual para fazer a lixeira funcionar no conectiva 8.Já fiz a intalação do samba-vfs-x.y.zcl.i386.rpm onde x.y. e configurei como diz o artigo do Alexandro os meus compartilhamentos que precisam da lixeira.
Agradeço
Lélio.
» Postado por: Paulo Sergio em fevereiro 19, 2004 04:18 PM, 195.248.194:
Vc falaram ai que o linux tem que ter suporte ao VFS (Virtual File System) e como sou iniciante no linux não sei se meu red hat 7.3 tem esse suporte ,pois achei muito interessante esse artigo ..
Obrigado.
» Postado por: Marco Alberton em fevereiro 22, 2004 09:03 PM, 200.181.94.:
Alessandro,
Parabéns pelo artigo, muito útil para administradores de rede. A migração de redes com domínio NT para servidores Linux com Samba fica mais interessante para o usuário se além da melhoria da qualidade dos serviços (velocidade, segurança etc) pudermos acrescentar recursos como este, bem conhecidos de usuários Novell.
A comunidade de SL agradece.
» Postado por: Aline em julho 10, 2004 10:42 PM, 200.149.88.:
Por favor me ajude preciso recuperar um arquivo que eu exclui e não somplesmente deletei, socorro é de fundamental importância..
» Postado por: António Matos em outubro 11, 2004 01:55 PM, 195.23.20.1:
é pena não por na reciclagem as pastas e sub-pastas que foram eliminadas
O Arquivo Histórico do BR-Linux.org mantém no ar (sem alteração, exceto quanto à formatação) notícias, artigos e outros textos publicados originalmente no site na segunda metade da década de 1990 e na primeira década do século XXI, que contam parte considerável a história do Linux e do Open Source no Brasil. Exceto quando indicado em contrário, a autoria dos textos é de Augusto Campos, e os termos de uso podem ser consultados na capa do BR-Linux.org. Considerando seu caráter histórico, é provável que boa parte dos links estejam quebrados, e que as informações deste texto estejam desatualizadas.