Kategorien
Allgemein

Neue Website

Nach gefühlen tausend Jahren bin ich von diesem unsäglichen Drupal auf WordPress umgestiegen. Drupal habe ich seit langer Zeit nicht mehr genutzt und mit WordPress mache ich der letzten Zeit immer mehr. Deshalb gabe es auch auf meiner privaten Website ein technisches Update. Endlich kann ich hier wieder spielen und wenn ich das mit den Custom Post Types noch ein bisschen auf die Reihe bekomme, dann gibt’s vielleicht sogar neue Inhalte ;-)

Kategorien
Technisches

Windows Backup auf Linux mittels rsnapshot

Windows Backup auf Linux mittels rsnapshot

(dieser Artikel ist noch nicht fertig)
Backups wird zu wenig Wichtigkeit beigemessen. Und wenn, dann werden die Backups sehr oft blind gemacht. D.h. Es werden teure Bänder benutzt weil man das halt so macht und weil das gut (enterprisy) ist. Es wird aber nie kontrolliert, ob da auch wirklich was drauf ist.

Im SOHO/KMU-Bereich geht das sowieso oft an den Anforderungen vorbei. Mit den Bändern und der Software kennt sich niemand aus und es ist schneller etwas neu eingegeben als der teure Spezialist geholt, der zurücksichern kann. Außerdem lagern die Bänder zusammen mit dem Server direkt unter der Stromverteiltung – insofern hat man bei einem Feuerchen eh das Problem nicht, etwas zurücksichern zu müssen.

Risiken und die richtige Stategie

Man muss bedenken, gegen welche Risiken man sich wie absichern will. Dazu muss man für die Risiken Lösungsstrategien bereit haben. Mann muss also nicht nur kaufen und installieren, sondern vor allen Dingen denken:

  • Was passiert, wenn jemand den Server klaut?
  • Was passiert wenn ein Virus/Grieche die Daten vernichtet?
  • Was passiert wenn ein Hochwasser den Server wegschwemmt?
  • Was passiert bei einem Feuerchen?
  • Was passiert bei einem Festplatten/Hardware-Schaden?
  • Jemand hat aus versehen was gelöscht – was nun?

Mann kann die Szenarien durchgehen und schauen:

  • Hat jemand anderes (Konkurrenz?) meine Daten?
  • Habe ich noch meine Daten von Heute/Gestern/Letztes Jahr?
  • Welche Daten sind mir verloren gegangen?
  • Wann bin ich EDV-technisch wieder einsatzbereit und wann habe ich die verlorenen Daten neu eingegeben?
  • Was kostet mich das alles im Falle eines Falles – incl. Rücksicherung, neuer Server, Ausfallzeit und z.B. einen Tag Daten neu eingeben?

Mit ein bisschen Mathematik kommt man schnell auf die richtige Backup-Strategie. Oft lautet diese, ein Festplatten-Backup auf einen Backup-Server an einen „entfernten“ Standort zu machen. Das geht billig, schnell und man kann ohnen viel Aufwand auf die Backups zurückgreifen (Im Gegensatz zum Lager der Daten auf antiquiten Bandformaten für die sich im Falle eines Falles nicht so schnell ein Laufwerk findet).

Hardlinks

I.d.R. unterscheidet man zwischen Vollbackups, inkrementellen Backups und differentiellen Backups. Bei Backups auf Festplatten kann diese Unterscheidung entfallen. Durch Hardlinks können Scripte die Vorteile aller Backup-Sorten miteinander vereinen. Das bedeutet, dass wenn mehrmals das gleiche gesichert wird (an aufeinanderfolgenden Tagen), dass dann die Dateien physisch nur einmal auf der Backup-Platte enthalten sind, jedoch so tun, als seinen sie mehrmals da. Unter Linux gibt es viele solcher Scripte, die genauso simpel wie leitungsfähig sind:

  • rsnapshot
  • faubackup
  • dirvish

Im folgenden beschreibe ich, wie man einen Windows-Rechner automatisch auf einen Linux-Rechner sichert.

Rsnapshot

Rsnapshot ist ein einfaches Tool, welches die Veränderten Daten mittels rsync über Netzwerk zieht und auf der Serverplatte Vollbackups bereitstellt, die in konfigurierbaren Tages- Wochen- und Monats-Intervallen rotieren. Der Speicherverbrauch wird dadurch mittels Hardlinks minimiert. Die Konfiguration ist Pippifax.
Das Tool läuft unter Linux. Auf dem Windows-Client braucht es sshd und rsync, welches man mittels cygwin bekommt.

Installation des Client unter Windows

Nach der Installation von cygwin (SSH und Rsync nicht vergessen):

ssh-cost-config 

konfiguriert den Dienst

cygrunsrv -I sshd -p /usr/sbin/sshd 

installiert den Dienst als Windows-Dienst

mkpasswd -cl > /etc/passwd
mkgroup --local > /etc/group

Kopiert einem die Windows-Benutzer in das cygwin, weil der sshd nicht auf die Windwos-benutzer, sondern auf /etc/passwd zugreift.
Dann kann man den Windows Dienstemanager starten und sshd starten. Wenn was nicht funktioniert, dann kann man im Windows Ereignisprotokoll nachschauen und unter /var/log/sshd.log

Installation des Server unter Linux

Kategorien
Technisches

reread partition table nach fdisk

Nach einem fdisk kommt es immer wieder vor, dass die Partitionstabelle zwar geschrieben wird, aber….

re-read of partition table failed

…man solle mal rebooten. Jetzt will man aber nicht rebooten, also muss man die Partitionatabelle im laufenden Betrieb einlesen. Das geht auf verschiedene Arten und weisen:

partprobe /dev/ice

Partprobe ist bei parted dabei.
oder:

sfdisk -R /dev/ice

sfdisk sollte ja jeder haben :-)
oder:

/sbin/blockdev --rereadpt /dev/ice

kannte ich bisher noch nicht, aber man lernt ja nie aus :-)

Quellen:

www.linuxquestions.org/questions/linux-general-1/re-read-partition-table-16586/
www.cyberciti.biz/tips/re-read-the-partition-table-without-rebooting-linux-system.html

Parted:

www.gnu.org/software/parted/index.shtml
de.wikipedia.org/wiki/GNU_Parted

Kategorien
Technisches

Schnitzelmitkartoffelsalat

Dies ist/war eine kleine Testseite bezüglich Suchmaschinenoptimierung. Sie ist ziemlich alt, aber ich möchte sie erhalten – also:

Bei Google möchte ich gerne unter dem Suchwort

schnitzelmitkartoffelsalat

auf Platz 1.

Ich war bei gugel auf Platz 1. Wie ich vermute geschah das, weil ich Links auf andere
Seiten zum Thema schnitzelmitkartoffelsalat auf meiner Seite hatte. Jetzt bin ich es nicht mehr (auf Platz 1).

In der Zwischenzeit hat:

  1. Roger auch Links (auf themenfremde Seiten, aber mit schnitzelmitkartoffelsalat-Linktext)
  2. Matthias Gutfeldt einen Link auf Roger gemacht.

Jetzt kann man natürlich leider nicht sehen, was davon mehr wirkte. Also habe ich die Links mal weggemacht und schaue, ob ich dadurch „abstürze“


Schnitzelmitkartoffelsalat 2003-03-10:

Mittlerweile bin ich nur noch auf dem 7. Platz. Es ist davon auszugehen, dass
durch das Löschen der externen Links meine Seite unbedeutender wurde.

Momentan ist Rainer auf Platz 1 – und das mit dem relativ schlechten PageRank von 3.
Die meisten hinter Ihm haben 4. Mal schauen, was er anders macht:

  • Er hat relativ viel Text auf der Seite
  • Viele Links von der Seite weg – allerdings ohne Themenbezug
  • Das Wort „schnitzelmitkartoffelsalat“ kommt in der URL vor.

So. Jetzt habe ich das Wort auch in der URL. Mal sehen was passiert.


Dadurch, dass sich die URL verändert hat ist alles durcheinander gekommen.
Google war sehr nachtragend und die „alte“ URL, die viele einkommende Links hatte, die
war noch lange unter dem Suchwort im Index. Mittlerweile hat sich die neue URL
durchgesetzt, aber nicht mehr so dolle wie die alte.


2004-05-31: Platz 20

Es wird Zeit, dass ich was mache, denn

  1. Google hat sich verändert
  2. Ich bin nur noch auf Platz 20
  3. Andere behaupten Quatsch über ausgehende Links (die wären schlecht) und ich will das widerlegen

Hier also Links auf themenverwandte Seiten:


2004-06-08: Platz 19 für schnitzelmitkartoffelsalat

OK, ein Platz ist nicht die Welt, aber es ist (nur durch ausgehende Links) besser geworden und nicht
schlechter, so wie manche behaupten. Neue Schnitzelmitkartoffelsalat-Veränderungen:

  • Das wort schnitzelmitkartoffelsalat hie und da in strong-Elemente verpackt
  • Es oben noch mal in ein h1 rein verpackt

Mal sehen, was passiert…


2004-07-20: Platz 17 für schnitzelmitkartoffelsalat

Es steigert sich :-) Ich werde mal den Titel der Seite verändern. Titel ist wichtig, aber nach berichten
in der Newsgroup wohl doch nicht soooo wichtig. Mal sehen was passiert. Der neue Titel hat mal nichts mit Schnitzelmitkartoffelsalat zu tun.


2005-01-21: Platz 20(.com) bzw. 16(.de) für schnitzelmitkartoffelsalat

Ich bin der erste von denen, die das Wort weder im Titel noch im Domainnamen haben. Für meinen interims-Titel „SMKS“ bin ich auf Platz 2 oder 3. Ich mach’s mal wieder in den Titel :-)


2005-01-27: Platz 21 (hatte mich im Titel verschrieben)

So, jetzt aber…. :-)


2005-02-14: Verschiedene Statuscodes auf verschiedene Parameter

Momentan sind sich alle etwas unschlüssig, ob man auf verschiedene Parameter (bei einer ansonsten
gleichen URL) mit verschiedenen Statuscodes reagieren kann. Während die Diskussion gerade hin und her
geht zwischen verschiedenen RFCs, deren Auslegungen, Interpretationen und Errata versuche ich einfach
mal, was Google dazu sagt :-).

Google sagt, dass verschiedene Parameter verschiedene Resourcen sind und demzufolge unterschiedlich behandelt werden


2011-07-29: Nachtrag

Wahnsinn. Gerade wollte ich die Seite weglöschen und da sehe ich, dass mittlerweile nicht nur in der deutschen Wikipedia ein Artikel über SChnitzelmitkartoffelsalat ist, sondern dass es Schnitzelmitkartoffelsalat sogar schon in die englische Wikipedia geschafft hat. Es war wohl der weltweit erste SEO-Contest bei dem ich da direkt am Anfang auf Platz 1 war. Krass. Da schreibt man quasi Geschichte und bekommt’s gar nicht mit :-)

Kategorien
Technisches

Windows auf/unter Xen

Windows auf XEN / Howto

(dieser Artikel ist unvollständig und mittlerweile veraltet)

Ich will auf einem Computer mehrere Betriebssysteme laufen lassen. Virtualisierung bietet einige Vorteile und angeblich ist das jetzt so einfach und preiswert zu machen, dass sich das ja auch für SOHO-Server anbietet. Wichtig dabei ist, dass auch Windows als Gast läuft.

Ziele der Virtualisierung

Die Zielsetzung ist dabei vielleicht etwas anders als bei den enterprisy Installationen:

  • Wir wollen weniger Kisten rumstehen habe
  • Wir wollen weniger Geld für Hardware ausgeben
  • Wir wollen weniger Lüfterlärm und weniger Stromverbrauch
  • Wir wollen unabhängiger von der Hardware sein

Es geht also nicht so sehr darum, zu verteilen, mehr darum, lediglich zusammenzufassen.

Hardware

Als Hardware bietet sich ein Server an, der Vanderpool (Intel) oder Pacifica (AMD) unterstützt. Nur mit einer dieser Techniken lässt sich Windows als Gast auf XEN betreiben. Auch wenn diese Techniken dem Prozessor eigen sind, so sollten wohl auch Chipsatz, Mainboard und BIOS sie unterstützen. Zumindest war bei mir das Vanderpool zuerst ausgeschaltet und ich musste es im BIOS anschalten:

Unter „Advanced“ gab es „Advanced Processor Options“ und dort gab es einen Eintrag „Intel (R) Virtualization Technology“ – den habe ich von „Disabled“ auf „Enabled“ gestellt. Die Standard-Prozedur von wegen Speichern und Exit und weiter reichte aber nicht: man musste den Computer ganz ausschalten, nachdem man VT aktiviert hatte.

Software

Als Debian-affiner habe ich einen Edgy Eft Server installiert. Das ist das erste Ubuntu, welches XEN von Haus aus mitliefert. Wenn einem die Distri Egal ist, dann sollte man vielleicht was andere nehmen – SuSE oder so. Auf jeden Fall werde ich irgendwann auf Feisty Fawn umsteigen müssen, denn dafür wird es dann wohl wieder etwas länger Support und Updates geben als für Edgy.

Installation von XEN

Installation von XEN ist einfach. Wenn man mit einem „apt-cache search xen“ sucht, dann kommt nicht viel dabei heraus, denn XEN liegt in universe, und das ist standardmäßig erst mal nicht aktiviert. Man muss also in der /etc/apt/menu.lst universe „entkommentieren“. Dann mit einem apt-get update aktualisieren, dann geht’s.

Man schaut mit apt-get search xen nach, was es so gibt und installiert alles, was sich gut anhört. Ich habe folgendes installiert:

apt-get install xen-ioemu-3.0 xen-hypervisor-3.0-i386-pae xen-image-xen0-2.6.17-6-server-xen0 bridge-utils

xen-ioemu-3.0 – XEN administrative tools

Das ioemu scheint irgendwie etwas zu sein, dass den Gästen hilft, auf die Hardware zuzugreifen. Folgende Infos habe ich gefunden:

The userspace tools to manage a system virtualized through the XEN virtual machine monitor. This package includes the utilities required to support HVM domains, which allows full virtualization of unmodified operating systems, such as Microsoft’s Windows product line, and standard Linux kernels. For this to work, you will need a CPU with hardware virtualization support, such as Intel’s CPUs with VT, or AMD’s CPUs with Pacifica.

xen-hypervisor-3.0-i386-pae The XEN Hypervisor for i386 (pae enabled version)

Das ist das eigentliche XEN Hypervisor. Ich installiere das mit PAE, weil das zu dem Dom0-Kernel passen muss, und der hat bei mir auch PAE. PAE ist irgendwas von wegen braucht man mit viel RAM oder so :-) de.wikipedia.org/wiki/Physical_Address_Extension

xen-image-xen0-2.6.17-6-server-xen0 – Linux xen kernel binary image for version 2.6.17

Das ist mein Kernel für Dom0. Dom0 ist quasi das „Wirtsbetriebssystem“. Da bringt der mir schon eine Meldung:

Please manually create an initrd image 

Mist. Wie ging das noch mal?

bridge-utils

Das Zeug brauchen wir später um eine Netzwerkverbindung zwischen den Domains auf die reihe zu bekommen. Aber zuerst mal zum initramfs

Zuerst bearbeite ich mir mal die /boot/grub/menu.lst um XEN booten zu können:

### END DEBIAN AUTOMAGIC KERNELS LIST
title           xen
root            (hd0,0)
kernel          /boot/xen-3.0-i386-pae.gz noreboot
module          /boot/xen0-linux-2.6.17-6-server-xen0 root=/dev/sda1 ro quiet splash
module          /boot/initrd.img-2.6.17-6-server-xen0

und weil 3 Sekunden für arme Sysadmins viel zu schnell sind (sprich: 3 Sekunden reichen nicht, um das Stück Pizza zur Seite zu legen), ändern wir noch (ganz oben in der Datei):

timeout         10

Dann mache ich mir die initrd:

update-initramfs -c -k 2.6.17-6-server-xen0 

c steht für create, k sagt: „jetzt kommt die Versionsangabe“.

Wenn alles geklappt hat, dann bootet man nach einem „init 6“ keinen „normalen“ Kernel mehr, sondern den XEN-Kernel. Beim Booten muss man dazu aber innerhalb der 10 Sekunden die ESC-Taste drücken. Nur so kommt man in das Grub-Menü, in dem man den Kernel auswählen kann. Ansonsten landet man wieder im „Normalen“ OS.

Das ursprüngliche Betriebssystem ist dann „Dom0“. Man merkt schon an den Nachrichten, die beim Booten auf dem Bildschirm erscheinen, dass jetzt etwas anders ist.

Wenn alles geklappt hat, dann kann man mit einem „/etc/init.d/xend start“ den XEN-Daemon starten und dann mit „xm list“ nach den aktuell laufenden Domains schauen:

Name                                      ID Mem(MiB) VCPUs State   Time(s)
Domain-0                                   0     1895     2 r-----     14.5

Wie erwartet läuft nur eine Domain: unser „Wirtssystem“ „Dom0“. Aber das können wir ja Ändern.

Installation von Gastbetriebssystemen

Tutorials für Spezial-Linuxe als Gast gibt es en masse, Anleitungen für HVM (Windows) eine ganze Ecke weniger. Wenn man nach Anleitungen sucht, dann ist es wichtig, das immer auf HVM einzugrenzen.

Haken: XEN sind keine gescheiten Fehlermeldungen zu entlocken. Das führte bei mir zu einem ganzen vollen Tag Zeitverlust nur Aufgrund eines Tippfejlers.

Oft war weder einem „xm dmesg“ noch /var/log/xen etwas gescheites zu entlocken.

Was ich empfehlen kann: Windows Boot-CD auf Festplatte kopieren. Das ist viel schneller als von der CD zu installieren:

dd if=/dev/cdrom of=/haumichblau/wincd.iso

dauert nicht lange, weil die cd in einem Rutsch gelesen werden kann. Auf das ISO kann dann in der Konfigurationsdatei der VM zugegriffen werden. Also erstelle ich mir eine Konfigurationsdatei für die VM unter /etc/xen/auto/win.xm

# Kernel ist der HVM-Loader. 265MB RAM sollten zum testen reichen
kernel  = '/usr/lib/xen-ioemu-3.0/boot/hvmloader'
builder = 'hvm'
memory  = '256'
device_model='/usr/lib/xen-ioemu-3.0/bin/qemu-dm'
# Laufwerke
disk    = [ 'file:/haumichblau/windisk.img,ioemu:hda,w','file:/haumichblau/wincd.iso,ioemu:hdc:cdrom,r' ]
#disk    = [ 'phy:/dev/hda,hda,r' ]
# Hostname
name    = 'annika'
#  Networking
#dhcp = dhcp
vif = ['type=ioemu, bridge=xenbr0']
# Behaviour
boot='d'
vnc=0
vncviewer=0
sdl=1

Damit Sollte die VM vom CD-Rom-ISO booten. Die letzten 3 Zeilen sind vielleicht interessant: Man hat quasi die Auswahl zwischen sdl und vnc. Wenn man eh ein Klickibunti auf seinem Server hat, dann kann man mit sdl die VM in einem Fenster sehen. Wenn man auf seinem Server aber kein Klickibunti hat, dann kann man mittels vnc sich die ganze Chose von einem anderen Rechner aus anschauen. Dazu sollte man aber in der /etc/xen/xend-config.sxp noch die Zeile

(vnc-listen '0.0.0.0')

am Ende so editieren, sonst geht das (in der Standardeinstellung) nur von localhost aus und damit kämen wir vom regen in die Traufe.

Zu den Festplatten/CD-Roms:

Wir haben da zwei definiert: ‚file:/haumichblau/windisk.img,ioemu:hda,w‘ und ‚file:/haumichblau/wincd.iso,ioemu:hdc:cdrom,r‘. Nehmen wir das ausseinander: file:/haumichblau/windisk.img ist eine noch nicht existierende Datei. Alternativ könnten wir auch eine Partition angeben. ioemu:hda bedeutet, dass man der VM ein hda (erste Festplatte) vorgaukelt und das w steht dafür, dass man darauf auch schreiben darf. file:/haumichblau/wincd.iso ist unser ISO-Image, dass wir gemacht haben, mit ioemu:hdc hängen wir das quasi „als Master an an den zweiten IDE-Port“ und das r steht für nur lesenden Zugriff.

Fehlt eigenlich nur noch die Datei für die Festplatte:

dd if=/dev/zero of=/haumichblau/windisk.img bs=1024k seek=4096 count=0 

Netzwerk fehlt uns noch. Wir greifen zwar in der VM schon drauf zu, aber wir sollten das in der /etc/xen/xend-config.sxp auch noch aktivieren. Dazu habe ich geschaut, dass das (network-script network-dummy) auskommentiert war und stattdessen das (network-script network-bridge) entkommentiert. (vif-script vif-bridge) war glaube ich schon aktiv.

Nach der Veränderung sollte man den xend neu starten.

Dann sollten wir die VM mittels „xm create /etc/xen/auto/win.xm“ starten können. Von einem anderen Computer können wir uns dann mit VNC auf Port -äh- 5900(?) verbinden. Nach dem ersten Teil der Installation bittet uns unser Windows darum, die CD aus dem Laufwerk zu nehmen. Wir machen das, indem wir in der Konfigurationsdatei der VM den Eintrag „boot“ auf c ändern. Dann können wir mit einem beherzten „xm destroy annika“ unsere VM ausschalten (annika ist der Name, den wir in der Konfigurationsdatei festgelegt haben) und mit einem „xm create /etc/xen/auto/win.xm“ wieder starten.

Zeit

> 5. Unser Uhrzeit-Problem 
[...]
>> Note that the wall-clock time exported
>> by Xen is UTC --- all domains must have appropriate timezone handling
>> (i.e. a correct /etc/localtime file).
Was die 2 Stunden erklärt. Man könnte dem Windows vielleicht einfach sagen, dass es in [ Greendings steht?
>> A:If you want each
>> domain to keep its own time, there are two ways to cause a domain to
>> run its wallclock independently from Xen: 1. Specify
>> 'independent_wallclock' on the command line. 2. 'echo 1
>> >/proc/sys/xeno/independent_wallclock'
>>
>> To reenable tracking of Xen wallclock: 1. 'echo 0
>> >/proc/sys/xeno/independent_wallclock'
...oder so.

Disk-Images

Die festplatten werden in Dateien oder Partitionen emuliert. Diese kann man aus dem Hostbestriebssystem nicht so einfach mounten. Wenn man die Gastfestplatte z.B. unter /dev/sda1 hat, dann zeigt einem ein fdisk /dev/sda1 auch schön die Partitionen an, die darin sind, aber /dev/sda1p1 etc. lassen sich nicht einfach mounten: mount meldet

mount: /dev/sda1p1 is not a valid block device

Dazu braucht man dann lomount oder kpartx, aber wo bekommt man das her? Nirgendwo zu finden, bei Edgy ist es nicht dabei. Irgendwann habe ich dann das Binary www.minimix.ch/debian-live/files/lomount vom Bojovic Dragan genommen. Nicht das ich den kennen würde oder so, aber das ist einfach das einzige, was ich gefunden habe.

Hilfreiche Links

XEN Manual:
www.cl.cam.ac.uk/research/srg/netos/xen/readmes/user/user.html
HVM Beispiel für unter SuSe:
en.opensuse.org/Xen_Full_Virtualization_Example
In Deutsch!
www.iku-ag.de/opensource/xen-auf-sles.jsp
Beispiel für Edgy:
help.ubuntu.com/community/XenVirtualMachine/XenOnUbuntuEdgy
Schlechte IO-Performance unter Windows?
lists.xensource.com/archives/html/xen-users/2007-01/msg01101.html ff

Kategorien
Technisches

Skype verbraucht viel Traffic

Tagebucheintrag vom 2007-02-22:

Gerade habe ich mich gewundert, wieviel Traffic ich habe. Die ganze Zeit so um die 8KB. Byte, nicht Bit und pro Sekunde, nicht Minute. Außerdem Eingehend und ausgehend.

Ein kurze Analyse brachte zu Tage: Skype hat ständig um die 4000 Verbindungen zu anderen Computern offen und verbrät damit hochgerechnet um die 40GB Traffic im Monat.

Wie ich herausfand bin ich offensichtlich zu einem sogenannten „Supernode“ heraufgestuft worden und habe für Gott und die Welt das „Fräulein vom Amt“ gespielt. Habe ich ja im Prinzip nichts dagegen, aber das war mir dann doch ein bisschen heftig.

Ich habe das Port-Forwarding am Router abgeschaltet und somit bekommt Skype jetzt keine eingehenden Verbindungen mehr ab. Jetzt ist Feierabend :-)