Debian-Update Lenny zu Squeeze

Aus Knowledgebase
Wechseln zu: Navigation, Suche

Dieser Artikel soll ein paar Hinweise zum Update von Debian Lenny zu Squeeze bieten.

Leider ist es nicht möglich, ohne heftiges Quellcodeschubsen Vmware 1.0 unter dem Squeeze-Kernel zum Laufen zu bringen. Siehe auch einen Post auf insecure.ws zum Thema.

Ebenfalls geändert hat sich /proc/scsi: Dies gibt es schlicht nicht mehr. Siehe Beispielbugreport. Abhilfe:

apt-get install lsscsi

Vorbereitungen

  • Alle Pakete müssen auf ii stehen:
dpkg -l |grep -v ^ii |egrep '^[a-z]{2}'
  • Keine Ausgabe von folgendem Kommando:
dpkg --audit
  • Keine /etc/apt/preferences, keine Backports in /etc/apt/sources.list!
  • Verhindern, dass die Umstellung auf Dependency-Booting auf die Nase fällt:
apt-get remove --purge libdevmapper1.02

sources.list

Ein Muster für /etc/sources.list:

# Freenet-Stable
deb     http://ftp.freenet.de/debian/ squeeze main non-free contrib
deb-src http://ftp.freenet.de/debian/ squeeze main non-free contrib

# Updates
deb     http://security.debian.org/ squeeze/updates main contrib non-free
deb-src http://security.debian.org/ squeeze/updates main contrib non-free

# Eigene Packages
deb     http://apt.pocnet.net/ poc main
deb-src http://apt.pocnet.net/ poc main

# Backports (see preferences)
deb     http://backports.debian.org/debian-backports/ squeeze-backports main contrib non-free
deb-src http://backports.debian.org/debian-backports/ squeeze-backports main contrib non-free

Upgrade

apt-get update
apt-get -y --force-yes install libc6
apt-get -y --force-yes install apt
apt-get -y --force-yes install linux-image-2.6-686
apt-get -y --force-yes install firmware-linux
apt-get -y --force-yes dist-upgrade

Größter Batzen an sinnfreier Wartezeit:

  • Jabber (dh-parms erzeugen),
  • Spamassassin (re2c, falls binäre Regeln konfiguriert sind).

Anmerkungen

  • Meldungen während Upgrade:
    • W: gs is already removed. It is recommended to run defoma-app purge gs.
      Kann einfach ausgeführt werden.
    • WARNING: All config files need .conf: /etc/modprobe.d/foobar, it will be ignored in a future release.
      Dateien müssen umbenannt werden.
  • xserver-xorg wird evtl. automatisch installiert.
  • Bei der Umstellung auf Grub2 soll die fstab als auch grub auf uuid-Pfade umgestellt werden, statt Gerätenamen. Fstab der Übersicht halber besser belassen.
  • Upgrade bricht ggfs. ab wegen Nagios-Konfigurationsfehlermeldungen (Grund: Erst nach der Konfiguration der Plugins sind passende externe Konfigfiles vorhanden).
  • Openswan b0rken: Key+IPSEC-SA etabliert, aber keine Kommunikation möglich. Keine Lösung erarbeitet, stattdessen darauf verzichtet.
  • Wenn snmp(d) installiert, dann besser auch snmp-mibs-downloader installieren, da keine MIBs mehr im Package (Lizenzprobleme), danach snmp.conf anpassen!
  • snmpd.conf wurde stark überarbeitet, besser neu anpassen.
  • dovecot.conf hat einige Parameter, die in der aktuellen Version nicht mehr gültig sind (z. B. ssl_disable).
  • iscsitarget: Keine Binärmodule mehr vorhanden, müssen selbst mit module-assistant zusammengeschraubt werden.
  • Radvd hat ein Timingproblem, was sich durch einen Segfault äußert. Siehe bugs.debian.org.
  • Netatalk kennt kein cnid:cdb mehr; falls kein user_xattr in fstab, dann ea:ad fest setzen, um Logspam zu vermeiden.
  • Feststellen von Dummypaketen, die evtl. deinstalliert werden können:
COLUMNS=250 dpkg -l |egrep '(transition|dummy)'
  • ToDo-Liste der zu kontrollierenden/löschenden Konfigdateien:
find /etc -name "*.dpkg-*" |sort

MySQL

Alles, was bdb betrifft, muss aus der Konfig raus, sonst startet der Server nicht mehr. Restliche ToDos siehe /var/log/daemon.log.

Apple Calendarserver

Meldungen beim Upgrade:

Moving data from old DataRoot (/var/run/caldavd/) to new DataRoot (/var/lib/caldavd/) (See Debian Bug#611165 for more info)
Moving /var/run/caldavd/calendaruserproxy.sqlite ... Aborted as it does not exist.
Moving /var/run/caldavd/resourceinfo.sqlite ... Aborted as it does not exist.
Moving /var/run/caldavd/mailgatewaytokens.sqlite ... Aborted as it does not exist.
Moving /var/run/caldavd/tasks ... Aborted as it does not exist.
Moving caldavd directories of NSS users and groups as the directory names in calendarserver 2.x are based on UUID rather than username/groupname as in calendarserver 1.x (See Debian Bug#610124 for more info) ...
Directory service NssDirectoryService is not configured in /etc/caldavd/caldavd.plist.upgrade.nss.tmp. Exiting.

Unübersichtliche XML-Konfiguration am besten anhand alter Konfigurationsdatei neu machen.

Jabber-Server

Unübersichtliche XML-Konfiguration am besten anhand alter Konfigurationsdatei neu machen.

Funktioniert aber nicht:

bouncing a routed packet to poc@leela.pocnet.net from 15@c2s/86329C0: Internal Delivery Error

Lösung: /etc/default/jabberd14

-HOSTNAME=localhost
+HOSTNAME=`hostname -f`

Das Multiuser-Chat-(Raum)-Modul jabber-muc ist von der Startkonfiguration her undurchsichtig. Da ich es außer zum Testen nie benutzt habe, habe ich es deinstalliert.

Asterisk

Im Rahmen des Upgrades wird Asterisk von 1.4 auf 1.6 aktualisiert. Ich empfehle nach dem Upgrade, den Asterisken über ein Terminal mit reichlich Rückblätterpuffer manuell zu starten und die Fehlermeldungen zu analysieren:

/etc/init.d/asterisk stop
su - asterisk
asterisk -cvvvvvvvvv
[Feb 16 20:27:36] WARNING[20731]: indications.c:1070 load_indications: Unable to set the default country (for indication tones)

Behoben durch Umstellen des Landes von de auf nl in indications.conf: Alias-Mechanismus funktioniert wohl nicht mehr.

[Feb 16 20:27:36] WARNING[20731]: loader.c:393 load_dynamic_module: Error loading module 'res_features.so': /usr/lib/asterisk/modules/res_features.so: cannot open shared object file: No such file or directory
[Feb 16 20:27:37] WARNING[20731]: res_config_ldap.c:1591 parse_config: No directory user found, anonymous binding as default.
[Feb 16 20:27:37] ERROR[20731]: res_config_ldap.c:1616 parse_config: No directory URL or host found.
[Feb 16 20:27:37] WARNING[20731]: loader.c:393 load_dynamic_module: Error loading module 'res_features.so': /usr/lib/asterisk/modules/res_features.so: cannot open shared object file: No such file or directory
[Feb 16 20:27:37] WARNING[20731]: loader.c:801 load_resource: Module 'res_features.so' could not be loaded.
[Feb 16 20:27:37] WARNING[20731]: loader.c:435 load_dynamic_module: Error loading module 'cdr_adaptive_odbc.so': /usr/lib/asterisk/modules/cdr_adaptive_odbc.so: undefined symbol: ast_odbc_request_obj
[Feb 16 20:27:37] WARNING[20731]: loader.c:801 load_resource: Module 'cdr_adaptive_odbc.so' could not be loaded.
[Feb 16 20:27:37] ERROR[20731]: codec_dahdi.c:620 find_transcoders: Failed to open /dev/dahdi/transcode: No such file or directory
 == Parsing '/etc/asterisk/users.conf':   == Found
   -- Automatically generated pseudo channel
[Feb 16 20:27:38] WARNING[20731]: chan_dahdi.c:17134 process_dahdi: Ignoring any changes to 'userbase' (on reload) at line 23.
[Feb 16 20:27:38] WARNING[20731]: chan_dahdi.c:17134 process_dahdi: Ignoring any changes to 'vmsecret' (on reload) at line 31.
[Feb 16 20:27:38] WARNING[20731]: chan_dahdi.c:17134 process_dahdi: Ignoring any changes to 'hassip' (on reload) at line 35.
[Feb 16 20:27:38] WARNING[20731]: chan_dahdi.c:17134 process_dahdi: Ignoring any changes to 'hasiax' (on reload) at line 39.
[Feb 16 20:27:38] WARNING[20731]: chan_dahdi.c:17134 process_dahdi: Ignoring any changes to 'hasmanager' (on reload) at line 47.
chan_gtalk.so => (Gtalk Channel Driver)
[Feb 16 20:36:16] ERROR[21882]: ais/clm.c:141 ast_ais_clm_load_module: Could not initialize cluster membership service: Try Again

Behoben durch Eintragen der entsprechenden Module als noload in die modules.conf.

[Feb 16 20:27:37] WARNING[20731]: translate.c:654 __ast_register_translator: plc_samples 160 format f

Behoben durch noload => codec_g722.so.

Genaue Änderungen an der modules.conf (+ = rein, - = raus)

+noload => chan_dahdi.so
+noload => chan_gtalk.so
+noload => cdr_adaptive_odbc.so
+noload => codec_dahdi.so
+noload => codec_g722.so
+noload => res_ldap.so
+noload => res_config_ldap.so
+noload => res_features.so
-load => res_features.so
[Feb 16 20:27:37] NOTICE[20731]: chan_sip.c:24038 build_peer: The 'username' field for sip peers has been deprecated in favor of the term 'defaultuser'

Behoben durch entsprechende Anpassung der sip.conf.

  == Binding IAX2 to '0.0.0.0:4569'
[Feb 16 20:36:16] WARNING[21882]: utils.c:1536 __ast_string_field_init: trying to reset empty pool
[Feb 16 20:36:16] WARNING[21882]: utils.c:1536 __ast_string_field_init: trying to reset empty pool
[Feb 16 20:36:16] WARNING[21882]: utils.c:1536 __ast_string_field_init: trying to reset empty pool
[Feb 16 20:36:16] WARNING[21882]: utils.c:1536 __ast_string_field_init: trying to reset empty pool
[Feb 16 20:36:16] WARNING[21882]: utils.c:1536 __ast_string_field_init: trying to reset empty pool
[Feb 16 20:36:16] WARNING[21882]: utils.c:1536 __ast_string_field_init: trying to reset empty pool

Keine Idee für dies bisher. Recherche zeigt, Problem ist bekannt, aber keine Lösung.

Anpassungen im Wählplan:

  • SetCallerID(000)Set(CALLERID(number)=000).
  • Dial(abc|0|r) → Pipes durch Komma ersetzen.

Fehlermeldung bei eingehenden IAX-Calls:

[Feb 20 15:54:07] ERROR[2717]: chan_iax2.c:4702 handle_call_token: Call rejected, CallToken Support required. If unexpected, resolve by placing address 87.56.44.36 in the calltokenoptional list or setting user guest requirecalltoken=no

Lösung: /etc/asterisk/iax.conf, globale Einstellungen anpassen/hizufügen:

calltokenoptional = 0.0.0.0/0.0.0.0
maxcallnumbers = 16382

Siehe auch Blogeintrag bei Sysadminman.net.

Reboot

  • Chainload into Grub2, testen, ob geht. Booten, Fehlermeldungen notieren. Wenn OK, dann Aufruf von
upgrade-from-grub-legacy
rm -f /boot/grub/menu.lst*

Nacharbeiten

  • Deinstallieren des alten Kernels,
  • Neuvergabe der Passwörter für Samba: /etc/samba/smbpasswd wird nicht mehr benutzt, dafür /var/lib/samba/passwd.tdb. Erstere Datei kann gelöscht werden.

Ggfs. hat das sysv-rc-Paket nicht auf das abhängigkeitsbasierte Bootsystem umstellen können, weil nicht alle Scripte entsprechend vorbereitet waren. Nach der Bereinigung kann mit

dpkg-reconfigure sysv-rc

der Umstellvorgang nochmal angestartet werden.

Alte Pakete

Folgende Pakete haben sich als nicht länger downloadbar erwiesen:

imaze-xaw, imazesrv
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=589034
newsgate
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=496783
overkill
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=558669
lukemftp
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=418692
Pine
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=569296
netsurf, ugidd
Grund unbekannt.
libvolume-id0, libcap1
Alte Versionen.
statd
In nfs-common enthalten.

Diese sollten ersetzt bzw. gelöscht werden, weil z. T. sicherheitsrelevante Bugs enthalten sind.