Artikel in Kategorie "Linux"
Mittwoch, 4. November 2009
Shell-History nicht speichern
Normalerweise werden die in einer Linux-Shell ausgeführten Befehle unter ~/.bash_history o.ä. dauerhaft gespeichert. Manchmal gibt es aber auch Gründe dafür, dies zu unterbinden (z.B. Sicherheit oder Datenschutz). Wie so oft, gibt es auch hierfür viele Möglichkeiten. Ich werde im Folgenden daher nur auf zwei davon eingehen.
Artikel vollständig lesen »
Montag, 20. Juli 2009
Crontab-Dateien sichern und wiederherstellen
Sicher ist es dem einen oder anderen schon einmal passiert: Man hat über crontab -e Cronjobs definiert und möchte an diesen etwas ändern. Nach der Änderung stellt man fest, dass es nicht so funktioniert, und möchte die Änderungen rückgängig machen. Unglücklicherweise hat man aber so viel geändert, dass man nicht mehr genau weiß, wie es davor war.
Aber zum Glück macht man ja regelmäßige Backups des Systems, weshalb die alte Version ja noch nicht ganz verloren sein dürfte. Doch dann stellt sich die Frage, wo die so definierten Cronjobs im Dateisystem abgelegt werden.
Die Antwort hierzu ist jedoch ganz einfach: Im Verzeichnis /var/spool/cron/crontabs/ gibt es für jeden User eine Datei, in der dessen Cronjobs hinterlegt sind. Stellt man die betreffende Datei dann aus dem Backup wieder her, so sind die Cronjobs wieder auf dem Stand vor den Änderungen.
Aber zum Glück macht man ja regelmäßige Backups des Systems, weshalb die alte Version ja noch nicht ganz verloren sein dürfte. Doch dann stellt sich die Frage, wo die so definierten Cronjobs im Dateisystem abgelegt werden.
Die Antwort hierzu ist jedoch ganz einfach: Im Verzeichnis /var/spool/cron/crontabs/ gibt es für jeden User eine Datei, in der dessen Cronjobs hinterlegt sind. Stellt man die betreffende Datei dann aus dem Backup wieder her, so sind die Cronjobs wieder auf dem Stand vor den Änderungen.
Samstag, 9. Mai 2009
Mehrfach vergebene Partitions-UUID
Unter Ubuntu und anderen Linux-Distributionen werden für die Identifizierung von Festplatten-Partitionen mittlerweile meist so genannte UUIDs verwendet. Da dabei jeder Partition eine (zumindest theoretisch) eindeutige ID zugewiesen wird, vereinfacht dies oft die Arbeit. Dies macht sich insbesondere dann bemerkbar, wenn man Änderungen an der Hardware vornimmt, da UUIDs im Gegensatz zum herkömlichen Bezeichnung (z.B. /dev/sda3) stets gleich bleiben.
Doch so groß der Vorteil von UUIDs ist, so leicht kann es damit auch zu Problemen kommen. Vor einem Upgrade von Ubuntu 8.10 auf 9.04 wollte ich zur Sicherheit meine System-Partition duplizieren. Mittels dd war dies einfach und ohne Probleme möglich. Nach dem Upgrade wurde jedoch plötzlich wieder das alte System gestartet, obwohl diese Partition im Dateisystem nirgendwo gemountet oder im GRUB hinterlegt war. Nach langer Fehlersuche bin ich schließlich darauf gekommen, dass beim Kopieren der Partition auch deren UUID mitkopiert wurde, so dass ich zwei Partitionen mit der gleichen UUID hatte. Das musste natürlich unweigerlich zu Problemen führen.
Lösen lässt sich dies, indem man für eine der beiden Partitionen eine neue UUID vergibt. Dies kann mittels tune2fs folgendermaßen gemacht werden:
Dadurch gibt es die bisher doppelt vergebene UUID nur noch einmal, so dass das bisherige Fehlverhalten nicht mehr auftritt.
Doch so groß der Vorteil von UUIDs ist, so leicht kann es damit auch zu Problemen kommen. Vor einem Upgrade von Ubuntu 8.10 auf 9.04 wollte ich zur Sicherheit meine System-Partition duplizieren. Mittels dd war dies einfach und ohne Probleme möglich. Nach dem Upgrade wurde jedoch plötzlich wieder das alte System gestartet, obwohl diese Partition im Dateisystem nirgendwo gemountet oder im GRUB hinterlegt war. Nach langer Fehlersuche bin ich schließlich darauf gekommen, dass beim Kopieren der Partition auch deren UUID mitkopiert wurde, so dass ich zwei Partitionen mit der gleichen UUID hatte. Das musste natürlich unweigerlich zu Problemen führen.
Lösen lässt sich dies, indem man für eine der beiden Partitionen eine neue UUID vergibt. Dies kann mittels tune2fs folgendermaßen gemacht werden:
tune2fs -U random [Partition]
# Beispiel:
tune2fs -U random /dev/sda3
Dadurch gibt es die bisher doppelt vergebene UUID nur noch einmal, so dass das bisherige Fehlverhalten nicht mehr auftritt.
Samstag, 18. April 2009
Startskripte bequem zu den einzelnen Runlevels hinzufügen
Wenn man auf einem Linux-System beispielsweise ein eigenes Startscript erstellt hat, das beim Systemstart automatisch ausgeführt werden soll, legt man dieses typischerweise unter /etc/init.d/ ab. Allein dadurch wird es natürlich noch nicht automatisch ausgeführt. Dazu muss noch in den entsprechenden Verzeichnissen der verschiedenen Runlevels ein symbolischer Link angelegt werden.
Artikel vollständig lesen »
Samstag, 6. Dezember 2008
Apache-Weiterleitung mittels RedirectMatch
Wenn in meinem Blog ein Kommentar zu einem Eintrag geschrieben wird, werde ich über diesen per E-Mail benachrichtigt und muss diesen erst manuell freischalten. Dazu gibt es in der Benachrichtigung entsprechende Links, über die der jeweilige Kommentar direkt freigeschalten bzw. gelöscht werden kann.
Seitdem ich meine Admin-Oberfläche über HTTPS aufrufe, habe ich dabei jedoch das Problem, dass die Links nicht mehr funktionieren, da diese mit http:// angegeben sind. Also musste ich den Link bisher immer korrigieren. Da ich das aber ziemlich umständlich finde, habe ich nach einer Lösung gesucht und bin dabei auch schnell fündig geworden.
Artikel vollständig lesen »