Ralf Eisenreich

SQLBlog.DE | ..things to remember

March 1st, 2006

linux: papierkorb (libtrash)

IT, Unix, by Ralf.

einleitung: papierkorb unter linux?title
vielen linux-usern passiert es: es wird eine datei gelöscht und diese ist *(fast) unwiderruflich weg, weil es keinen papierkorb gibt.

zwar hat der windowmanager kde auf seinem desktop einen papierkorb, doch können nur kde-programme diesen nutzen und die wenigsten tun dies auch. also müsste ein tool her, welches schon von grund auf den papierkorb implementiert. ich denke die beste lösung haben hier die entwickler von libtrash gefunden.

*(fast): man kann mit hilfe von speziellen kommandos eine festplatten-wiederherstellung starten und hoffen, dass die gelöschte datei wiederhergestellt wird. dies ist im allgemeinen nur möglich, wenn der computer sofort ausgeschaltet wird und auf der platte nicht wieder neue informationen den wichtigen bereich auf der platte überschreiben.

libtrash
libtrash ist eine shared library (gemeinsam genutzte bibliothek), die wenn sie geladen ist, auf linux-systemen die papierkorb-funktion implementiert.

installation
sie können entweder den installationsanweisungen auf der libtrash-seite folgen oder ein fertiges paket installieren – es beliebt ihnen. für schnelle, die kurzanleitung:
- herunterladen der neusten version
- die heruntergeladene datei entpacken und ggf kompilieren (dazu README lesen)
- die datei ‘libtrash.so.xx’ nach ‘/lib/libtrash.so.xx’ kopieren
-

konfiguration
die konfiguration wird nun wie folgt vorgenommen:
- die konfigurationsdatei für libtrash downloaden (siehe unten)
- die kommandozeile öffnen und als root anmelden

su

- die heruntergeladene datei nach /etc kopieren

cp libtrash.conf /etc/libtrash.conf

- ggf die datei anpassen, indem sie mit einem editor geöffnet wird

ee /etc/libtrash.conf

- sie sollten, falls noch nicht geschehen, wieder als normaler user arbeiten (nicht als root)

exit

- folgende dateien anpassen, falls sie existieren:
.bashrc – wird ausgeführt wann immer eine shell gestartet wird
.bash_profile – wird ausgeführt, wenn man sich von einem entfernten rechner einloggt
.profile – wird ausgeführt, wenn sich der user lokal anmeldet

ee /home//

- in die dateien muss nun folgender eintrag gemacht werden:

export LD_PRELOAD=/lib/libtrash.so.1

damit ist die konfiguration abgeschlossen und nach einem ab-/anmelden steht die volle papierkorb-funktion zur verfügung.

benutzung
unter dem verzeichnis /home//Trash befinden sich jetzt alle veränderten oder gelöschten dateien. sie können diese von dort wiederherstellen, indem sie einfach die gewünschte datei dorthin kopieren, wo sie sie benötigen. falls sie die vorgeschlagene konfiguration benutzt haben, hat das papierkorb-verzeichnis zwar keinen schreibzugriff (sie können dann den papierkorb nicht einfach so leeren), aber eine wichtige absicherung dafür, falls sie einmal ihr home-verzeichnis löschen sollten, nicht der papierkorb mit gelöscht wird und alle daten doch unwiederruflich weg wären. den papierkorb leeren können sie entweder als root (dann haben sie immer schreibrechte) oder mit hilfe eines einfachen scriptes automatisch. dabei werden alle dateien die älter als xx tage sind aus dem papierkorb entfernt. sie müssen das script herunterladen und einfach in das Verzeichnis /etc/cron.daily/clear_libtrash kopieren:

su

cp clear_libtrash /etc/cron.daily/clear_libtrash

beachten sie, dass sie das script natürlich ausführbar machen müssen und dem user root zuordnen:

chmod uga+x clear_libtrash
chown root:root clear_libtrash

zum schluss muss nur noch ihr home-verzeichnis angegeben werden. dazu öffnen sie die das script in einem editor:

ee /etc/cron.daily/clear_libtrash

- und ändern in zeile 15 den vorgegebenen pfad in ihren trash-pfad ab

TRASH_HOME="/home//Trash"

- übrigens, möchten sie für mehrere user den papierkorb automatisch leeren, können sie – getrennt mit leerzeichen – mehrere pfade angeben
- standardmäßig ist eine zeit von 7 tagen angegeben, nach der dateien gelöscht werden. sie können diese zeit beliebig verändern unter zeile 18:

MAX_DAYS_IN_TRASH="x"

ist doch toll dieser papierkorb ;-)

Back Top

Responses to “linux: papierkorb (libtrash)”

Comments (0) Trackbacks (0) Leave a comment Trackback url
  1. No comments yet.
  1. No trackbacks yet.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

Security Code: