Wie führe ich ein 42goISP-Update am besten durch?
Normalerweise funktioniert ein 42goISP-Update ohne Probleme. Da der 42goISP-Manager auf einer Vielzahl unterschiedlicher Systeme installiert ist und uns vereinzelt Probleme mit Updates zu Ohren gekommen sind, die wir trotz intensiver Tests nicht nachvollziehen konnten, hier einige Tipps/Hinweise, die verhindern sollen, dass ein fehlgeschlagenes Update Ihr System lahmlegt.
Hinweis: Platzhalter sind im folgenden durch eckige Klammern [ ] gekennzeichnet.
1) Machen Sie zuerst ein Backup Ihres bestehenden (funktionsfähigen) 42goISP-Systems:
Öffnen Sie eine root-Shell (unter Windows können Sie dafür z.B. PuTTY ( http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html ) benutzen).
cd /root/ tar -pczf root_42go_old.tar.gz 42go/ cd /home/ tar -pczf home_adm42go_old.tar.gz adm42go/
Wenn Ihre MySQL-Datenbank durch ein Passwort geschützt ist:
mysqldump -h [Servername, meistens localhost] -u [Datenbank-User, z.B. root] -p[Datenbank-Passwort] -c --add-drop-table --add-locks --all --quick --lock-tables [Name der 42goISP-Datenbank] > existing_db.sql (kein Leerzeichen zwischen -p und Passwort!)
Sonst:
mysqldump -h [Servername, meistens localhost] -u [Datenbank-User, z.B. root] -c --add-drop-table --add-locks --all --quick --lock-tables [Name der 42goISP-Datenbank] > existing_db.sql
Sichern Sie /etc/passwd, /etc/shadow und /etc/group.
Sichern Sie /etc/init.d/42go_server und (wenn vorhanden) /etc/init.d/42go_tcpserver.
Die genannten Dateien(existing_db.sql, /etc/passwd, /etc/shadow, /etc/group, /etc/init.d/42go_server, /etc/init.d/42go_tcpserver) sollten Sie auf Ihren Arbeitsplatzrechner transferieren (z.B. mit WinSCP: http://winscp.sourceforge.net/eng/ ).
2) Führen Sie das 42goISP-Update durch (s. hier). Machen Sie nach dem Update Ihre root-Shell nicht sofort zu (lassen Sie auch das WinSCP-Fenster offen)!
Öffnen Sie eine zweite root-Shell und prüfen Sie, ob der root-Login noch funktioniert! Wenn der Login nicht funktioniert, können Sie den root-User über die noch geöffnete Shell wiederherstellen (indem Sie z.B. /etc/passwd und /etc/shadow entsprechend bearbeiten oder Ihre Backups dieser beiden Dateien über das geöffnete WinSCP-Fenster zurückspielen). Achten Sie darauf, dass /etc/passwd und /etc/shadow die gleichen Rechte wie vorher besitzen sollten!
3) Öffnen Sie das 42goISP-System im Browser und führen Sie z.B. bei einem User eine Änderung durch. Prüfen Sie nach ca. 30 Sek., ob der root-Login auf der Shell noch funktioniert. Wenn diese Tests alle positiv verlaufen, können Sie die Änderung an dem User wieder rückgängig machen und alle Shells/WinSCP-Fenster schliessen. Das Update ist erfolgreich installiert worden!
4) Falls Sie erst im Nachhinein feststellen, dass Sie sich auf der Shell nicht mehr als root-User einloggen können, gibt es folgende Möglichkeiten, Ihr System zu retten (auf keinen Fall ist es notwendig, die Festplatte zu formatieren und ein neues System aufzusetzen!):
4.1) Wenn Sie webmin ( http://www.webmin.com/ ) als tar.gz installiert haben(nicht als rpm!), können Sie sich dort weiterhin einloggen und den root-User wiederherstellen.
4.2) Booten Sie das System von einer Rescue-CD (z.B. http://sourceforge.net/projects/rescuecd/ ).
Login: root Passwort: rescue
Passen Sie Ihre Tastatur an:
kbdmap
Mounten Sie die /-Partition Ihrer Festplatte (meistens /dev/hda1):
mount -t [Ihr Filesystem, z.B. ext2|ext3|reiserfs|etc.] /dev/hda1 /mnt chroot /mnt
Sie finden die passwd- und shadow-Datei jetzt wieder unter /etc und können sie in einem Editor (z.B. vi) oder mit Programmen wie z.B. usermod etc. bearbeiten. Stellen Sie den root-User wieder her und rebooten Sie das System (entfernen Sie die Rescue-CD aus dem CD-ROM-Laufwerk):
shutdown -r now
4.3) Wenn Ihr Server einen Rescue-Modus hat (wie z.B. die 1&1-Root-Server):
Booten Sie den Server im Rescue-Modus. Mounten Sie die /-Partition Ihrer Festplatte (meistens /dev/hda1):
mount -t [Ihr Filesystem, z.B. ext2|ext3|reiserfs|etc.] /dev/hda1 /mnt chroot /mnt
Sie finden die passwd- und shadow-Datei jetzt wieder unter /etc und können sie in einem Editor (z.B. vi) oder mit Programmen wie z.B. usermod etc. bearbeiten. Stellen Sie den root-User wieder her und rebooten Sie das System.
shutdown -r now
5) Falls Sie das alte 42goISP-System wiederherstellen möchten, führen Sie folgende Schritte durch:
/etc/init.d/42go_server stop cd /root/ mv 42go/ 42go_new/ tar xvfz root_42go_old.tar.gz cd /home/ mv adm42go/ adm42go_new/ tar xvfz home_adm42go_old.tar.gz
Wenn Ihre MySQL-Datenbank durch ein Passwort geschützt ist:
mysql -h [Servername, meistens localhost] -u [Datenbank-User, z.B. root] -p[Datenbank-Passwort] [Name der 42goISP-Datenbank] < existing_db.sql (kein Leerzeichen zwischen -p und Passwort!)
Sonst:
mysql -h [Servername, meistens localhost] -u [Datenbank-User, z.B. root] [Name der 42goISP-Datenbank] < existing_db.sql
Stellen Sie /etc/init.d/42go_server (u. ggf. /etc/init.d/42go_tcpserver) wieder her (z.B. über WinSCP).
chmod 744 /etc/init.d/42go_server chmod 744 /etc/init.d/42go_tcpserver (wenn vorhanden) /etc/init.d/42go_server start
<< Zurück |