1&1 Root-Server, Plesk und andere Gemeinheiten

Da hat man einen Root-Server bei 1und1 und freut sich, hey, super, root-Zugriff auf einer Kiste – sogar eine dedizierte Kiste, nich sowas vserveriges. Und dann ist da ein SuSE Linux 9.1 und ein Plesk drauf. Da freut sich der unbedarfte Neuadministrator. Doch vorsichtig, ein bisschen Wartungsaufwand hat man auch hier.

Wir haben seit einiger Zeit so einen Server und bisher lief das mit Plesk als Frontend zur Serveradministration auch recht schoen und einfach. Doch irgendwann stellten wir fest, dass ein Anonymous-FTP lief. Normal durfte das nicht und war auch nicht geplant. Um den wieder richtig loszuwerden und damit einhergehend auch gleich noch ein ServerUpgrade zu machen, beschlossen wir, ein Neuinstallation durchzufuehren.

Gesagt getan: ueber das wunderbare Plesk wurden Backups angestossen, die dann auf einen anderen Server wanderten (ftp). Soweit so gut. Man denkt sich: Danach installier ich wieder ein SuSE (ein 9.3) und ein aktuelleres Plesk (8.0.0). Das tut auch alles. Das grosse Problem kommt aber erst noch: Mein Bruder hat ein Backup, das wiegt 13GB, ich habe eins, das hat 3.5GB. Alles zusammen aber mehr, als die Partition zur Verfuegung stellt, auf das das ganze spaeter soll. Hmmm, da bauen die bei 1&1 ja ein reichlich haessliches Zeug zusammen.
Die Partitionen sahen ungefaehr so aus – genau weiss ich es leider nicht mehr.

/ hatte etwa 01 GB
/srv hatte 15 GB
/home hatte ca. 15 GB
Swap hatte etwa 2 GB

Der restliche Festplattenplatz der 40GB lungerte auch noch in irgendeiner Partition herum. Was also tun? Die Wiederherstellung allein einer Domain haette den Platz fast gesprengt. Also war guter Rat erstmal teuer, wobei gar nicht :) Einfach das Rescue-debian (2.6er Kernel) ueber den 1&1-Kundenlogin booten und dann die Partitionen zusammenlegen. Ich habe den swap geloescht (fdisk) und einfach ne neue Partition dadrin erstellt. Die hatte 2 GB, das reichte. mit mkfs.xfs erstellt man dadrauf nun ein XFS.

Dann in /mnt mehrere Ordner fuer hda1 bis hda8 und einen mnt erstellt. Danach dann die neue Partition nach /mnt/mnt gemountet (klingt nach Schwachfug, is aber egal :) ) Ebenso alle andere Ausgangspartitionen gemountet (soweit es eben geht). Danach dann auf dieser Partition ein /srv, /home, /var, /usr erstellt. Wenn man die Wurzelpartition des Servers gefunden hat und irgendwo gemountet, sucht man sich aus der fstab (z.B. /mnt/hda1/etc/fstab) welches Device /srv, welches nach /home, /var, /usr gemountet wurde und merkt sich dies. Nun mountet man sie in die entsprechend vorher in /mnt erstellten Ordner. Jetzt erfolgt viel Kopiererei.

Fangen wir mal mit dem Ziel /srv an. Da wir fuer den neuen Server schon einen Ordner /srv in /mnt/mnt/srv erstellt haben, kopiert man mit cp -av /mnt/hdaX/* /mnt/mnt/srv
Die selbe Prozedur fuehrt man fuer die anderen Ordner durch. Nun hat man alle Dateien auf der Ex-Swap-Partition und die anderen Partitionen sind quasi ueberfluessig.
Alles unmounten (bis auf /mnt/mnt) und loescht nun mit fdisk die erweiterte Partition und erstellt stattdessen eine einzige grosse. Hier wieder mit mkfs.xfs formatieren, dann nach /mnt/hdaX mounten. wieder mit cp -av /mnt/mnt/* /mnt/hdaX alles noetige kopieren. Nun sind die Daten auf der grossen Partition.

Wer sich denkt, da fehlt doch noch was: richtig gedacht! Swap muss noch wieder her (also /mnt/mnt wieder unmount) und mit fdisk dadraus wieder swap bauen. Dann folgt ein mkfs.swap (oder wie das mopped heisst). Anschliessend die / des Servers mounten nach /mnt/hdaX. Das fast letzte, was wir noch aendern muessen is ja die alte fstab, damit er die mountpoints auch wiederfindet. Also wird einfachlichst die neue fstab eingerichtet:

/dev/hda1 / ext3 defaults 1 1
/dev/hda2 none swap sw
/dev/hda4 /mnt xfs defaults,usrquota 0 2
devpts /dev/pts devpts gid=5,mode=620 0 0
none /proc proc defaults 0 0

hda1 ist das alte Wurzeldateisystem (sollte sich nicht veraendert haben),
hda2 ist der swap, den ich zum daten zwischenlagern misshandelt habe – am ende aber wieder zum swap gemacht,
hda4 ist die neue grosse partition
(und das tmpfs hab ich gekillt)

So ausgeruestet, hat man ein schoen grosses, zusammenhaengendes Datengrab. Fehlt noch eins: Symlinks auf /
Vorher wurden die Ordner ja alle ueber Eintraege in der fstab gemountet. Da die Ordner jetzt aber alle in /mnt liegen, findet das System sie nicht mehr ohne weiteres. Also loescht man in /mnt/hdaX (das spaetere /) einfach /srv, /home, /usr und /var und erstellt einfach symlinks nach /mnt/srv, /mnt/usr,…. Und voila, rebooten :D

Wer sich jetzt fragt, warum der Apache nicht laeuft, der muss noch FollowSymlinks einstellen. das geht in /etc/apache2/httpd.conf. Man sucht sich folgende Zeile:

# forbid access to the entire filesystem by default

und fuegt dort in den Directory-Absatz die Zeile Options +FollowSymLinks ein. Danach den Apache restarten – fettig!

Das Problem, dass Plesk 7.5.4 Backupdateien nun inkompatibel zu Plesk 8.0.0 sind, haben wir auch geloest bekommen. Es gibt ein Tool, dass sich mpack (munpack) schimpft, damit kann man den kram auspacken und erhaelt nicht-benannte tar.gz Archive. mit file partX bekommt man jedoch recht einfach raus, was das denn alles is. Zu beachten ist allerdings, dass das riesige Archiv meines Bruders NICHT auspackbar war. Dementsprechend waren seine Daten … futsch (wenn er nicht einer der wenigen gewesen waere, von denen ich ein Backup per Hand hatte :) ) Also bei extrem grossen http(s)docs immer ein haendisches Backup durchfuehren. Wenn das eine Archiv riesig wird (auch mein 3.5GB Backup), ist es nicht mehr entpackbar.

Hinterlasse eine Antwort