Ahir vaig haver de crear una partició de dades nova, perquè això està ple de merda tinc totes les particions bastant plenes. El que passa és que segueixo “massa” sèries i encara no puc gravar cap DVD, perquè només porten de l’ordre de 7 capítols per sèrie, i encara no ocupen un DVD per sèrie (i fer-ho barrejat és un merder). I no, no tinc cap mega-disc-dur de 300.000 GB per guardar-ho xDDD.
Així que, doncs això, toca fer una altra partició de dades. La filosofia que segueixo des de fa un cert temps és la de fer “petites” particions de dades d’uns 20 GB.
El que m’interessa també, donat que al cap i a la fi hi va a parar música i vídeo i aquestes coses, és tenir-ho més o menys compartit entre els diversos usuaris del PC (bàsicament ho miro jo i ja està, però és una cosa que volia fer de totes maneres xD), així que vaig fer un grup nou, anomenat “compartit” (què original), al qual hi pertanyen els usuaris que m’interessa.
Després és qüestió de remenar els permisos d’aquest grup: lo mínim és tenir accès de lectura, i el d’escriptura en principi no hi hauria d’estar, perquè no interessa que qualsevol usuari del grup pugui esborrar el que un altre hi ha posat. La idea és poder accedir al que ja hi ha, poder afegir coses noves, fins i tot potser modificar el que hi ha [modificar NO és el mateix que esborrar; per exemple si hi ha un arxiu de text, es pot modificar el que hi ha escrit (afegir text, i sí, esborrar també, però se suposa que hi ha una certa bona fe xD) sense eliminar-lo] però no eliminar el que no et pertanyi. La clau d’això la proporciona el bit “sticky”.
Per exemple, les dues particions de dades el sistema que he descrit, són aquestes:
drwxrwxr-t 2 root compartit 4096 2007-11-11 13:37 estanteria
drwxrwxr-t 18 root compartit 4096 2007-11-10 21:23 soterrani
El “soterrani” és la partició de dades que ahir vaig veure que estava plena, i l’”estanteria” és la nova que vaig crear per seguir omplint de merda. En efecte, la merda que hi vaig posar ahir és aquesta:
eduard@math:/media/estanteria$ ls -l
total 1435416
-rw-rw-r– 1 root compartit 366782464 2007-11-08 19:58 CSI – 08×06 – Who & what.avi
-rw-rw-r– 1 root compartit 46926 2007-11-10 22:00 CSI – 08×06 – Who & what.srt
-rw-rw-r– 1 root compartit 366786560 2007-11-06 19:48 House – 04×06 – Whatever it takes.avi
-rw-rw-r– 1 root compartit 59171 2002-01-01 05:45 House – 04×06 – Whatever it takes.srt
-rw-rw-r– 1 root compartit 367575294 2007-11-10 06:30 Stargate Atlantis – 04×07 – Missing.avi
-rw-rw-r– 1 root compartit 835 2007-11-10 21:31 sticky.txt
-rw-rw-r– 1 root compartit 367136140 2007-11-09 05:32 Without a Trace – 06×06 – Where & Why.avi
Com podem veure, tenen permisos d’escriptura i lectura tant l’usuari root com el grup compartit. Però (i aquí ve el kit de la qüestió) com que el directori “estanteria” (i per tant tots els arxius de dins*) té el bit sticky activat per l’usuari root, això vol dir que els usuaris que pertanyin al grup compartit tindràn els mateixos permisos que l’usuari que va ‘crear’ l’arxiu (en aquest cas, qui l’hagi mogut/baixar/copiat/etc. dins de l’”estanteria), ergo el root, amb la seguretat que no podràn esborrar res que no els pertanyi.
* Si l’”arxiu” és un directori, aleshores hem d’aplicar també el bit sticky al directori, ja que sinó els arxius de dins el directori sí que es podràn esborrar)
En efecte, si intentem esborrar alguna cosa…
eduard@math:/media/estanteria$ rm *
rm: no s’ha pogut eliminar «CSI – 08×06 – Who & what.avi»: Operation not permitted
rm: no s’ha pogut eliminar «CSI – 08×06 – Who & what.srt»: Operation not permitted
rm: no s’ha pogut eliminar «House – 04×06 – Whatever it takes.avi»: Operation not permitted
rm: no s’ha pogut eliminar «House – 04×06 – Whatever it takes.srt»: Operation not permitted
rm: no s’ha pogut eliminar «Stargate Atlantis – 04×07 – Missing.avi»: Operation not permitted
rm: no s’ha pogut eliminar «sticky.txt»: Operation not permitted
rm: no s’ha pogut eliminar «Without a Trace – 06×06 – Where & Why.avi»: Operation not permitted
… no ens deixa!
També estaria bé improvitzar un petit script (si l’aconsegueixo fer en python, em tremparia més que en bash) per automatitzar una mica la tasca de modificar els permisos i tot això.
De moment faig això…
sudo chown -R root /media/estanteria
sudo chgrp -R compartit /media/estanteria
sudo chmod -R g+w /media/estanteria/
… però interessa currar-s’ho una mica més.
En fi, això és tot.
PS: Per si a algú li interessa, el contingut del arxiu “sticky.txt” és això que vaig escriure quan se’m va encendre la bombeta de tot això del sticky bit:
eduard@math:/media/estanteria$ cat sticky.txt
He activat l’sticky bit en aquest directori i els seus subdirectoris, de tal
manera que es pot afegir material i modificar-lo, però no esborrar-lo.Per exemple, podem afegir arxius (documents de text, per exemple) de manera que
els altres usuaris podràn consultar-ho però no esborrar-ho.En definitiva, es una mesura de seguretat preventiva però no restrictiva,
per la qual cosa és un invent molt útil.—————————————————————————————–
Per exemple, proveu de modificar aquest arxiu
(afegint alguna cosa al final, preferiblement).
[S'hauria de poder]Ara però, proveu d’eliminar-lo!
[No s'hauria de poder]
Ara sí, a cascar-la.
Abans però, un últim comentari: Let Windows try that! xDD