Alte Kernel inkl. Header entfernen

Durch Zufall bin ich auf den folgenden Befehl gestoßen, um mal alle alten angesammelten Kernel meines Ubuntus zu löschen. Damit spart man sich das mühselige Eintippen.

$ dpkg -l 'linux-*' | sed '/^ii/!d;/'"$(uname -r | sed "s/\(.*\)-\([^0-9]\+\)/\1/")"'/d;s/^[^ ]* [^ ]* \([^ ]*\).*/\1/;/[0-9]/!d' | xargs sudo aptitude purge -y

Ausgeführt sieht es dann in etwa so aus:

Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut
Lese Status-Informationen ein... Fertig
Lese erweiterte Statusinformationen
Initialisiere Paketstatus... Fertig
Die folgenden Pakete werden ENTFERNT:
  linux-headers-2.6.31-10{p} linux-headers-2.6.31-10-generic{p} linux-headers-2.6.31-11{p} linux-headers-2.6.31-11-generic{p} linux-headers-2.6.31-12{p}
  linux-headers-2.6.31-12-generic{p} linux-headers-2.6.31-13{p} linux-headers-2.6.31-13-generic{p} linux-headers-2.6.31-14{p}
  linux-headers-2.6.31-14-generic{p} linux-headers-2.6.31-15{p} linux-headers-2.6.31-15-generic{p} linux-image-2.6.31-10-generic{p}
  linux-image-2.6.31-11-generic{p} linux-image-2.6.31-12-generic{p} linux-image-2.6.31-13-generic{p} linux-image-2.6.31-14-generic{p}
  linux-image-2.6.31-15-generic{p}
0 Pakete aktualisiert, 0 zusätzlich installiert, 18 werden entfernt und 0 nicht aktualisiert.
Muss 0B an Archiven herunterladen. Nach dem Entpacken werden 1.172MB frei werden.
Wollen Sie fortsetzen? [Y/n/?]

Ich spare damit ab sofort über einen Gigabyte. Feine Sache!

(via linuxundich.de)

Dezember 13, 2009 · 1 Minute

Blaustich in allen Movie Playern

Wer in VLC, Totem, mplayer also Playern, die gstreamer nutzen, einen blauen Stich im Videobild hat, der kann zum Beispiel in Totem auf Edit -> Preferences -> Display dort die Einstellungen zurück setzen.

Oktober 10, 2009 · 1 Minute

Glossar mit LaTex mittels MiKTeX

Mit Hilfe von LaTeX kann man auch einen Glossar in seine Arbeit einbinden. Das ist nicht ganz so trivial aber dennnoch möglich. Als Vorraussetzung gehe ich davon aus, dass LaTex und TeXLive installiert sind.

Laut der Anleitung der LaTeX-Community werden für das Package glossaries folgende Abhängigkeiten benötigt:

  • ifthen
  • xkeyval
  • xfor
  • amsgen (Teil von amstex)

Um die ganzen Pakete komfortabel zu installieren, benötigen wir MiKTeX. Unter debianbasierten Betriebssystemen laden wir dazu von der MiKTeX-Homepage das DEB-File herunter.

Nun wird das heruntergeladene Paket installiert:

sudo dpkg --install miktex-tools-<Versionsnummer>.deb

Jetzt haben wir MiKTeX. Damit können wir die gewünschten Pakete praktisch über die Konsole installieren:

sudo mpm --install-root=/usr/share/texmf-texlive/ --update-db
sudo mpm --install-root=/usr/share/texmf-texlive/ --install=xifthen
sudo mpm --install-root=/usr/share/texmf-texlive/ --install=xkeyval
sudo mpm --install-root=/usr/share/texmf-texlive/ --install=xfor
sudo mpm --install-root=/usr/share/texmf-texlive/ --install=amstex
sudo mpm --install-root=/usr/share/texmf-texlive/ --install=glossaries
sudo mktexlsr

Jetzt haben wir die ganzen benötigten LaTeX-Pakete installiert und können uns an unser Dokument wenden. Um ein Glossar zu bekommen, binden wir das entsprechende Paket ein:

% Glossar
% If you are also using the hyperref package, you must load the glossaries package after the hyperref package.
\usepackage[acronym,toc]{glossaries}

Zur Präambel wird noch folgender Code hinzugefügt:

%Glossar erstellen
\newglossary[slg]{symbols}{sym}{sbl}{List of Symbols}
% alle Begriffe des Glossars
\newglossaryentry{jee}{name=JEE,description={Java Enterprise Edition},first={Java Enterprise Edition (JEE)}}
\makeglossaries

Innerhalb des Dokumentenbereichs kann nun mit den Abkürzungen gearbeitet werden. Zum Beispiel fügt man an die gewünschte Stelle das Akronym ein: \gls{jee} Bei der ersten Erwähnung dieses Akronyms wird der Text ausgegeben, der unter first={} definiert wurde. Wenn das Akronym noch öfter benutzt wird, so erscheint dann nur noch der Name des Akronyms selbst.

Um nun noch den Glossar an sich auszugeben, muss an die gewünschte Stelle innerhalb des Dokumentenbereichs folgende Code eingefügt werden: \printglossaries und schon erhält man einen typischen Glossar.

Alles schön und gut, jedoch wird immernoch kein Glossar angezeigt? Dann wird das Programm makeglossaries gebraucht. Es wird bei der Installation des Paketes glossaries zwar mitinstalliert, aber man kann es nicht ohne weiteres aufrufen, da es weder ausführbar noch innerhalb des Systempfads liegt. Dem kann man aber schnell Abhilfe schaffen mittels:

sudo chmod +x /usr/share/texmf-texlive/scripts/glossaries/makeglossaries
sudo ln -s /usr/share/texmf-texlive/scripts/glossaries/makeglossaries /usr/bin/makeglossaries

Wenn man nun im Verzeichnis seines Hauptdokuments makeglossaries aufruft, werden die benötigten Dateien erstellt. Benutzt man einen LaTeX-Editor wie Kile, so kann man als Postprocessor den Befehl eintragen. Im Terminal sieht ein Aufruf dieses Befehls wie folgt aus:

makeglossaries hauptdokument

Die Endung .tex muss dabei weggelassen werden.

Quellen:

August 11, 2009 · 2 Minuten

pydf

Um eine (ascii-)grafischere Ausgabe von df zu bekommen, kann man mittels

aptitude install pydf das Programm pydf installieren

Eine Beispielausgabe:

# pydf
Filesystem  Size  Used Avail Use%                                            Mounted on
/dev/sda1  6571M 3632M 2605M 55.3 [######################..................] /
udev         10M  112k   10M  1.1 [........................................] /dev
tmpfs       474M     0  474M  0.0 [........................................] /dev/shm
/dev/sda6    64G 7879M   53G 11.9 [#####...................................] /home
tmpfs       474M     0  474M  0.0 [........................................] /lib/init/rw
Juli 23, 2009 · 1 Minute

Per SSH den falschen Rechner rebooten

Wem das auch schon mal passiert ist:

~# reboot
Broadcast message from root (pts/0) (Sat Jul 11 14:48:21 2009):
The system is going down for reboot NOW!

Und man sich anschließend denkt “Oops”, das war der falsche. Ja, dann, dann hat man molly-guard nicht installiert. Also ran da:

~# aptitude install molly-guard

Will man nun nachdem man molly-guard installiert hat den Rechner wieder per Remote-Session rebooten, so sieht das ganze wie folgt aus:

~# reboot
W: molly-guard: SSH session detected!
Please type in hostname of the machine to reboot: kelly
Good thing I asked; I won't reboot doug ...
W: aborting reboot due to 30-query-hostname exiting with code 1.

Das sieht doch schon mal gleich wieder viel besser aus. *glückgehabt*

Juli 11, 2009 · 1 Minute