Debian - Zaptel Problem

TinTin

Aktives Mitglied
Mitglied seit
6 Mai 2004
Beiträge
1,864
Punkte für Reaktionen
0
Punkte
0
Hallo,

ich google schon seit ein paar Tagen nach Lösungen, komme aber leider nicht weiter - (bin Linux Anfäger) - vielleicht hat hier jemand das nötige Wissen:

Ich bekomme Zaptel nicht kompiliert, die Fehlermeldung sieht folgendermassen aus:

1. Warning: /boot/System.map-2.4.25 does not match kernel data.

2. /usr/src/linux-2.4/include/asm/processor.h: 'CONFIG_NR_CPUS' undeclared here (not in a function)

Fehler 2 wiederholte sich noch einige Male in weiteren headern, dann bricht das "make" ab.

Ich habe einen dedicated Server bei Strato mit Debian/Gnu, Asterisk läuft soweit auch 1a, Original kam der Server mit 2.4.18 wenn ich mich recht erinnere, ich habe dann auf 2.4.25 ge-updated und auch die Kernel-Sourcen für 2.4.25 installiert. Uname -r liefert mir das korrekte 2.4.25. Linux und Linux-2.4 sind mittels ln auf das kernel-source-2.4.25 Verzeichnis gemapped.

Ich wäre super happy, wenn mir da jemand einen Tipp geben könnte.

Tin
 
Sieht so aus, als wenn die Kernel-2.4.25-Sourcen nicht konfiguriert sind.
Hast du den 2.5.25 selbst compiliert, oder nur das Kernel-Image erneuert?
Mach mal folgendes:
Code:
# cd /lib/modules/$(uname -r)/build
# ls -l .config
Gibt's die Datei?

.
 
Hallo honk,

vielen Dank für Deine Antwort.

ich habe ihn auch schon versucht selbst zu kompilieren, nur das dpkg am Ende schlug fehl.

/lib/modules/2.4.25/build ist eine Datei bei mir, kein Verzeichnis, also klappt cd dorthin nicht.

ls -l .config in /lib/modules/2.4.25 gibt mir zurück:
-rw-r--r-- 1 root root 22492 15. Nov 16:06

------

Zwischenzeitlich habe ich ein "make oldconfig" im kernel-source Verzeichnis gemacht und jetzt läuft die Kompilierung von Zaptel (scheinbar) durch, ohne die "CONFIG_NR_CPU" Meldung - die Fehlermeldung 1 wegen des kernel mismatches bleibt jedoch, trotzdem scheint es durchzulaufen...

Führe ich jetzt (nach make und make install von zaptel) jedoch ein "modprobe zaptel" durch, bekomme ich lauter unresolved symbols in zaptel.o :

create_proc_entry_Rxmp_b7a60fa7
add_wait_queue_Rsmp_fb6d139f
proc_mkdir_Rsmp_0fd856e0
register_chrdev_Rsmp_ab219f3f
__pollwait_Rsmp_1395bdc6
remove_wait_queue_Rsmp_11a95c50
remove_proc_entry_Rsmp_b56532c6

insmod zaptel failed

Tin
 
TinTin schrieb:
ich habe ihn auch schon versucht selbst zu kompilieren, nur das dpkg am Ende schlug fehl.
:gruebel: dpkg :gruebel:

Vielleicht hilft das weiter:

1. cd /usr/src/linux-2.4.25
2. mv .config ..
3. make mrproper
4. mv ../.config .
5. make oldconfig
6. make dep clean bzImage modules # bzImage kann man evtl. weglassen

Danach müsste man zaptel eigentlich, wie in der README beschrieben, installieren können.
 
Hallo wrrdlbrrmpft,

vielen Dank für Deine Antwort!

Leider hat auch Punkt 1-6 nicht weitergeholfen, beim erneuten make clean - make - make install nach (erfolgreicher) Ausführung Deines Vorschlags kommt immer noch die Meldung "Warning: /boot/System.map-2.4.25 does not match kernel data. " und im weiteren Verlaufen die unresolved symbols in zaptel.o

Oder hätte ich den Rechner zuerst neu booten müssen?

Vielleicht sollte ich einen komplett neuen (neueren?) Kernel mit sourcen aufsetzen? Wenn ja, welcher wäre zu empfehlen für Asterisk und gibt es irgendwo ein HOWTO welches verläßlich funktioniert... die HOWTOS die ich bisher ausprobiert habe haben das Problem zumindest mit meiner 2.4.25 Version leider nicht lösen können - es ist zum verzweifeln :(

Ich brauche zaptel ja eigentlich nur, weil ich zaptelrtc wegen des Timers für MeetMe einbauen will (ztdummy geht glaube ich nicht - jedenfalls ist mir nicht bekannt, ob der Strato Server uhci unterstützt, ich kann das auch nirgends finden, geladen ist uhci jedenfalls nicht). Auch wenn uhci vorhanden wäre, müßte ich ja aber zumindest erst mal zaptel auch ohne ztdummy kompilieren können, damit es überhaupt funktioniert. Digium Hardware ist bei diesem dedicated server natürlich gar nicht vorhanden.

Danke,
Tin
 
TinTin schrieb:
Leider hat auch Punkt 1-6 nicht weitergeholfen, beim erneuten make clean - make - make install nach (erfolgreicher) Ausführung Deines Vorschlags kommt immer noch die Meldung "Warning: /boot/System.map-2.4.25 does not match kernel data. " und im weiteren Verlaufen die unresolved symbols in zaptel.o
Ich würde als nächstes versuchen, ob es funktioniert, wenn man den soeben kompilierten Kernel installiert. Es geht also unter 7. weiter:

7. cp /lib/modules/2.4.25 /lib/modules/2.4.25-backup
8. (in /usr/src/linux-2.4.25) make modules_install
9. cp arch/i386/boot/bzImage /boot/linuxkernel-2.4.25
10. mv /boot/System.map /boot/System.map.backup
11. cp System.map /boot

Jetzt muss noch der Bootloader angepasst werden. Wenn du nicht weißt, wie das geht, poste mal deine /boot/grub/menu.lst bzw. /etc/lilo.conf!

Viel Erfolg!
wrrdlbrrmpft

P.S.: Ich benutze Kernel 2.4.27. Dein Kernel 2.4.25 sollte aber genauso gut funktionieren.
 
Wie man den Bootloader anpaßt weiß ich leider nicht. Verzeichnis /boot/grub/ existiert bei mir nicht.

lilo.conf:
Code:
# LILO configuration file
# Start LILO global Section
# If you want to prevent console users to boot with init=/bin/bash,
#  restrict usage of boot params by setting a passwd and using the option
#  restricted.
boot=/dev/hda
serial = 0,57600n8
vga = normal    # force sane state
#message=/boot/message
menu-scheme=Wg:kw:Wg:Wg
read-only
prompt
lba32
timeout=100

# End LILO global Section
#

image = /boot/vmlinuz
  root = /dev/hda3
  label = linux
  append ="console=tty0 console=ttyS0,57600"


image = /boot/vmlinuz.strato
  root = /dev/hda3
  label = Stratokernel 
  append ="console=tty0 console=ttyS0,57600"

Vielen Dank für Deine Bemühungen!
 
12. Neuen Kernel in lilo.conf eintragen:
Code:
# LILO configuration file
# Start LILO global Section
# If you want to prevent console users to boot with init=/bin/bash,
#  restrict usage of boot params by setting a passwd and using the option
#  restricted.
boot=/dev/hda
serial = 0,57600n8
vga = normal    # force sane state
#message=/boot/message
menu-scheme=Wg:kw:Wg:Wg
read-only
prompt
lba32
timeout=100

# End LILO global Section
#

image = /boot/vmlinuz
  root = /dev/hda3
  label = linux
  append ="console=tty0 console=ttyS0,57600"


image = /boot/vmlinuz.strato
  root = /dev/hda3
  label = Stratokernel 
  append ="console=tty0 console=ttyS0,57600"

image = /boot/linuxkernel-2.4.25
  root = /dev/hda3
  label = linux-2.4.25
  append ="console=tty0 console=ttyS0,57600"
14. /sbin/lilo (Es sollten alle drei Einträge aufgelistet werden.)
15. Neuen Kernel (linuxkernel-2.4.25) booten
16. Nochmal probieren, ob sich zaptel nun installieren lässt

Da wir an der Kernel-Konfiguration nichts verändert haben, sollte der neue Kernel problemlos booten.
 
/sbin/lilo gibt mir aus:.

Warning: Int 0x13 function 8 and function 0x48 return different head/sector geometries for BIOS drive 0x80
Added linux *
Added Statokernel
Added linux-2-4.25

Kann ich den Fehler vernachlässigen und trotzdem booten?
 
Die Warnung hat irgendwie damit zu tun, dass lilo eine andere Festplattengeometrie benutzt als das BIOS. Details weiß ich auch nicht. Nach meiner Kenntnis kann man diese Warnung getrost ignorieren. Es ist ja auch nur eine Warnung und kein Fehler.
 
Ich habe jetzt über die RecoveryManager Konsole von Strato neu gebooted. Die Fehler beim "make" von zaptel sind immer noch die gleichen, nur ist jetzt noch ein

Warning: /boot/System.map does not match kernel data.

hinzugekommen zum

Warning: /boot/System.map-2.4.25 does not match kernel data.

Also ein Warning mehr. Habe ich richtig gebooted oder hätte in irgendeiner Form noch angegeben werden müssen von welchem der 3 images er denn nun booten soll ?
 
TinTin schrieb:
Also ein Warning mehr. Habe ich richtig gebooted oder hätte in irgendeiner Form noch angegeben werden müssen von welchem der 3 images er denn nun booten soll ?
Standardmäßig wird noch der alte Kernel gebootet. Ich weiß jetzt nicht, ob du am lilo prompt den neuen Kernel ausgewählt hast. Wenn nicht, drücke mal am lilo prompt auf die Tabulator-Taste und wähle linuxkernel-2.4.25!

[highlight=orange:2e58c3ad64]EDIT: Mit uname -a kann man übrigens herausfinden, welcher Kernel gerade läuft (Datum und Uhrzeit beachten).[/highlight:2e58c3ad64]
 
Tja, den prompt sehe ich natürlich gar nicht - ist ja ein dedicated server, auf den ich mit putty draufgehe. Ich komme auch mit der seriellen Konsole nicht drauf, wenn ich den Bootvorgang ersteinmal ausgelöst habe - muß mal schauen, ob man das LILO nicht vor dem booten schon klar machen kann von welchem Image er denn preferred booten soll...

Aus uname -a kann ich anhand des Datums schliessen, dass immer noch von dem Image gebooted wurde, welches wir vorhin ge-backuped haben.

[edit]
gefunden - "Lilo -D linux-2.4.25" setzt die default boot Konfiguration auf das neue Image, boot läuft - mal sehen was zaptel danach macht :)
 
TinTin schrieb:
Tja, den prompt sehe ich natürlich gar nicht - ist ja ein dedicated server, auf den ich mit putty draufgehe. Ich komme auch mit der seriellen Konsole nicht drauf, wenn ich den Bootvorgang ersteinmal ausgelöst habe - muß mal schauen, ob man das LILO nicht vor dem booten schon klar machen kann von welchem Image er denn preferred booten soll...

Aus uname -a kann ich anhand des Datums schliessen, dass immer noch von dem Image gebooted wurde, welches wir vorhin ge-backuped haben.
Oh, soweit habe ich nicht mitgedacht. In lilo.conf kannst du noch die Zeile
default=linuxkernel-2.4.25
eintragen. Nach einem erneuten /sbin/lilo wird dann der neue Kernel beim booten standardmäßig geladen.
 
Server kommt nicht wieder online - nicht mal mehr pingbar. Ich kann jetzt nur warten und hoffen, dass Strato die "serielle Konsole" wieder bereitstellt (die ging aus Gründen, die bei Strato liegen nicht mehr). Über die kann man auch den Bootvorgang des Servers steuern und bei Problemen eingreifen (da hab ich dann den Lilo prompt).
 
Das ist natürlich schlimm.

Wenn der Kernel nicht bootet, kann das dann doch nicht die gleiche Konfiguration gewesen sein. Da muss man dann nochmal etwas genauer nachsehen.
 
So, nach über 24 Std. downtime des Servers und zig Mails an den STRATO support die RemoteConsole doch bitte endlich zu fixen, haben Sie es noch immer nicht geschafft dies zu tun, nicht mal an meinen Server sind Sie gegangen, um einen Techniker das machen zu lassen, was ich per RemoteConsole machen wollte: Das alte Image zu booten.

In der Hinsicht kann ich STRATO also keinem empfehlen - der support ist Grottenschlecht und dabei werben sie damit sich an den Amerikanern und tcs (total customer satisfaction) zu orientieren.

Der Hammer ist aber, dass es auch ohne RemoteConsole geht, Lilo wieder umzukonfigurieren, man startet den Server im "RescueModus" und mounted die Festplatte sowie /boot , holt sich ein #bash und editiert lilo.conf. Davon kein Wort vom support, nach stundemlangen googlen habe ich per Zufall die Lösung hier gefunden:

http://highend-server.de/artikel2.html

Das nur als Hinweis, falls mal jemand etwas ähnliches passieren sollte.

Mit meinem eigentlichen Problem bin ich natürlich immer noch nicht weitergekommen - wo könnte ich jetzt noch ansetzen ?

Danke,
Tin
 
TinTin schrieb:
Mit meinem eigentlichen Problem bin ich natürlich immer noch nicht weitergekommen - wo könnte ich jetzt noch ansetzen ?
Läuft denn jetzt der neue Kernel? Würde mich mal interessieren, was da schief gelaufen ist.
 
Nein, ich hab den vorherigen wieder gestartet - keine Ahnung was da schiefgelaufen ist :(

Am liebsten würde ich nochmal von vorne anfangen, ich habe nämlich nicht mehr genau im Kopf woher ich das image und die kernel-header Dateien hatte und mir ist auch so als ob anfangs Dateien wie z.B. modversions.h fehlten und ich die dann aus einem anderen Verzeichnis rüberkopiert habe - bin mir aber nicht mehr sicher - vielleicht liegt es daran.

Das Ganze ist halt schon ein paar Wochen her - als ich erstmals Asterisk installiert habe - mit Asterisk selbst gab's da auch kein Problem - auf das bin ich eben erst jetzt gestossen nachdem ich zaptel / zaptelrtc gerne nutzen würde wegen des MeetMe Timers
 
Ich würde an deiner Stelle wohl linux-2.4.27 von ftp.kernel.org laden und nochmal damit mein Glück versuchen. Wenn du keine alte .config mehr hast, von der du weißt, dass sie auf dem strato server läuft, wirst du dann aber um den Aufwand "Kernelkonfiguration" wohl nicht drum herum kommen. Wenn du über die Hardware, die drin steckt, gut informiert bist, ist das zwar kein Problem aber trotzdem Zeit aufwendig. Andererseits macht man das pro Rechner auch nur einmal und hat damit einen maßgeschneiderten Kernel.

So würde ich es machen. Vielleicht hat aber auch noch jemand eine bessere Idee.

Wie auch immer, ich werde diesen Thread im Auge behalten.
wrrdlbrrmpft

Nachtrag: Ich will damit nicht sagen, dass das Problem an Version 2.4.25 liegt. Nur wenn man schon einen neuen Kernel baut, kann man auch einen aktuellen nehmen, evtl. sogar einen 2.6er. Aber in Verbindung mit Asterisk hab ich persönlich da noch keine Erfahrung.
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.