Server nach Kernelfehler down

digedag

New Member
Hallo,

heute morgen war mein 1&1 Rootserver nicht mehr erreichbar. Er ließ sich zwar noch anpingen, ansonsten stellte er sich aber komplett tot. Also selbst über die Remoteconsole konnte ich mich nicht anmelden. Nach einem Hardreset läuft er wieder normal.

Bei der Suche nach der Ursache bin ich auf folgenden Logeintrag gestossen:

Code:
Aug 30 04:11:02 srv kernel: Unable to handle kernel NULL pointer dereference at 0000000000000070 RIP:
Aug 30 04:11:02 srv kernel: <ffffffff8048142e>{_spin_lock+0}
Aug 30 04:11:02 srv syslog-ng[3107]: Changing permissions on special file /dev/xconsole
Aug 30 04:11:02 srv syslog-ng[3107]: Changing permissions on special file /dev/tty10
Aug 30 04:11:02 srv kernel: PGD 3697b067 PUD 300fa067 PMD 0
Aug 30 04:11:02 srv kernel: Oops: 0002 [1] SMP
Aug 30 04:11:02 srv kernel: CPU 0
Aug 30 04:11:02 srv kernel: Modules linked in: iptable_nat ip_nat iptable_mangle ipt_REJECT xt_tcpudp xt_state iptable_filter ip_tables x_tables
Aug 30 04:11:02 srv kernel: Pid: 232, comm: kswapd0 Not tainted 2.6.16.27-061216a #1
Aug 30 04:11:02 srv kernel: RIP: 0010:[<ffffffff8048142e>] <ffffffff8048142e>{_spin_lock+0}
Aug 30 04:11:02 srv kernel: RSP: 0000:ffff81003d971d40  EFLAGS: 00010202
Aug 30 04:11:02 srv kernel: RAX: 0000000000000001 RBX: ffff81001c459ab8 RCX: ffff81001c459848
Aug 30 04:11:02 srv kernel: RDX: ffff81001c459ac8 RSI: ffff81003d971d88 RDI: 0000000000000070
Aug 30 04:11:02 srv kernel: RBP: ffff81001c459c78 R08: ffff81003d970000 R09: 0000000000000001
Aug 30 04:11:02 srv kernel: R10: 0000000000000002 R11: 0000000000000202 R12: 0000000000000000
Aug 30 04:11:02 srv kernel: R13: 0000000000000001 R14: 0000000000000000 R15: 0000000000000024
Aug 30 04:11:02 srv kernel: FS:  00002b89c7dbe050(0000) GS:ffffffff8067c000(0000) knlGS:0000000000000000
Aug 30 04:11:02 srv kernel: CS:  0010 DS: 0018 ES: 0018 CR0: 000000008005003b
Aug 30 04:11:02 srv kernel: CR2: 0000000000000070 CR3: 0000000033838000 CR4: 00000000000006e0
Aug 30 04:11:02 srv kernel: Process kswapd0 (pid: 232, threadinfo ffff81003d970000, task ffff81003d96aae0)
Aug 30 04:11:02 srv kernel: Stack: ffffffff801719f0 ffff81003d970000 ffff81001c459ab8 ffff81001c459ac8
Aug 30 04:11:02 srv kernel:        ffffffff805660c0 0000000000000024 ffffffff80185daa 00000000000000d0
Aug 30 04:11:02 srv kernel:        0000008000000000 ffff81001c459d48
Aug 30 04:11:02 srv kernel: Call Trace: <ffffffff801719f0>{remove_inode_buffers+50}
Aug 30 04:11:02 srv kernel:        <ffffffff80185daa>{prune_icache+231} <ffffffff80185ea6>{shrink_icache_memory+18}
Aug 30 04:11:02 srv kernel:        <ffffffff80156749>{shrink_slab+233} <ffffffff80158445>{balance_pgdat+567}
Aug 30 04:11:02 srv kernel:        <ffffffff80158689>{kswapd+286} <ffffffff80141e4e>{autoremove_wake_function+0}
Aug 30 04:11:02 srv kernel:        <ffffffff80141e4e>{autoremove_wake_function+0} <ffffffff8013e857>{worker_thread+0}
Aug 30 04:11:02 srv kernel:        <ffffffff8010b6aa>{child_rip+8} <ffffffff8015856b>{kswapd+0}
Aug 30 04:11:02 srv kernel:        <ffffffff8010b6a2>{child_rip+0}
Aug 30 04:11:02 srv kernel:
Aug 30 04:11:02 srv kernel: Code: f0 ff 0f 0f 88 14 01 00 00 c3 48 89 f8 f0 81 28 00 00 00 01
Aug 30 04:11:02 srv kernel: RIP <ffffffff8048142e>{_spin_lock+0} RSP <ffff81003d971d40>
Aug 30 04:11:02 srv kernel: CR2: 0000000000000070
Aug 30 04:11:02 srv kernel: klogd 1.4.1, ---------- state change ----------

Ich kann hier mal noch erkennen, daß der Kernel offensichtlich ein ernsthaftes Problem hatte. Aber warum genau und wie ich das in Zukunft verhindern kann, erschließt sich mir nicht. Vielleicht kann mir ja hier jemand weiterhelfen... :o

Der Server läuft mit Suse 10.1 (64bit). Es ist der vorinstallierte Kernel von 1&1, ich hab also keinen eigenen Kernel kompiliert.
 
So wie ich das auf den ersten Blick sehe, hat der Swapper den Fehler verursacht und wurde instabil bzw. hat das ganze System runter gezogen.

Das die Remoteconsole Dich nicht weiter brachte ist seltsam, da hier ja ein externen Linux gestartet wird. Evt. hast Du die Anmeldedaten nicht richtig eingegeben?

huschi.
 
Hallo,

mit Remoteconsole ist vermutlich nicht das Rettungssystem gemeint, sondern die Verbindung über serielle Schnittstelle über einen Hilfsserver des Providers. Dabei läuft auf dem Server das Standardsystem weiter.
 
Also zunächst mal vielen Dank für den Hinweis auf den Swapper. kswapd0 konnte ich da jetzt auch zuordnen. :D
Ich werd's mal an 1&1 schicken. Da der Kernel wohl speziell bereitgestellt wird, bin ich ja vielleicht nicht der erste mit dem Problem.

Dumm ist natürlich, daß das ja jederzeit wieder passieren kann. Ich hab jetzt erst seit 4 Wochen Suse 10.1 drauf. Davor lief der Server fast ein Jahr ohne Reboot unter Suse9.3. :(
Das die Remoteconsole Dich nicht weiter brachte ist seltsam, da hier ja ein externen Linux gestartet wird. Evt. hast Du die Anmeldedaten nicht richtig eingegeben?
Also ich hab den Zugang über die Serielle Konsole versucht. Die wird von 1&1 schon zur Verfügung gestellt. Allerdings bin ich nie soweit gekommen, daß ich überhaupt mal ein Paßwort eingeben konnte. Beim ersten Versuch hab ich noch den Prompt für den Usernamen gesehen, danach nicht mal mehr den.
Vermutlich war der Server voll unter Last. Denn komplett tot war er nicht.
Nachdem ich ihn wieder gestartet hatte, wurden sogar noch ein paar Mails ausgeliefert.
 
Back
Top