Geschrieben von Beat Rubischon (Link) am
Samstag, 7. Oktober 2006, 12:31
aus dem work-in-progress dept.
Wie versprochen hier das Log des Upgrades von wigwam, dem Webserver der Linux User Group Switzerland.
7.10. 12:30
Priska und ich haben eingekauft, bald gibt es Mittagessen. Das Log ist gestartet , mein Squishdot akzeptiert soeben den <pre> Tag damit Copy & Paste von Konsolenoutput etwas einfacher wird.
Als erstes ist der Platz ein Problem:
wigwam:~# df -h -text3 -treiserfs
Filesystem Size Used Avail Use% Mounted on
/dev/root 2.9G 2.2G 531M 81% /
/dev/vg00/opt 2.0G 1.6G 321M 84% /opt
/dev/vg00/home1 4.9G 3.1G 1.6G 66% /export/home1
/dev/vg00/home2 4.9G 3.8G 980M 80% /export/home2
/dev/vg00/data1 4.9G 3.9G 801M 84% /export/data1
/dev/vg00/data2 9.8G 2.4G 6.9G 26% /export/data2
/dev/vg00/cvs1 1008M 33M 923M 4% /cvs
/dev/vg00/src 5.0G 820M 4.1G 17% /usr/src
Vor allem data1 und das Root ist regelmässig voll. Aber da hat es noch nicht allozierter Platz im LVM:
wigwam:~# vgdisplay
--- Volume group ---
VG Name vg00
VG Access read/write
VG Status available/resizable
VG # 0
MAX LV 256
Cur LV 7
Open LV 7
MAX LV Size 255.99 GB
Max PV 256
Cur PV 1
Act PV 1
VG Size 39.05 GB
PE Size 4 MB
Total PE 9997
Alloc PE / Size 8448 / 33 GB
Free PE / Size 1549 / 6.05 GB
VG UUID W1o5om-Gutf-lKjQ-4mPL-kjG5-mG6v-55XSlf
7.10. 13:30
Es geht los. Rundum eingeloggt, erste Gedanken gemacht. /usr ist 1.2G, /var ein knappes. Also machen wir ein neues Volume von 4G für var und schieben von data2 5G nach data1. Doch erst backuppen. Elmar hat mir grosszügig Platz auf einer seiner Kisten offeriert. Sobald das durch ist, nehme ich alle relevanten Dienste herunter und beginne mit den Volumes zu hantieren.
7.10. 14:30
Die Kiste kennt nur noch den sshd und einen syslogd. Einen letzten rsync, dann geht es an den Resize der Volumes. /usr/src vorsorglich umounten, da reiserfs und LVM auf 2.4er Kerneln eher nicht miteinander auskommen. Wir haben ja ein Backup, falls die Daten weg sind...
7.10. 15:00
LVM ist doch ein herrliches Spielzeug:
wigwam:~# umount /opt
wigwam:~# umount /export/data1
wigwam:~# umount /export/data2
wigwam:~# umount /export/home1
wigwam:~# umount /export/home2
wigwam:~# umount /cvs
wigwam:~# umount /usr/src
wigwam:~# lvcreate -L4096 -nvar vg00
wigwam:~# mke2fs -j /dev/vg00/var
wigwam:~# (cd /var; tar cfp - .) | (cd /mnt; tar xvfp -)
wigwam:~# umount /mnt
wigwam:~# e2fsadm -L-5G /dev/vg00/data2
wigwam:~# e2fsadm -L+5G /dev/vg00/data1
wigwam:~# rm -Rf /var/*
wigwam:~# mount -a
wigwam:~# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/root 2.9G 1.3G 1.4G 47% /
tmpfs 252M 4.0k 252M 1% /dev/shm
/dev/shm 252M 4.0k 252M 1% /tmp
/dev/vg00/var 3.9G 986M 2.7G 26% /var
/dev/vg00/opt 2.0G 1.3G 619M 68% /opt
/dev/vg00/home1 4.9G 3.0G 1.7G 64% /export/home1
/dev/vg00/home2 4.9G 3.8G 980M 80% /export/home2
/dev/vg00/data1 9.8G 3.9G 5.4G 42% /export/data1
/dev/vg00/data2 4.9G 2.4G 2.3G 51% /export/data2
/dev/vg00/cvs1 1008M 33M 923M 4% /cvs
/dev/vg00/src 5.0G 820M 4.1G 17% /usr/src
Das mit dem Platz ist nun OK. Ab zum zweiten Schritt, dem Upgrade von Woody nach Sarge.
wigwam:~# apt-get clean
wigwam:~# rm /var/lib/apt/lists/*
wigwam:~# $EDITOR /etc/apt/sources.list
wigwam:~# apt-get update
wigwam:~# apt-get --dry-run dist-upgrade
Reading Package Lists... Done
Building Dependency Tree... Done
Calculating Upgrade... Done
The following packages will be REMOVED:
alien autoconf autoconf2.13 automake build-essential checkbot
console-tools-libs cowsay cvs-buildpackage debhelper debmake defoma
devscripts dh-make dpkg-dev dpkg-repack dupload eperl equivs freetable gfont
gs gs-common gsfonts gv kbd libdbd-mysql-perl libdbi-perl libdigest-md5-perl
libgd-dev libgd-perl libgdbmg1-dev libhtml-clean-perl libhtml-parser-perl
libhtml-tagset-perl libhtml-tree-perl libimage-size-perl libipc-signal-perl
liblcms libmagick5 libmailtools-perl libmime-base64-perl libnet-perl
libproc-waitstat-perl librrds-perl libsnmp-perl libsnmp-session-perl
libterm-readkey-perl libtimedate-perl liburi-perl libwww-perl lintian
makepasswd mc-common mime-construct mirror mrtg perl perl-5.6 perl-modules
perl-suid proftpd proftpd-common rpm shtool slice task-c++-dev task-c-dev
task-debian-devel task-devel-common tetex-bin tetex-extra tk8.3-dev topal
vflib2 weblint wml xbase-clients xlibs-dev
The following NEW packages will be installed:
...
Sodele. Da haben wir einen der Fälle, in denen Debian alles Nette deinstallieren würde. Also müssen wir erst ein paar Pakete von Hand anheben.
7.10. 16:00
Viel Spielen und einen gemütlichen Kaffee später ist der Upgrade durch. Danke ETH, dass Ihr einen so wunderbar schnellen Debian-Mirror betreibt ;-)
wigwam:~# apt-get install auctex xbase-clients xlibs-dev xv imagemagick
wigwam:~# apt-get install fetchmail libpth-dev mc nedit
wigwam:~# apt-get dist-upgrade
Alle Pakete sind up to date. Jetzt heisst es Debuggen bis alles wieder läuft.
BTW: Kylie Minogue macht einfach nette Musik! I still live you, Je ne sais pas pourqoi *sing* :-)
7.10. 17:00
Das System ist wieder oben. Praktisch alle Services laufen, inklusive Symlink. Ein paar kleine Knackpunkte bestehen noch. Einen reboot gibt es sobald sich jemand in der Naehe der Kiste befindet ;-)
7.10. 17:10
So schnell kann es gehen: ntpd machte eien Segfault, ich startete ihn im gdb und die ganze Kiste kommt übelst in den Swap. Also rasch einen reboot und hoffen, dass das ganze wieder hochkommt.
7.10. 17:20
Die Box kommt nicht hoch, findet das neue var nicht.
7.10. 17:45
Die Box ist wieder da ;-) Nun, gute Doku lohnt sich. Ein neuerlicher Run von lvcreate -L4096 -nvar vg00 erstellte das Volume an exakt derselben Stelle - alle Daten sind noch da *schweissabwisch*
Der Bug im ntpd habe ich auch gefunden. War reichlich simpel - max.0x1b.ch hat eine IPv6 Nummer im DNS, wigwam aber keines im Kernel. Eine Situation, die dem ntpd nicht bekam.
7.10. 19:00
Ich werde alt. Ich weiss, dass ich folgende Fehlermeldung schon des öfteren hatte bei migrierten Systemen - aber ich erinnere mich nicht mehr an die Lösung :-( Beim Booten über serielle Konsole auf von Woody nach Sarge migrierten Kisten:
Mounted devfs on /dev
Freeing unused kernel memory: 276k freed
INIT: version 2.86 booting
Couldnt get a file descriptor referring to the console
Couldnt get a file descriptor referring to the console
Couldnt get a file descriptor referring to the console
Couldnt get a file descriptor referring to the console
Couldnt get a file descriptor referring to the console
Couldnt get a file descriptor referring to the console
Die Meldung kommt dann ein paar hundert Mal, etwa bis der Swap gemountet wird. Vielleicht fällt's mir noch ein. Da ich hoffentlich die Kiste nicht allzuhäufig booten muss, lasse ich es erst einmal. Jetzt noch Symlink-Artikel schreiben und Abend geniessen!
Permalink
|