Artikel der Kategorie

Linux


Howto: Xen Loop Disk Image vergrössern

hdd Howto: Xen Loop Disk Image vergrössernWin4lin, KVM, QEMU, Virtualbox und Xen sind viel genutze Techniken zur Server Virtualisierung. Oft wird bei virtuellen Servern, auch genannt VServer, ein sogenantes Loop Filesystem mit einer etwas kleineren Grösse genutzt. 1 GB ist groß für eine einzelne Datei, aber nicht groß genug, wenn die Datei als ein ganzes Filesystem dienen soll.

Schnell merkt man das die Größe der Festplatte nicht mehr ausreicht und der freie Speicherplatz wird immer geringer. Was also tun? Zum Glück kann man ein Loop Device problemlos vergrössern. Die folgende Anleitung beschreibt, wie man auf Linux-Systemen ein solches Loop Disk Image vergrössern kann, sofern man das ext2 oder ext3 Filesystem nutzt (Unter ext4 sollte dies ebenso laufen, wurde allerdings noch nicht getestet).

1. Virtuellen Server stoppen, der das zu vergrößernde Loop Device nutzt

2. Falls genügend Platz vorhanden ist, Backup des aktuellen Loop Devices erstellen mit:

# cp loop_image_file loop_image_file.backup

3. Folgenden Befehl zum Vergrössern des Loop Devices bzw. der Loop Disk Image nutzen:

# dd if=/dev/zero bs=1024k count=1024 >> loop_image_file

Anstatt “loop_image_file” den Pfad zu Eurem Loop Disk Image nutzen. der Befehl fügt dem Image 1 GB Platz hinzu. Möchte man mehr Platz hinzufügen, ändert man einfach den count-Paremeter entsprechend des gewünschten Platzes. Unbedingt sicher gehen, das der zweifache (also hinzufügende) Redirector >> genutzt wird und nicht der einfache >. Sonst würde das File einfach überschrieben werden (deshalb auch zur Sicherheit unser Backup :-).

4. Plattencheck auf das neue vergrösserte Filesystem ausführen:

# e2fsck -f loop_image_file

5. Filesystem mit folgendem Befehl vergrössern bzw. auf die Grösse anpassen

# resize2fs loop_image_file

6. Virtuellen Server starten.

Jetzt sollte auf dem VServer beim Ausführen von “df” mehr Platz zur Verfügung stehen.

Das ist eine Übersetzung des Original-Posts "Howto: Resize Xen Loop Disk Image".

Post to Twitter Post to Delicious Post to Facebook

Crontab Tutorial und Syntax: Cronjobs unter Linux einrichten und verstehen

cronjob Crontab Tutorial und Syntax: Cronjobs unter Linux einrichten und verstehenMit Hilfe von Cronjobs können auf Unix- und Linux-Systemen Vorgänge automatisert und zu einem bestimmten Zeitpunkt immer wiederkehrend ausgeführt werden. Diese Vorgänge können einzelne Befehle, Shell-Scripts, Programme, PHP- und sonstige Scriptsprachen-Scripts oder auch eine Anreihung von Linux-Befehlen sein. Beispielsweisse werden Backups, die täglich oder sogar stündlich geschehen sollen meist per Cronjob ausgeführt.

Weiterlesen >>

Post to Twitter Post to Delicious Post to Facebook

3 Linux-Befehle um Performance-Probleme in Ruby on Rails Applikationen zu finden

Passend zu meinem Artikel zum Zählen und summieren in Logfiles unter Linux, gibt es einen interessanten Artikel von Effectif.com, in dem beschrieben wird, wie man Performance-Probleme in Ruby on Rails eingrenzen bzw. finden kann:

3 Unix commands for finding performance problems

Post to Twitter Post to Delicious Post to Facebook

rsync error: remote command not found

Möchte man ein Verzeichnis auf einen anderen Server übertragen, nutzt man hierfür unter Linux den Befehl rsync. Rsync muß auf beiden Servern, also den lokalen und entfernten Maschinen, vorhanden sein. Ist rsync auf dem Remote-Server nicht installiert, kommt eine solche oder ähnliche Fehlermeldung:

bash: line 1: rsync: command not found
rsync: connection unexpectedly closed (0 bytes received so far) [receiver]
rsync error: remote command not found (code 127) at io.c(453) [receiver=x.x.x]

Hat man keinen Root-Zugriff auf dem Remote Server, so stellt dies kein Problem dar. Rsync kann auch ganz leicht im eigenen Home-Verzeichnis installiert werden. Hierfür geht man einfach auf die rsync-Webseite unter http://samba.anu.edu.au/rsync/ und lädt sich die aktuelle rsync-Version (in diesem Beispiel 3.0.6) herunter, entpackt und kompiliert diese:

wget http://samba.anu.edu.au/ftp/rsync/src/rsync-3.0.6.tar.gz
tar -xvzf rsync-3.0.6.tar.gz
cd rsync-3.0.6
./configure --prefix=/pfad/zu/deinem/homedir
make

Und schon hat man eine lauffähige rsync-Version installiert und muß nun noch in der .bashrc oder .cshrc den entsprechenden Pfad hinzufügen:

vi ~/.bashrc

Folgende Zeile einfügen:

export PATH=$PATH:/pfad/zu/deinem/homedir/rsync-3.0.6

Anstatt /pfad/zu/deinem/homedir natürlich den Pfad zu deinem Homeverzeichnis.

Jetzt kann man ganz normal vom entfernten Rechenr den rsync starten

rsync -e ssh -avzr remoteserver:~/wasauchimmer/ /lokaler/pfad/wasauchimmer/

Das funktioniert natürlich nicht nur mit rsync, sondern auch mit anderen Tools, die ansich kein Root-Recht zum installieren benötigen.

Post to Twitter Post to Delicious Post to Facebook

Lustige Linux Kommandos & Befehle

terminal smiley Lustige Linux Kommandos & BefehleAls Linux-Sysadmin hat man viel mit Befehlen zu tun. Befehlsempfänger ist eine sogenannte Shell, auf der man in einer Eingabezeile die Kommandos eingeben kann.
Ab und zu laufen einem lustige Befehle über den Weg, die oft auch als Eselsbrücke dienen. Eine kleine Auflistung möchte ich hier starten.

Hast du auch lustige Befehle?
Bitte schicke Sie mir oder schreib Sie in die Kommentare, ich werde Sie dann der Liste hinzufügen. Vielen Dank!

Liste lustiger Linux/Unix-Kommandos

Durch die Blume:

bash:~# netstat -tulpen

Wenn man hungrig ist:

bash:~# ps haxen

Linux will keine Liebe machen:

bash:~# make love
make: *** No rule to make target `love'. Stop.

Krieg zum Glück auch nicht:

bash:~# make war
make: *** No rule to make target `war'. Stop.

Ohne Widerrede dagegen wird folgendes ausgeführt:

bash:~# touch me

Versaut geht es gar nicht:

bash:~# %blow
-bash: fg: %blow: no such job

Keine Anleitung für Frauen.

bash:~# nice man woman
No manual entry for woman

Funny

bash:~# \(-
-bash: (-: command not found

Ne Runde schlafen:

bash:~# while true; do sleep 1; done

Und weg:

bash:~# ex - und hopp
2 Dateien zur Bearbeitung

Einfach mal Klamotten zählen:

bash:~# socklist

Linux ist auch kein Geldesel:

bash:~# find money
find: money: No such file or directory

Wichtige Befehlsfolge:

unzip, strip, touch, finger, grep, mount, fsck, more, yes, fsck, fsck, fsck, umount, sleep

Quellen:
http://www.linuxfocus.org/Deutsch/July1999/article104.html
http://www.tbi.univie.ac.at/~ronke/FUN/unix.html

Post to Twitter Post to Delicious Post to Facebook

Linux Bash Snippet: Einträge in Logfiles zählen und summieren

Heute ein kleines Sysadmin-Helferlein aus der Kategorie “Hilfreiche Befehle für Linux, Bash und Co“. Hier möchte ich in Zukunft nützliche Kommandos, Einzeiler und Snippets für die tägliche Arbeit mit Linux als Sysadmin posten. Grund-Kenntnisse in Linux über z.B. Pipes usw. sollten vorhanden sein. Viel Spaß!

Oft ist es notwendig aus einem System-Logfile, Daten wie Befehle, Dateinamen, User-Agents, Zeiten oder was auch immer zu zählen, zu summieren und zu sortieren. Möchte man zum Beispiel wissen, welcher Befehl auf einem Webserver am meissten aufgerufen wurde, reicht ein Einzeiler:

cat access_log | awk '{print $6}' | sort | uniq -c | sort -nr | less

Was hier passiert, möchte ich kurz erklären:

Weiterlesen >>

Post to Twitter Post to Delicious Post to Facebook