Samba Paperera Reciclatge Servidor Centre
De Wiki Linkat
Revisió actual (12:37, 9 gen 2013) (mostra codi font) |
|||
(Hi ha 15 revisions intermèdies) | |||
Línia 3: | Línia 3: | ||
<br> | <br> | ||
- | + | <br> | |
+ | En aquesta recepta es descriu la configuració de la paperera de xarxa per poder recuperar els documents esborrats de les unitats de: gestió (Unitat G), professorat (Unitat P) i treball (Unitat T). | ||
+ | <br> | ||
- | + | Procediment: | |
+ | <br> | ||
+ | '''Nota: per fer aquestes modificacions cal ser root!!!''' | ||
- | + | <br> | |
+ | 1- Cal crear el directori Paperera dins del directori /srv/exports: | ||
+ | <br> | ||
- | + | '''Codi:''' | |
+ | <pre>cd /srv/exports | ||
+ | mkdir Paperera | ||
+ | </pre> | ||
+ | <br> | ||
+ | 2- Cal donar els permisos 775 a la carpeta Paperera: | ||
+ | <br> | ||
+ | |||
+ | '''Codi:''' | ||
+ | <pre>chmod 775 Paperera | ||
+ | </pre> | ||
+ | <br> | ||
+ | |||
+ | 3- Dins de la carpeta Paperera (/srv/exports/Paperera), cal crear els recursos següents: '''Paperera_Unitat_G''', '''Paperera_Unitat_P''' i '''Paperera_Unitat_T''' | ||
+ | |||
+ | <br> | ||
+ | |||
+ | Aquests tres directoris recolliran els fitxers que es vagin eliminant desl recursos compartits: '''gestio (Unitat G), professorat (Unitat P) i treball (Unitat T).''' | ||
+ | |||
+ | <br> | ||
+ | |||
+ | '''Codi per a servidors Linkat 4:''' | ||
+ | <pre>cd /srv/exports/Paperera | ||
+ | |||
+ | mkdir Paperera_Unitat_G | ||
+ | mkdir Paperera_Unitat_P | ||
+ | mkdir Paperera_Unitat_T | ||
+ | |||
+ | chmod 770 Paperera_Unitat_G | ||
+ | chmod 770 Paperera_Unitat_P | ||
+ | chmod 777 Paperera_Unitat_T | ||
+ | |||
+ | chown root:Administradors Paperera_Unitat_G | ||
+ | chown root:Professorat Paperera_Unitat_P | ||
+ | chown nobody:Administradors Paperera_Unitat_T | ||
+ | |||
+ | getfacl /srv/exports/G | setfacl --set-file=- /srv/exports/Paperera/Paperera_Unitat_G | ||
+ | getfacl /srv/exports/P | setfacl --set-file=- /srv/exports/Paperera/Paperera_Unitat_P | ||
+ | getfacl /srv/exports/T | setfacl --set-file=- /srv/exports/Paperera/Paperera_Unitat_T | ||
+ | |||
+ | |||
+ | NOTA: Cal ignorar el missatge: "getfacl: Removing leading '/' from absolute path names" | ||
+ | |||
+ | </pre> | ||
+ | |||
+ | '''Codi per a servidors Linkat 3:''' | ||
+ | <pre>cd /srv/exports/Paperera | ||
+ | |||
+ | mkdir Paperera_Unitat_G | ||
+ | mkdir Paperera_Unitat_P | ||
+ | mkdir Paperera_Unitat_T | ||
+ | |||
+ | chmod 770 Paperera_Unitat_G | ||
+ | chmod 770 Paperera_Unitat_P | ||
+ | chmod 777 Paperera_Unitat_T | ||
+ | |||
+ | chown root:Gestio Paperera_Unitat_G | ||
+ | chown root:Professorat Paperera_Unitat_P | ||
+ | chown nobody:Administradors Paperera_Unitat_T | ||
+ | |||
+ | getfacl /srv/exports/G | setfacl --set-file=- /srv/exports/Paperera/Paperera_Unitat_G | ||
+ | getfacl /srv/exports/P | setfacl --set-file=- /srv/exports/Paperera/Paperera_Unitat_P | ||
+ | getfacl /srv/exports/T | setfacl --set-file=- /srv/exports/Paperera/Paperera_Unitat_T | ||
+ | |||
+ | |||
+ | NOTA: Cal ignorar el missatge: "getfacl: Removing leading '/' from absolute path names" | ||
+ | |||
+ | </pre> | ||
+ | <br> | ||
+ | |||
+ | <br> 4- Un cop configurat el directori '''Paperera''', s'ha de procedir a configurar el servei samba: | ||
+ | |||
+ | Cal editar el fitxer /etc/smb.conf per modificar els recursos: '''gestio''', '''professorat''', '''treball''' i també els recursos '''G''', '''P''' i '''T''' tal i com es descriu a continuació: | ||
+ | |||
+ | <br> | ||
+ | |||
+ | Així doncs, els recursos de xarxa modificats dins del fitxer '''/etc/samba/smb.conf''' quedarien com es mostra a continuació: | ||
+ | |||
+ | <br> | ||
- | <pre> | + | '''Contingut parcial del fitxer /etc/samba/smb.conf:''' |
- | [gestio] | + | <pre>[gestio] |
comment = Gestio | comment = Gestio | ||
path = /srv/exports/G | path = /srv/exports/G | ||
Línia 33: | Línia 117: | ||
force directory mode = 775 | force directory mode = 775 | ||
create mask = 664 | create mask = 664 | ||
- | + | vfs objects = recycle | |
- | vfs objects = recycle | + | recycle:repository = /srv/exports/Paperera/Paperera_Unitat_G |
- | recycle:repository = /srv/exports/Paperera/ | + | recycle:exclude = *.tmp *.temp *.o |
- | recycle:exclude = *.tmp *.temp *.o | + | recycle:maxsize = 20971520 |
- | recycle:maxsize = 20971520 | + | recycle:versions = Yes |
- | recycle:versions = Yes | + | recycle:keeptree = Yes |
- | recycle:keeptree = Yes | + | recycle:touch = true |
- | recycle:touch = true | + | |
Línia 57: | Línia 140: | ||
force directory mode = 777 | force directory mode = 777 | ||
create mask = 666 | create mask = 666 | ||
- | + | vfs objects = recycle | |
- | vfs objects = recycle | + | recycle:repository = /srv/exports/Paperera/Paperera_Unitat_T |
- | recycle:repository = /srv/exports/Paperera/ | + | recycle:exclude = *.tmp *.temp *.o |
- | recycle:exclude = *.tmp *.temp *.o | + | recycle:maxsize = 20971520 |
- | recycle:maxsize = 20971520 | + | recycle:versions = Yes |
- | recycle:versions = Yes | + | recycle:keeptree = Yes |
- | recycle:keeptree = Yes | + | recycle:touch = true |
- | recycle:touch = true | + | recycle:directory_mode = 0777 |
- | recycle:directory_mode = 0777 | + | |
Línia 80: | Línia 162: | ||
force directory mode = 775 | force directory mode = 775 | ||
create mask = 664 | create mask = 664 | ||
- | + | vfs objects = recycle | |
- | vfs objects = recycle | + | recycle:repository = /srv/exports/Paperera/Paperera_Unitat_P |
- | recycle:repository = /srv/exports/Paperera/ | + | recycle:exclude = *.tmp *.temp *.o |
- | recycle:exclude = *.tmp *.temp *.o | + | recycle:maxsize = 20971520 |
- | recycle:maxsize = 20971520 | + | recycle:versions = Yes |
- | recycle:versions = Yes | + | recycle:keeptree = Yes |
- | recycle:keeptree = Yes | + | recycle:touch = true |
- | recycle:touch = true | + | |
[Paperera_Xarxa] | [Paperera_Xarxa] | ||
- | path = /srv/exports/Paperera/ | + | path = /srv/exports/Paperera/ |
- | comment = Paperera de Reciclatge de la Xarxa | + | comment = Paperera de Reciclatge de la Xarxa |
- | writeable = Yes | + | writeable = Yes |
- | browsable = Yes | + | browsable = Yes |
+ | |||
+ | # Non-browseable aliases for mixed environments compatibility | ||
+ | |||
+ | [T] | ||
+ | comment = Treball | ||
+ | path = /srv/exports/T | ||
+ | read only = No | ||
+ | force group = nogroup | ||
+ | force user = nobody | ||
+ | writeable = Yes | ||
+ | browseable = No | ||
+ | guest ok = Yes | ||
+ | printable = No | ||
+ | write ok = true | ||
+ | force create mode = 666 | ||
+ | force directory mode = 777 | ||
+ | vfs objects = recycle | ||
+ | recycle:repository = /srv/exports/Paperera/Paperera_Unitat_T | ||
+ | recycle:exclude = *.tmp *.temp *.o | ||
+ | recycle:maxsize = 20971520 | ||
+ | recycle:versions = Yes | ||
+ | recycle:keeptree = Yes | ||
+ | recycle:touch = true | ||
+ | recycle:directory_mode = 0777 | ||
+ | |||
+ | [P] | ||
+ | comment = Professorat | ||
+ | path = /srv/exports/P | ||
+ | read only = No | ||
+ | writeable = Yes | ||
+ | browseable = No | ||
+ | guest ok = No | ||
+ | printable = no | ||
+ | write ok = true | ||
+ | force create mode = 664 | ||
+ | force directory mode = 775 | ||
+ | vfs objects = recycle | ||
+ | recycle:repository = /srv/exports/Paperera/Paperera_Unitat_P | ||
+ | recycle:exclude = *.tmp *.temp *.o | ||
+ | recycle:maxsize = 20971520 | ||
+ | recycle:versions = Yes | ||
+ | recycle:keeptree = Yes | ||
+ | recycle:touch = true | ||
+ | [G] | ||
+ | comment = Gestio | ||
+ | path = /srv/exports/G | ||
+ | read only = No | ||
+ | writeable = Yes | ||
+ | browseable = No | ||
+ | guest ok = No | ||
+ | printable = no | ||
+ | write ok = true | ||
+ | force create mode = 664 | ||
+ | force directory mode = 775 | ||
+ | create mask = 664 | ||
+ | vfs objects = recycle | ||
+ | recycle:repository = /srv/exports/Paperera/Paperera_Unitat_G | ||
+ | recycle:exclude = *.tmp *.temp *.o | ||
+ | recycle:maxsize = 20971520 | ||
+ | recycle:versions = Yes | ||
+ | recycle:keeptree = Yes | ||
+ | recycle:touch = true | ||
</pre> | </pre> | ||
- | ''' | + | <br> '''Nota: ''' recycle:maxsize = 20971520 fa referència a la mida màxima de fitxer que anirà a la paperera. En aquest cas, el valor 20971520 equival a un fitxer de 20 Mb de mida màxima. |
- | + | <br> Com es pot veure a l'exemple anterior, s'ha creat un nou recurs de xarxa anomenat Paperera_Xarxa que és la que contindrà els fitxers esborrats. Així doncs caldrà fer un buidatge d'aquesta paperera ja que tots els elements que s'eliminin aniran a parar a aquest recurs i per tant consumiran espai en disc. | |
- | + | Per automatitzar el buidatge periòdic de la paperera de xarxa (recurs Paperera_Xarxa) es pot programar una tasca per tal que s'executi un cop per setmana. | |
<br> | <br> | ||
- | <pre> | + | |
+ | Com a exemple, l'script neteja_paperera_xarxa.sh següent es pot fer servir per eliminar completament el contingut de les papereres dels recursos de xarxa G, P i T: | ||
+ | |||
+ | <br> | ||
+ | |||
+ | Contingut de l'script neteja_paperera_xarxa.sh: | ||
+ | <pre>#!/bin/bash | ||
+ | PAPERERA_XARXA="/srv/exports/Paperera" | ||
+ | for RECICLA in $PAPERERA_XARXA/* | ||
+ | do | ||
+ | rm -rf $RECICLA/* | ||
+ | done | ||
+ | </pre> | ||
+ | <br> | ||
+ | |||
+ | Aquest script es pot copiar dins del directori /usr/local/bin i cal donar-li permisos d'execució per tal que s'executi correctament. Per fer-ho cal assignar permisos 750: | ||
+ | |||
+ | <br> | ||
+ | <pre>chmod 750 /usr/local/bin/neteja_paperera_xarxa.sh | ||
+ | </pre> | ||
+ | <br> Un cop copiat l'script que neteja el contingut de la paperera de xarxa, cal automatitzar la seva execució. Així doncs, es pot programar dins del fitxer /etc/crontab l'execució de l'script neteja_paperera_xarxa.sh tal i com es mostra a continuació: | ||
+ | |||
+ | <br> | ||
+ | |||
+ | Contingut /etc/crontab: | ||
+ | <pre>00 00 * * 0 /usr/local/bin/neteja_paperera_xarxa.sh > /dev/null 2>&1 | ||
+ | |||
+ | </pre> | ||
+ | <br> aquesta entrada dins del fitxer crontab s'executarà cada diumenge a mitjanit (00:00). Aquesta programació es pot canviar per @weekly quedant de la forma següent: | ||
+ | |||
+ | <br> | ||
+ | <pre>@weekly /usr/local/bin/neteja_paperera_xarxa.sh > /dev/null 2>&1 | ||
+ | </pre> | ||
+ | <br> | ||
+ | |||
+ | <br> | ||
+ | |||
+ | <br> | ||
+ | <pre>Aquesta documentació es basa en la informació extreta de: | ||
+ | |||
+ | |||
http://www.samba.org/samba/docs/man/Samba-HOWTO-Collection/ | http://www.samba.org/samba/docs/man/Samba-HOWTO-Collection/ | ||
- | |||
http://www.samba.org/samba/docs/man/Samba-HOWTO-Collection/VFS.html#id2651247 | http://www.samba.org/samba/docs/man/Samba-HOWTO-Collection/VFS.html#id2651247 | ||
+ | http://www.mbse.eu/linux/homeserver/essential/samba/ | ||
- | |||
- | http:// | + | Informació sobre ACL: |
+ | |||
+ | http://govath.wordpress.com/2010/01/25/linux-setfacl-getfacl-acl-examples/ | ||
+ | |||
+ | http://computernetworkingnotes.com/managing-file-system-security/acl.html | ||
+ | |||
+ | |||
+ | Informació sobre crontab: | ||
+ | |||
+ | http://www.simplehelp.net/2008/11/17/increase-your-linuxunix-productivity-how-to-use-crontab/ | ||
+ | |||
</pre> | </pre> |
Revisió actual
Configuració de la paperera de reciclatge en els recursos compartits del Servidor de Centre Linkat:
En aquesta recepta es descriu la configuració de la paperera de xarxa per poder recuperar els documents esborrats de les unitats de: gestió (Unitat G), professorat (Unitat P) i treball (Unitat T).
Procediment:
Nota: per fer aquestes modificacions cal ser root!!!
1- Cal crear el directori Paperera dins del directori /srv/exports:
Codi:
cd /srv/exports mkdir Paperera
2- Cal donar els permisos 775 a la carpeta Paperera:
Codi:
chmod 775 Paperera
3- Dins de la carpeta Paperera (/srv/exports/Paperera), cal crear els recursos següents: Paperera_Unitat_G, Paperera_Unitat_P i Paperera_Unitat_T
Aquests tres directoris recolliran els fitxers que es vagin eliminant desl recursos compartits: gestio (Unitat G), professorat (Unitat P) i treball (Unitat T).
Codi per a servidors Linkat 4:
cd /srv/exports/Paperera mkdir Paperera_Unitat_G mkdir Paperera_Unitat_P mkdir Paperera_Unitat_T chmod 770 Paperera_Unitat_G chmod 770 Paperera_Unitat_P chmod 777 Paperera_Unitat_T chown root:Administradors Paperera_Unitat_G chown root:Professorat Paperera_Unitat_P chown nobody:Administradors Paperera_Unitat_T getfacl /srv/exports/G | setfacl --set-file=- /srv/exports/Paperera/Paperera_Unitat_G getfacl /srv/exports/P | setfacl --set-file=- /srv/exports/Paperera/Paperera_Unitat_P getfacl /srv/exports/T | setfacl --set-file=- /srv/exports/Paperera/Paperera_Unitat_T NOTA: Cal ignorar el missatge: "getfacl: Removing leading '/' from absolute path names"
Codi per a servidors Linkat 3:
cd /srv/exports/Paperera mkdir Paperera_Unitat_G mkdir Paperera_Unitat_P mkdir Paperera_Unitat_T chmod 770 Paperera_Unitat_G chmod 770 Paperera_Unitat_P chmod 777 Paperera_Unitat_T chown root:Gestio Paperera_Unitat_G chown root:Professorat Paperera_Unitat_P chown nobody:Administradors Paperera_Unitat_T getfacl /srv/exports/G | setfacl --set-file=- /srv/exports/Paperera/Paperera_Unitat_G getfacl /srv/exports/P | setfacl --set-file=- /srv/exports/Paperera/Paperera_Unitat_P getfacl /srv/exports/T | setfacl --set-file=- /srv/exports/Paperera/Paperera_Unitat_T NOTA: Cal ignorar el missatge: "getfacl: Removing leading '/' from absolute path names"
4- Un cop configurat el directori Paperera, s'ha de procedir a configurar el servei samba:
Cal editar el fitxer /etc/smb.conf per modificar els recursos: gestio, professorat, treball i també els recursos G, P i T tal i com es descriu a continuació:
Així doncs, els recursos de xarxa modificats dins del fitxer /etc/samba/smb.conf quedarien com es mostra a continuació:
Contingut parcial del fitxer /etc/samba/smb.conf:
[gestio] comment = Gestio path = /srv/exports/G read only = No writeable = Yes browseable = Yes guest ok = No printable = no write ok = true force create mode = 664 force directory mode = 775 create mask = 664 vfs objects = recycle recycle:repository = /srv/exports/Paperera/Paperera_Unitat_G recycle:exclude = *.tmp *.temp *.o recycle:maxsize = 20971520 recycle:versions = Yes recycle:keeptree = Yes recycle:touch = true [treball] comment = Treball path = /srv/exports/T read only = No force group = nogroup force user = nobody writeable = Yes browseable = Yes guest ok = Yes printable = No write ok = true force create mode = 666 force directory mode = 777 create mask = 666 vfs objects = recycle recycle:repository = /srv/exports/Paperera/Paperera_Unitat_T recycle:exclude = *.tmp *.temp *.o recycle:maxsize = 20971520 recycle:versions = Yes recycle:keeptree = Yes recycle:touch = true recycle:directory_mode = 0777 [professorat] comment = Professorat path = /srv/exports/P read only = No writeable = Yes browseable = Yes guest ok = No printable = no write ok = true force create mode = 664 force directory mode = 775 create mask = 664 vfs objects = recycle recycle:repository = /srv/exports/Paperera/Paperera_Unitat_P recycle:exclude = *.tmp *.temp *.o recycle:maxsize = 20971520 recycle:versions = Yes recycle:keeptree = Yes recycle:touch = true [Paperera_Xarxa] path = /srv/exports/Paperera/ comment = Paperera de Reciclatge de la Xarxa writeable = Yes browsable = Yes # Non-browseable aliases for mixed environments compatibility [T] comment = Treball path = /srv/exports/T read only = No force group = nogroup force user = nobody writeable = Yes browseable = No guest ok = Yes printable = No write ok = true force create mode = 666 force directory mode = 777 vfs objects = recycle recycle:repository = /srv/exports/Paperera/Paperera_Unitat_T recycle:exclude = *.tmp *.temp *.o recycle:maxsize = 20971520 recycle:versions = Yes recycle:keeptree = Yes recycle:touch = true recycle:directory_mode = 0777 [P] comment = Professorat path = /srv/exports/P read only = No writeable = Yes browseable = No guest ok = No printable = no write ok = true force create mode = 664 force directory mode = 775 vfs objects = recycle recycle:repository = /srv/exports/Paperera/Paperera_Unitat_P recycle:exclude = *.tmp *.temp *.o recycle:maxsize = 20971520 recycle:versions = Yes recycle:keeptree = Yes recycle:touch = true [G] comment = Gestio path = /srv/exports/G read only = No writeable = Yes browseable = No guest ok = No printable = no write ok = true force create mode = 664 force directory mode = 775 create mask = 664 vfs objects = recycle recycle:repository = /srv/exports/Paperera/Paperera_Unitat_G recycle:exclude = *.tmp *.temp *.o recycle:maxsize = 20971520 recycle:versions = Yes recycle:keeptree = Yes recycle:touch = true
Nota: recycle:maxsize = 20971520 fa referència a la mida màxima de fitxer que anirà a la paperera. En aquest cas, el valor 20971520 equival a un fitxer de 20 Mb de mida màxima.
Com es pot veure a l'exemple anterior, s'ha creat un nou recurs de xarxa anomenat Paperera_Xarxa que és la que contindrà els fitxers esborrats. Així doncs caldrà fer un buidatge d'aquesta paperera ja que tots els elements que s'eliminin aniran a parar a aquest recurs i per tant consumiran espai en disc.
Per automatitzar el buidatge periòdic de la paperera de xarxa (recurs Paperera_Xarxa) es pot programar una tasca per tal que s'executi un cop per setmana.
Com a exemple, l'script neteja_paperera_xarxa.sh següent es pot fer servir per eliminar completament el contingut de les papereres dels recursos de xarxa G, P i T:
Contingut de l'script neteja_paperera_xarxa.sh:
#!/bin/bash PAPERERA_XARXA="/srv/exports/Paperera" for RECICLA in $PAPERERA_XARXA/* do rm -rf $RECICLA/* done
Aquest script es pot copiar dins del directori /usr/local/bin i cal donar-li permisos d'execució per tal que s'executi correctament. Per fer-ho cal assignar permisos 750:
chmod 750 /usr/local/bin/neteja_paperera_xarxa.sh
Un cop copiat l'script que neteja el contingut de la paperera de xarxa, cal automatitzar la seva execució. Així doncs, es pot programar dins del fitxer /etc/crontab l'execució de l'script neteja_paperera_xarxa.sh tal i com es mostra a continuació:
Contingut /etc/crontab:
00 00 * * 0 /usr/local/bin/neteja_paperera_xarxa.sh > /dev/null 2>&1
aquesta entrada dins del fitxer crontab s'executarà cada diumenge a mitjanit (00:00). Aquesta programació es pot canviar per @weekly quedant de la forma següent:
@weekly /usr/local/bin/neteja_paperera_xarxa.sh > /dev/null 2>&1
Aquesta documentació es basa en la informació extreta de: http://www.samba.org/samba/docs/man/Samba-HOWTO-Collection/ http://www.samba.org/samba/docs/man/Samba-HOWTO-Collection/VFS.html#id2651247 http://www.mbse.eu/linux/homeserver/essential/samba/ Informació sobre ACL: http://govath.wordpress.com/2010/01/25/linux-setfacl-getfacl-acl-examples/ http://computernetworkingnotes.com/managing-file-system-security/acl.html Informació sobre crontab: http://www.simplehelp.net/2008/11/17/increase-your-linuxunix-productivity-how-to-use-crontab/