[Linux] mehrere Prozesse beenden

Hallo,

mit folgendem Kommando lassen sich mehrere Prozesse gleichzeitig beenden:

ps -ef | grep prozessname | awk ‘{ print $2 }’ | xargs $1 kill -9 $1

  • Awk schneidet die zweite Zeile aus, denn darin befindet sich die PID.
  • xargs nimmt diese Werte und formatiert diese in eine durch leerzeichen getrennte Dateiliste
  • kill beendet die PID’s, die in der Liste vorkommen.

[openSUSE11.4] Keepass 2.14 mit Browserplugin

Hallo Leute,

bisher war es nur mithilfe von mono möglich, von Hand Keepass in der Version 2.x zum laufen zu bekommen. Mittlerweile gibt es ein fertiges Rpm-Package.

Dieses findet man unter software.opensuse.org. Dort gibt man als Suchbegriff keepass ein und hakt unter den Optionen “Suche auch in ‘Home’-Projekten” an.

Vorarbeiten

Vorraussetzung für die Software sind folgende Pakete:

  • xdotool
  • mono
  • mono-tools + Abhängigkeiten

Installation Keepass

  • zypper in keepass_bin-2.14-3.1.noarch.rpm

Installation Passifox-Browserplugin

Konfiguration Passifox-Browserplugin

  • Nachdem das Browser-Plugin installiert wurde, einmal den Firefox neustarten und währenddessen Keepass im Hintergrund mit der geladenen Datenbank laufen lassen
  • Beim ersten Start kommt oben eine Leiste, die besagt, dass Passifox noch nicht konfiguriert wurde, dazu auf der Leiste auf connect klicken.
  • Daraufhin wird ein Schlüssel mit der Datenbank ausgetauscht, diesem muss man noch einen Namen geben.
  • Um nun automatisch die Login Fenster ausgefüllt zu bekommen, muss man seine Datenbank entsprechend anpassen.
  • Dazu surft man zu den entsprechenden Login-Seiten, zu denen man einen Eintrag in Keepass hat und kopiert sich die genaue URL der Seite, auf der sich der Login befindet.
  • Diese URL schreibt man in das TITLE-Feld in Keepass.
  • Danach surft man die Seite noch einmal an und Passifox meldet, dass eine Seite Login-Daten anfragt.
  • Man klickt auf die Meldung und bestätigt die Anfrage mit allow und merkt sich die Entscheidung.

Damit kann man Passifox benutzen und das .NET-abhänigige Keefox-Plugin ist nicht mehr notwenig!

[openSuSE 11.4] ATI Grafiktreiber richtig installieren

Bei openSuSE 11.4 hatte ich nun schon öfters das Problem, dass der Grafiktreiber nicht richtig im System verankert wurde und dadurch der X-Server total durcheinander kommt.

Konkret hatte ich das Problem mit meinem neuen HP Notebook (Probook 6555b mit AMD Radeon HD 4250), dass nachdem ich den proprietären Treiber (fglrx) von AMD installiert hatte, beim anschließen eines externen Monitors oder zuklappen des Deckels das Notebook sich aufgehangen hat und beim nächsten booten nichtmehr hochgefahren ist.

Was ist passiert? Der X-Server erkennt ein neues Display und schreibt es nicht dorthin wo es hin soll. Das Hauptproblem hierbei ist, dass beim installieren des proprietären Treibers der mitgelieferte Treiber von xorg !nicht! deinstalliert wird. Er bleibt auch weiter aktiv. Die folge davon ist, dass sich die beiden Treiber dazwischenfunken und nichts mehr richtig läuft.

Die Lösung hierbei ist also, zuersten den Xorg-Treiber zu deinstallieren und dann den proprietären Treiber zu installieren.

Xorg-Treiber deinstallieren

  • folgende Pakete entfernen:

xorg-x11-driver-video

xorg-x11-driver-video-intel-legacy

xorg-x11-driver-video-nouveau

xorg-x11-driver-video-radeonhd

  • X-Server beenden

init 3

neuen Treiber installieren

  • ATI-Repository einhängen

zypper addrepo -f http://www2.ati.com/suse/11.4 ati

  • Treiber installieren

zypper install x11-video-fglrxG02

Das wars, neustarten und das System sollte laufen!

 

[Linux] Lokaler SMTP-Server

Ein lokaler SMTP-Server ist erforderlich wenn man beispielsweise über Cron-Jobs, welche auf den eigenen Servern laufen, informiert werden will. Doch was, wenn man keinen echten SMTP-Server zur Verfügung hat?

Hier kommt der lokale SMTP-Server ins Spiel. Dieser kann alle Mail-Anfragen an einen externen Mailserver weiterleiten. So ist es z.b möglich, sein eigenes Mail-Konto (in diesem Beispiel bei t-online) zum Senden der Mails zu verwenden.

In diesem Artikel werde ich die benötigten Schritte dazu dokumentieren.

Postfix Installation und Konfiguration

Postfix über Paketmanager installieren

sudo apt-get install postfix

Direkt im Anschluss startet sich ein Konfigurationsassistent.

Dort wählt man folgende Einstellungen. Alle nicht hier aufgeführten Einstellungen können auf Standard belassen werden.

  • Type of Mail-Configuration: Internet with Smarthost
  • SMTP-Relay-Host:smtpmail.t-online.de:25
  • Internet Protocol to use: all

Als nächstes setzt man noch die erfoderlichen Einstellungen für den SMTP-Server:

sudo postconf -e ‘smtp_use_tls = no’
sudo postconf -e ‘smtp_sasl_auth_enable = yes’
sudo postconf -e ‘smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd’
sudo postconf -e ‘smtp_sasl_security_options = noanonymous’
sudo postconf -e ‘smtp_sasl_tls_security_options = noanonymous’

Nun muss im Verzeichnis /etc/postfix eine Datei, welche die Authentifizierungsparameter für den Mail-Server enthält erstellt werden:

sudo touch /etc/postfix/sasl_passwd

Die Datei editiert man mit vi und fügt dort die Authentifizierungsinformationen nach folgendem Schema ein:

smtpmail.t-online.de username@t-online.de:PASSWORD

Zum Schluss wird das Passwordfile gehasht (dadurch wird die Datei /etc/postfix/sasl_passwd.db erstellt), das Originalfile aus Sicherheitsgründen gelöscht und der Postfix-Daemon neu gestartet.

sudo postmap /etc/postfix/sasl_passwd

sudo rm /etc/postfix/sasl_passwd

sudo /etc/init.d/postfix restart

Zum Schluss sollte man noch die E-Mail-Adresse von root setzen.

Dazu editiert man das File /etc/aliases und schreibt hinter root die gewünschte E-Mail-Adresse.

Rsync Tutorial

Hallo,

hier eine kleine Auflistung der Rsync-Möglichkeiten:

 

  • Files zu einem anderen Ordner  kopieren

rsync -a -z -v /var/www /mnt/backup

 

  • Files zu einem anderen Server kopieren

rsync -v -e ssh /var/www user@server:/mnt/backup

 

  • Files von einem Server zum lokalen Computer kopieren:

rsync -v -e ssh user@server:/mnt/backup /var/www

 

  • einen Lokalen Ordner mit einem Remote-Ordner synchronisieren

rsync -r -a -v -e “ssh -p <port>” –delete user@server:/var/www /var/www

 

  • einen Remote-Ordner mit einem lokalen Ordner synchronisieren

rsync -r -a -v -e “ssh -p <port>” –delete /var/www user@server:/var/www

 

  • einen lokalen Ordner mit einem Remote-Rsync-Server synchronisieren

rsync -r -a -v –delete rsync://<rsync_server>/bilder /home/muster/bilder

 

  • einen Ordner zwischen zwei Rechnern spiegeln

rsync -zavrR –delete –links –rsh=”ssh -p <port>” user@server:/home/lighttpd /home/lighttpd

[Xen-Server 5.6] VM-Management per Console

Zugriff auf Xen-Server: ssh als Root oder über XenCenter
Serverconsole:

  • xsconsole

 

VM-Erstellen:

  • xe vm-install new-name-label=XenCenter template=”Windows 7 (32-bit)”
  • Template ist die Vorlage für die Hardware der VM. Diese Vorlagen kann man sich auflisten lassen: xe template-list

 

ISO-Images anzeigen:

  • xe cd-list

 

ISO-Image an die VM anhängen:

  • xe vm-cd-add vm=<vm_name> cd-name=<iso_name> device=3

 

VM starten/stoppen:

  • xe vm-start vm=<vm_name>
  • xe vm-shutdown vm=<vm_name>

 

Konsole der VM per vncviewer starten (für Linux-Client):

  • vncviewer -via root@xen-host-ip localhost:1

 

Bei geändertem SSH-Port hat man die Möglichkeit die Umgebungsvariable fürs VNC-Tunneling anzupassen oder sich den Port lokal zu mappen.

 

Möglichkeit 1: Umgebungsvariable ändern:

  • export VNC_VIA_CMD=’/usr/bin/ssh -x -p <custom_ssh_port> -f -L %L:%H:%R %G sleep 2′

 

schon geht der Tunneling-Befehl ohne Angabe des Ports:

  • vncviewer -via root@xen-host-ip localhost:1

 

Anmerkung: Diese Änderung ist nur temporär. Um dauerhaft darauf zurückgreifen zu können einfach den export in die Datei .profile im Homeverzeichnis eintragen!

 

Möglichkeit 2: Port lokal mappen

  • ssh -L PORT:localhost:PORT -p ssh_port nutzer@HOSTNAME
    PORT ist hierbei der VNC Port, auf dem die VM-Konsole läuft.
  • vncviewer localhost:PORT

 

der VM ein Netzwerkinterface zuweisen:

  • xe networks-list

 

Zutreffendes Interface heraussuchen und uuid kopieren.

  • xe vif-create network-uuid=<network-uuid> vm-uuid=<vm-uuid> device=3

 

VM Klonen:

  • xe vm-clone vm=<name_vm1> new-name-label=<name_vm2>