Posts Tagged ‘ unix ’

Stirb, Zombie, stirb!

zombiface Stirb, Zombie, stirb! zombie wicd vlc vater unix top SIGKILL ps ax prozess kind kill dhcpd dhcpc bug arch Ein Zombie ist ein eigentlich beendeter, aber noch gelisteter Prozess.

Normalerweise müsste das Beenden eines Vater-Prozesses auch alle Kind-Prozesse sauber beenden. Klappt das aus irgend einem Grund nicht wie vorgesehen, entsteht ein Zombie.

Der Zombie belegt nur geringe Systemressourcen. Die Beseitigung von Zombies in geringer Anzahl ist eher ein ästhetisches Anliegen. Probleme für das Betriebssystem ergeben sich aus ihnen eher selten. Probleme kann es z.B. geben, wenn die Zombies in hoher Zahl auftreten.

Solchen EDV-Zombies begegnet man nicht oft. Das hat sich jetzt geändert. Gleich 2 Zombies auf einmal!

zombie.png Stirb, Zombie, stirb! zombie wicd vlc vater unix top SIGKILL ps ax prozess kind kill dhcpd dhcpc bug arch

TOP beweist: Zombies treiben ihr Unwesen im System!

Wo verstecken sich die beiden toten Untoten? Mein Jagdinstinkt ist geweckt. In der Prozessliste von ps fangen Zombies mit einem Z an…

psax zombie Stirb, Zombie, stirb! zombie wicd vlc vater unix top SIGKILL ps ax prozess kind kill dhcpd dhcpc bug arch

Entlarvte Zombies: VLC und DHCPC

Bei DHCPC handelt es sich um einen DHCP-Client. Ich nutze in diesem Szenario WICD zur drahtlosen Verbindung. Der Zombie auf diesem Arch Linux System ist vermutlich entstanden, da die Verbindung verloren ging und neu aufgebaut wurde.

Lösung: WICD neu starten:

sudo /etc/rc.d/wicd restart

Zombie verschwunden…

Nun zum VLC-Zombie. Zunächst ein plumper Anschlag mit einem Signal 15 (SIGTERM):

kill 2276

…scheitert. Etwas mehr Nachdruck vielleicht. Vielleicht ein SIGKILL?

kill -9 2276

Scheitert auch.  Obwohl dieses Signal eigentlich nicht geblockt werden dürfte. Na dann halt nicht. Schade. Zombies halten sich halt nicht an Regeln. Na ja, ein Neustart mit …

init 6

… und Auftrag erledigt. Alle Zombies tot.

Wissenswertes über Zombies

Offene Dateien mit ‘lsof’ aufspüren

folder 20110506 Offene Dateien mit lsof aufspüren unix umount squid prozess mount lsof lpic 202 lpic linux grep debugging lsof (List Open Files) ist ein hilfreiches Tool zum Aufspüren geöffneter Dateien.

In einer detaillierten Tabelle zeigt die Ausgabe von lsof Informationen über den Benutzer, die Größe und den mit der Datei assoziierten Prozess an. Ggf. muss man die Fülle an Information z.B. mit grep auf ein gesundes Maß herunterfiltern.

Manchmal weigert sich z.B. das System, einen USB-Stick auszubinden. Das Un-mounten misslingt, da “Device or Ressource busy” gemeldet wird. Um die geöffnete Datei zu finden (Beispiel für /media/USBSTICK) nutzt man:

lsof | grep USBSTICK

bash 3710 heini cwd DIR 8,17 4096 1 /media/USBSTICK
less 3986 heini cwd DIR 8,17 4096 1 /media/USBSTICK
less 3986 heini 4r REG 8,17 1874 192 /media/USBSTICK/darkice.cfg

Hier sieht man, dass die Datei darkice.cfg mit less geöffnet ist (Zeile 3). Aber auch schon alleine die Tatsache, dass man sich mit einer bash im Verzeichnis /media/USBSTICK befindet (Zeile 1: cwd=”current working directory”), kann das Un-mounten verhindern.

Mit der Option -i können offene Netzwerksockets angezeigt werden, was das Aufspüren unerwünschter Netzwerkverbindungen erleichtern kann. Die Option -n unterdrückt die (evtl. zeitaufwändige Namensauflösung)

lsof -n -i tcp

Und dasselbe nur für einen bestimmten Port (hier www)

lsof -n -i tcp:80

Eine Liste geöffneter Dateien eines bestimmten Prozesses anzeigen (vom Prozess mit PID 12345):

lsof -p 12345

Eine Liste geöffneter Dateien eines bestimmten Befehls anzeigen (hier: squid):

lsof -c squid

Alle Prozesse anzeigen, die die Datei /var/log/messagesbenutzen:

lsof /var/log/messages

Alle geöffneten Dateien eines bestimmten Benutzers anzeigen:

lsof -u nutzername

Wer benutzt das CD-ROM-Laufwerk?:

lsof /dev/cdrom

Weitere Beispiele
Sehr schönes umfangreiches Tutorial (englisch)

Perlen auf der Kommandozeile (5): bc

simple calculator 01 Perlen auf der Kommandozeile (5): bc unix terminal taschenrechner shell rechner mathematik linux kommandozeile bash

bc ist ein einfacher und schneller Taschenrechner für die Kommandozeile. Das Programm gibt es schon seit rund 20 Jahren und ist natürlich auch in Skripten einsetzbar.

Ich selbst nutze bc v.a. für einfache mathematische Operationen, wenn die Kommandozeile sowieso geöffnet ist. Das Ergebnis der Aufgabe liegt längst vor, während die grafische Alternative (im Vergleich dazu) gerade noch beginnen würde, sich überhaupt zu öffnen.

Ich habe es mir angewöhnt bc mit der Option -l zu öffnen. Ohne diese Option unterschlägt bc nämlich alle Nachkommastellen. Beispiel mit den vier  Grundrechenoperationen:

brain@holiday:~$ bc -l
bc 1.06.95
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'.
1/3
.33333333333333333333
2*4
8
67-6
61
1+2
3
quit

Chemnitzer Linuxtage 2011

Die Chemnitzer Linuxtage 2010 (Bericht) haben mir sehr gut gefallen und so hoffe ich, dass ich auch dieses Jahr die Zeit habe, diese Veranstaltung zu besuchen. Da es nur noch einen guten Monat bis dahin ist, hier ein kleiner Ausblick und ein paar zusammenfassende Informationen:

Die Linuxtage finden in der TU Chemnitz (Infos zur Anreise) am 19. und 20. März statt. Eine Eintrittskarte für das gesamte Wochenende kostet schlappe 8 Euro (4 Euro ermäßigt). Ein wahres Schnäppchen, wenn ich bedenke, mit welcher Fülle an Infos, Kontakten und Goodies wie Zeitschriften, CDs usw. ich letztes Jahr nach Hause kam.

linuxtage 2010 panorama e1297412860346 Chemnitzer Linuxtage 2011 unix ubuntu planetuu pgp OSM LPI linuxtage linux libre office chemnitz bsd

Chemnitzer Linuxtage 2010

Das Programm für das Wochenende steht inzwischen im Großen und Ganzen. Es gibt wieder viele Distributionen und Projekte, die mit einem Stand vertreten sind, darunter Ubuntu, Open Street Map, Libre Office u.v.m. .

Auch das Vortragsprogramm hat inzwischen Gestalt angenommen und dürfte wohl für jeden etwas bieten. Wie auch schon letztes Jahr gibt es wieder eine ganze Reihe von Workshops, für die eine frühzeitige Anmeldung empfohlen wird.

Weitere Infos zu Übernachtungsmöglichkeiten, PGP-Party, LPI-Prüfungen usw. findet ihr auf der Homepage der Chemnitzer Linuxtage.

Nürnberg trägt Ubuntu!

Der Höhepunkt des 19. Nürnberger Anwendertreffens der Ubuntu-Freunde war ohne Zweifel die Verteilung der speziell angefertigten Polo- und Sweat-Shirts. Zu diesem Anlass waren am Freitag (14.1.2011) im Parkrestaurant des TSV 04 Feucht rund 20 Anhänger der benutzerfreundlichen Linux-Distribution zusammengekommen.

anwendertreffen nuernberg 1 600 Nürnberg trägt Ubuntu! unix ubuntuusers ubuntu suse streamin ruby nürnberg linux konferenz franken feucht design debian anwendertreffen

Nach wochenlanger Diskussion hatten sich die fränkischen Ubunteros auf ein Design geeinigt, auf dem neben dem Logo von Ubuntu auch die eigens angelegte URL für die Hauptseite der Nürnberger Anwendertreffen erstrahlt: www.ubu-n.de.

Meist gibt es auf den monatlichen Treffen einen Vortrag (oder mehr). Dieser (“Einführung in Ruby“) fiel am Freitag kurzfristig aus. Dafür blieb aber zwischen Salat, Pommes und Hefeweizen mehr Zeit für die vielen informellen Gespräche zu allen Themen rund um Linux. Auch wenn sich primär alles um Ubuntu dreht, sind Nutzer von Suse, Debian oder anderen Linuxrichtungen auf den Anwendertreffen immer willkommen.

Nach der euphorischen Aufbruchssphase in den Jahren 2006/2007 (Video des 1. Anwendertreffens November 2006) war der Zuspruch zu den Anwendertreffen z.T. zurückgegangen – momentan sieht es so aus, als würde das Interesse wieder ansteigen. Unter den “alten Gesichtern” äußerten einige ihr Bedauern darüber, dass einige Mitglieder aus der Gründungsphase komplett von der Bildfläche verschwunden bzw. gar verschollen sind (“Nasenbär, wo bist Du?“).

anwendertreffen nuernberg 2 600 Nürnberg trägt Ubuntu! unix ubuntuusers ubuntu suse streamin ruby nürnberg linux konferenz franken feucht design debian anwendertreffen

Zunächst mal nur angedacht wurde die Durchführung einer besonderen Veranstaltung zu “5 Jahre Ubuntuusers Nürnberg” im November 2011. Ob hier ein Event mit Vorträgen stattfindet und/oder einer Feierveranstaltung stattfindet, werden die nächsten Treffen zeigen. Weitere spontane Schlagwörter für eine solche Veranstaltung waren “Streaming” und “Konferenzschaltung”, evtl. auch in Zusammenarbeit mit anderen Ubuntugruppen.

Die Nürnberger Anwendertreffen finden regulär an jedem 2. Freitag des Monats in ungezwungener Atmosphäre statt. Vom Einsteiger bis zum Profi sind alle willkommen. Wer Lust bekommen hat, auf ein Treffen zu kommen, informiert sich am Besten über den Thread oder wendet sich an einen der direkten Ansprechpartner nobby0866ba, Christian1972 (Hilti) oder sudo-1.

9. Ubuntu Anwendertreffen Nürnberg
Ubuntu Anwendertreffen (Deutschlandkarte)

Mit grep nach mehreren Begriffen gleichzeitig filtern

Aus einer Textdatei Zeilen herausfiltern, die einen bestimmten Begriff enthalten, ist ja nicht weiter ein großes Problem …

grep -i "Suchbegriff" /Pfad/zur/Textdatei.txt

… wobei das -i nur dafür sorgt, dass Groß- und Kleinschreibung nicht unterschieden werden.

Schon ein bisschen anspruchsvoller ist es, wenn man 2 oder mehrere Suchbegriffe gleichzeitig herausfiltern will, so dass z.B. jede Zeile ausgespuckt wird, die ENTWEDER Suchbegriff_1 ODER Suchbegriff_2 enthält:

grep -iE "(Suchbegriff_1|Suchbegriff_2)" /Pfad/zur/Datei.txt

grep Mit grep nach mehreren Begriffen gleichzeitig filtern unix ubuntu ssh linux grep ftp filter egrep

Genauso ginge natürlich:

egrep --colour -i "(ssh|ftp)" /etc/services

Samba: Swat für xinetd auf Debian Lenny einrichten

Viele Dienste lungern die meiste Zeit ihres Daseins ressourcenfressend im Arbeitsspeicher eines Servers herum und warten vergeblich auf eingehende Anfragen von Klienten. Einige Dienste werden deshalb ersatzweise über den “Superdämon” xinetd (Nachfolger von inetd) gestartet, der die Anfragen stellvertretend entgegennimmt und dann den eigentlich angefragten Dienst mit leichter Verzögerung startet.
Ein solcher Dienst ist Swat, eine grafische Administrationsoberfläche für Samba, die über einen eigenen kleinen Webserver (Port 931) angesprochen wird:

swat1 Samba: Swat für xinetd auf Debian Lenny einrichten xinetd windows webserver unix server samba linux lenny inetd debian admin

Für dieses Beispiel muss bereits ein funktionierender Samba-Server aufgesetzt sein. Für einen Debian-Server “Lenny” muss neben dem Paket swat auch das Paket (Oh Wunder!) xinetd installiert sein. Dessen Hauptkonfigurationsdatei liegt in: /etc/xinetd.conf . Eine einfache globale Konfiguration hierzu könnte z.B. so aussehen:

defaults
{
instances = 25
log_type = FILE /var/log/xinetd.log
log_on_success = HOST PID
log_on_failure = HOST
}
includedir /etc/xinetd.d

Die letzte Zeile weist xinetd an, auch alle Dateien zu berücksichtigen, die im Verzeichnis /etc/xinetd.d hinterlegt sind. Hier hat i.d.R. jeder Dienst – und auch Swat! – seine eigene Konfigurationsdatei. Beispiel für eine /etc/xinetd.d/swat:

service swat
{
disable         = no
port             = 901
socket_type     = stream
wait            = no
#       only_from       = localhost
user            = root
server          = /usr/sbin/swat
log_on_failure  += USERID
}

Oft liegt ja auf dem Server selbst keine grafische Oberfläche vor. Deshalb ist die Direktive “only from = localhost” auskommentiert, damit man von einer anderen Maschine auf Swat zugreifen kann. Dies geschieht über den Browser an die Serveradresse mit Portangabe, z.B. an: 192.168.1.67:901 . Der Zugang ist passwortgeschützt. Das Passwort wird unverschlüsselt übertragen. Swat sollte deshalb nur in gesicherten Netzen verwendet werden.

Wichtig bei der Konfiguration ist es, bei jeder Änderung xinetd neu zu starten bzw, die Konfiguration neu einzulesen:

/etc/init.d/xinetd reload


Zeitgesteuerter Shutdown mit GShutdown

GShutdown ist ein einfaches grafisches Tool, um den Rechner nach einer vorbestimmten Dauer automatisch herunterzufahren bzw. neu zu starten.

bildschirmfoto gshutdown Zeitgesteuerter Shutdown mit GShutdown zeit unix ubuntu shutdown planetuu open source lucid lynx linux gshutdown gnome admin

Das simple Tool für den Gnome-Desktop ist recht intuitiv zu handhaben und beschränkt sich im Wesentlichen darauf, den Rechner zu einer bestimmten Zeit anzuhalten, neu zu starten oder lediglich den Benutzer abzumelden. Das Herunterfahren wird durch ein Fenster angekündigt, so dass die Aktion ggf. abgebrochen werden kann. Zudem kann GShutdown so konfiguriert werden, dass es vor der definierten Aktion einen Befehl ausführt.

bildschirmfoto gshutdown1 Zeitgesteuerter Shutdown mit GShutdown zeit unix ubuntu shutdown planetuu open source lucid lynx linux gshutdown gnome admin

Installation für Ubuntu wie üblich mit:

sudo apt-get install gshutdown

Wer solche Dinge lieber über die Kommandozeile erledigt, findet dazu in einem früher erschienenen Artikel Hilfestellung.

Kürzlich erschienen:

Attackierend gemeldete Webseite!
notify-send: Nachrichten an den Desktop senden

notify-send: Nachrichten an den Desktop senden

Mit dem Tool “notify-send” kann man über die Kommandozeile Nachrichten an den Gnome-Desktop versenden.

Hier ein kleines Beispiel mit einer Testnachricht:

notify send notify send: Nachrichten an den Desktop senden unix ubuntu shell planetuu notify send linux libnotify kdialog gnome Desktop bash backup

notify-send sendet Nachrichten an den Desktop

Läuft z.B. ein länger andauerndes Skript, kann man sich dessen Beendigung grafisch am Desktop anzeigen lassen, ohne dass man alle paar Minuten dies manuell überprüfen muss. Um z.B. die Benachrichtigung “Backup beendet” am Desktop anzeigen zu lassen, müsste man folgende Zeile am Ende des Skripts einfügen:

notify-send "Backup beendet"

Oder man hängt obige Zeile manuell einfach als Folgebefehl an das Backupskript an:

backup.sh; notify-send "Backup beendet"

Mit der Option -t kann man noch festlegen, wie lange eine solche Nachricht (in ms) angezeigt werden soll (Standard: 5 Sekunden) – dies hat mit Ausnahme des Wertes “-t 0″ bei mir unter Jaunty jedoch nicht funktioniert. Ist der Wert 0, verschwindet die Nachricht erst dann, wenn der Nutzer dies mit “OK” bestätigt. Beispiel:

notify-send "Backup beendet" -t 0

backup beendet notify send: Nachrichten an den Desktop senden unix ubuntu shell planetuu notify send linux libnotify kdialog gnome Desktop bash backup

Nutzt man diese Option, wechselt notify-send  in einen anderen grafischen Benachrichtigungsmodus und zeigt ein richtig schönes Fenster an.

Das Tool ist in den Ubuntu-Paketquellen enthalten und ist ein Teil von libnotify-bin. Installation mit:

sudo apt-get install libnotify-bin

Das recht simple Tool hat noch ein paar Erweiterungen wie das Anzeigen von Icons. Näheres dazu in der Manpage. KDE-Nutzer sollten sich das Tool kdialog ansehen.

Rechts vor Lynx! – Knöppe bleiben wo sie sind …

Wie auf irgend nem Ent-Wickler-Block  zu lesen war, ham sich die Knöppe für Lusid schon wieder um nen Nanometer nach Lynx bewecht…
Im Erns jetz mal, das geht nich! Wenn dasso weita geht, könnt es sogar sein, dass sich die Knöppe um nen Pikometer nach Ohm bewechn könntn. Dann wirz höxte Zeit, Ùbuntù den Rückn zu kehrn und Meikrosoft Window’s Siebn zu installiern. Nee, nee, was bildn die sich ein? Machn die die Knöppe einfach auf die linke Seite!

buttons links Rechts vor Lynx!   Knöppe bleiben wo sie sind ... unix ubuntu satire open source linux humour humor GPL fun comic cartoon button 9.10 10.04

Rechts vor Lynx - wo kämen wir da hin? - Die Knöppe bleiben - wo sie sin!

Download als Wallpaper

Kürzlich erschienen:
Bitte deaktivieren Sie den Werbeblocker!
Aprilscherze – der TÜV für Medienkompetenz
skipfish in Ubuntu installieren