expertenaustausch > linux.debian.user.german

Manfred Rebentisch (26.12.2008, 17:20)
Hallo
ich habe auf einem Server folgendes Problem. Die Uhrzeit ging um mehrere
Stunden verkehrt, da offensichtlich die automatische Korrektur via NTP nicht
funktionierte. Ich habe dann mit date das Datum gesetzt und wollte das nun
ins BIOS schreiben:

# hwclock --utc --systohc
select() auf /dev/rtc, um auf Zeittick zu warten, Zeit abgelaufen.
# hwclock --show
select() auf /dev/rtc, um auf Zeittick zu warten, Zeit abgelaufen.

Hier liegt ein Problem vor, das ich noch nie hatte. Kann mir jemand einen Tip
geben? Ist die Hardware-Uhr kaputt?

Viele Grüße
Manfred
Heinz Diehl (26.12.2008, 18:20)
At Fri, 26 Dec 2008 07:34:38 +0100,
Manfred Rebentisch wrote:

> Hier liegt ein Problem vor, das ich noch nie hatte. Kann mir jemand einen Tip
> geben? Ist die Hardware-Uhr kaputt?




Das gilt auch fuer Debian.
Jörg Sommer (26.12.2008, 19:40)
Hallo Manfred,

Manfred Rebentisch <debianlist> wrote:
[..]
> select() auf /dev/rtc, um auf Zeittick zu warten, Zeit abgelaufen.
> Hier liegt ein Problem vor, das ich noch nie hatte. Kann mir jemand einen Tip
> geben?


Existiert /dev/rtc? Kannst Du hwclock mit strace mal unter die Haube
schauen, was der macht?

Schöne Grüße, Jörg.
Manfred Rebentisch (26.12.2008, 23:00)
Hallo Jörg,
vielen Dank für Deine weihnachtliche Antwort. Ich schick mal ein paar Ausgaben
und Notizen am Ende:

Am Freitag 26 Dezember 2008 18:11:47 schrieb Jörg Sommer:
> Hallo Manfred,
> Manfred Rebentisch <debianlist> wrote:
> Existiert /dev/rtc? Kannst Du hwclock mit strace mal unter die Haube
> schauen, was der macht?

# vi /etc/adjtime
# mv /etc/adjtime /root/adjtime.sik
# hwclock --utc --systohc
select() auf /dev/rtc, um auf Zeittick zu warten, Zeit abgelaufen.
# ls -l /dev/rtc
crw------- 1 root root 10, 135 2006-09-20 19:14 /dev/rtc
# cat /dev/rtc

^C [Abbruch]
#
# strace hwclock --utc --systohc
execve("/sbin/hwclock", ["hwclock", "--utc", "--systohc"], [/* 58 vars */]) =

0
brk(0) = 0x8050000
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb7fa7000
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or
directory)
open("/etc/ld.so.cache", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=41364, ...}) = 0
mmap2(NULL, 41364, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f9c000
close(3) = 0
open("/lib/libc.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\3 00Y\1"..., 512) =
512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1408371, ...}) = 0
mmap2(NULL, 1181084, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =
0xb7e7b000
madvise(0xb7e7b000, 1181084, MADV_SEQUENTIAL|0x1) = 0
mmap2(0xb7f95000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|
MAP_DENYWRITE, 3, 0x119) = 0xb7f95000
mmap2(0xb7f99000, 9628, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|
MAP_ANONYMOUS, -1, 0) = 0xb7f99000
close(3) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb7e7a000
set_thread_area({entry_number:-1 -> 6, base_addr:0xb7e7a6b0, limit:1048575,
seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1,
seg_not_present:0, useable:1}) = 0
mprotect(0xb7f95000, 8192, PROT_READ) = 0
munmap(0xb7f9c000, 41364) = 0
gettimeofday({1230323911, 220526}, NULL) = 0
brk(0) = 0x8050000
brk(0x8071000) = 0x8071000
open("/usr/lib/locale/locale-archive", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No
such file or directory)
open("/usr/share/locale/locale.alias", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=2528, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb7fa6000
read(3, "# Locale name alias data base.\n#"..., 4096) = 2528
read(3, "", 4096) = 0
close(3) = 0
munmap(0xb7fa6000, 4096) = 0
open("/usr/lib/locale/de_DE.UTF-8/LC_IDENTIFICATION", O_RDONLY) = -1 ENOENT
(No such file or directory)
open("/usr/lib/locale/de_DE.utf8/LC_IDENTIFICATION", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=375, ...}) = 0
mmap2(NULL, 375, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7fa6000
close(3) = 0
open("/usr/lib/gconv/gconv-modules.cache", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=25404, ...}) = 0
mmap2(NULL, 25404, PROT_READ, MAP_SHARED, 3, 0) = 0xb7f9f000
close(3) = 0
open("/usr/lib/locale/de_DE.UTF-8/LC_MEASUREMENT", O_RDONLY) = -1 ENOENT (No
such file or directory)
open("/usr/lib/locale/de_DE.utf8/LC_MEASUREMENT", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=23, ...}) = 0
mmap2(NULL, 23, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f9e000
close(3) = 0
open("/usr/lib/locale/de_DE.UTF-8/LC_TELEPHONE", O_RDONLY) = -1 ENOENT (No
such file or directory)
open("/usr/lib/locale/de_DE.utf8/LC_TELEPHONE", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=56, ...}) = 0
mmap2(NULL, 56, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f9d000
close(3) = 0
open("/usr/lib/locale/de_DE.UTF-8/LC_ADDRESS", O_RDONLY) = -1 ENOENT (No such
file or directory)
open("/usr/lib/locale/de_DE.utf8/LC_ADDRESS", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=159, ...}) = 0
mmap2(NULL, 159, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f9c000
close(3) = 0
open("/usr/lib/locale/de_DE.UTF-8/LC_NAME", O_RDONLY) = -1 ENOENT (No such
file or directory)
open("/usr/lib/locale/de_DE.utf8/LC_NAME", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=83, ...}) = 0
mmap2(NULL, 83, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7e79000
close(3) = 0
open("/usr/lib/locale/de_DE.UTF-8/LC_PAPER", O_RDONLY) = -1 ENOENT (No such
file or directory)
open("/usr/lib/locale/de_DE.utf8/LC_PAPER", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=34, ...}) = 0
mmap2(NULL, 34, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7e78000
close(3) = 0
open("/usr/lib/locale/de_DE.UTF-8/LC_MESSAGES", O_RDONLY) = -1 ENOENT (No such
file or directory)
open("/usr/lib/locale/de_DE.utf8/LC_MESSAGES", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
close(3) = 0
open("/usr/lib/locale/de_DE.utf8/LC_MESSAGES/SYS_LC_MESSAGES", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=54, ...}) = 0
mmap2(NULL, 54, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7e77000
close(3) = 0
open("/usr/lib/locale/de_DE.UTF-8/LC_MONETARY", O_RDONLY) = -1 ENOENT (No such
file or directory)
open("/usr/lib/locale/de_DE.utf8/LC_MONETARY", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=294, ...}) = 0
mmap2(NULL, 294, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7e76000
close(3) = 0
open("/usr/lib/locale/de_DE.UTF-8/LC_COLLATE", O_RDONLY) = -1 ENOENT (No such
file or directory)
open("/usr/lib/locale/de_DE.utf8/LC_COLLATE", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=880086, ...}) = 0
mmap2(NULL, 880086, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7d9f000
close(3) = 0
open("/usr/lib/locale/de_DE.UTF-8/LC_TIME", O_RDONLY) = -1 ENOENT (No such
file or directory)
open("/usr/lib/locale/de_DE.utf8/LC_TIME", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=2343, ...}) = 0
mmap2(NULL, 2343, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7d9e000
close(3) = 0
open("/usr/lib/locale/de_DE.UTF-8/LC_NUMERIC", O_RDONLY) = -1 ENOENT (No such
file or directory)
open("/usr/lib/locale/de_DE.utf8/LC_NUMERIC", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=54, ...}) = 0
mmap2(NULL, 54, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7d9d000
close(3) = 0
open("/usr/lib/locale/de_DE.UTF-8/LC_CTYPE", O_RDONLY) = -1 ENOENT (No such
file or directory)
open("/usr/lib/locale/de_DE.utf8/LC_CTYPE", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=238624, ...}) = 0
mmap2(NULL, 238624, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7d62000
close(3) = 0
geteuid32() = 0
open("/dev/rtc", O_RDONLY|O_LARGEFILE) = 3
close(3) = 0
stat64("/etc/adjtime", 0xbfc984e4) = -1 ENOENT (No such file or
directory)
open("/dev/rtc", O_RDONLY|O_LARGEFILE) = 3
ioctl(3, RTC_UIE_ON, 0) = 0
select(4, [3], NULL, NULL, {5, 0}

) = 0 (Timeout)
open("/usr/share/locale-langpack/de_DE.UTF-8/LC_MESSAGES/util-linux.mo",
O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/locale/de_DE.UTF-8/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1
ENOENT (No such file or directory)
open("/usr/share/locale-langpack/de_DE.utf8/LC_MESSAGES/util-linux.mo",
O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/locale/de_DE.utf8/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1
ENOENT (No such file or directory)
open("/usr/share/locale-langpack/de_DE/LC_MESSAGES/util-linux.mo", O_RDONLY)
= -1 ENOENT (No such file or directory)
open("/usr/share/locale/de_DE/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1
ENOENT (No such file or directory)
open("/usr/share/locale-langpack/de.UTF-8/LC_MESSAGES/util-linux.mo",
O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/locale/de.UTF-8/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1
ENOENT (No such file or directory)
open("/usr/share/locale-langpack/de.utf8/LC_MESSAGES/util-linux.mo", O_RDONLY)
= -1 ENOENT (No such file or directory)
open("/usr/share/locale/de.utf8/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1
ENOENT (No such file or directory)
open("/usr/share/locale-langpack/de/LC_MESSAGES/util-linux.mo", O_RDONLY) = -1
ENOENT (No such file or directory)
open("/usr/share/locale/de/LC_MESSAGES/util-linux.mo", O_RDONLY) = 4
fstat64(4, {st_mode=S_IFREG|0644, st_size=181398, ...}) = 0
mmap2(NULL, 181398, PROT_READ, MAP_PRIVATE, 4, 0) = 0xb7d35000
close(4) = 0
write(2, "select() auf /dev/rtc, um auf Ze"..., 67select() auf /dev/rtc, um
auf Zeittick zu warten, Zeit abgelaufen.
) = 67
ioctl(3, RTC_UIE_OFF, 0) = 0
close(3) = 0
exit_group(1) = ?
Process 12489 detached

# ls -l /usr/lib/locale/de_DE.utf8/
insgesamt 1144
-rw-r--r-- 1 root root 159 2006-06-16 14:44 LC_ADDRESS
-rw-r--r-- 103 root root 880086 2006-06-16 14:42 LC_COLLATE
-rw-r--r-- 5 root root 238624 2006-06-16 14:43 LC_CTYPE
-rw-r--r-- 1 root root 375 2006-06-16 14:44 LC_IDENTIFICATION
-rw-r--r-- 211 root root 23 2006-06-16 14:42 LC_MEASUREMENT
drwxr-xr-x 2 root root 4096 2006-10-10 09:24 LC_MESSAGES
-rw-r--r-- 5 root root 294 2006-06-16 14:44 LC_MONETARY
-rw-r--r-- 1 root root 83 2006-06-16 14:44 LC_NAME
-rw-r--r-- 32 root root 54 2006-06-16 14:43 LC_NUMERIC
-rw-r--r-- 209 root root 34 2006-06-16 14:42 LC_PAPER
-rw-r--r-- 2 root root 56 2006-06-16 14:44 LC_TELEPHONE
-rw-r--r-- 1 root root 2343 2006-06-16 14:44 LC_TIME
# ls -l /usr/lib/locale/de_DE.utf8/LC_MESSAGES/
insgesamt 4

Das LC_MESSAGES Verzeichnis ist also leer. Interessant. Scheint aber normal zu
sein.

Bei der strace-Ausgabe, Zeilen:

open("/dev/rtc", O_RDONLY|O_LARGEFILE) = 3
ioctl(3, RTC_UIE_ON, 0) = 0
select(4, [3], NULL, NULL, {5, 0}

) = 0 (Timeout)

gibt es nach dem "select(4" einen timeout. Genauso wie bei einem
einfachen "cat /dev/rtc".

Da weiß ich immer noch nicht weiter.

Viele Grüße
Manfred
Sven Hartge (27.12.2008, 02:00)
Manfred Rebentisch <debianlist> wrote:

> Bei der strace-Ausgabe, Zeilen:


> open("/dev/rtc", O_RDONLY|O_LARGEFILE) = 3
> ioctl(3, RTC_UIE_ON, 0) = 0
> select(4, [3], NULL, NULL, {5, 0}


> ) = 0 (Timeout)


> gibt es nach dem "select(4" einen timeout. Genauso wie bei einem
> einfachen "cat /dev/rtc".


> Da weiß ich immer noch nicht weiter.


Dumm gefragt: Das ist kein virtuelle Server, keine Xen-Domäne, keine
VMware-Instanz? Da wäre das dann nämlich nicht verwunderlich.

Manfred Rebentisch (27.12.2008, 08:40)
Hallo Sven,
danke für Deine Antwort.

Am Samstag 27 Dezember 2008 00:49:53 schrieb Sven Hartge:
> Manfred Rebentisch <debianlist> wrote:
> Dumm gefragt: Das ist kein virtuelle Server, keine Xen-Domäne, keine
> VMware-Instanz? Da wäre das dann nämlich nicht verwunderlich.

Keine dumme Frage!
Es ist ein XEN-Server, aber hier geht es um die domain0, den "Hauptserver"
oder wie immer man es nennt. Und das Problem müßte ich entweder zwei Jahre
lang übersehen haben oder es hat früher funktioniert.

Manfred
Uwe Kerstan (27.12.2008, 19:50)
* Manfred Rebentisch [26-12-2008 07:34]:

> # hwclock --utc --systohc
> select() auf /dev/rtc, um auf Zeittick zu warten, Zeit abgelaufen.
> # hwclock --show
> select() auf /dev/rtc, um auf Zeittick zu warten, Zeit abgelaufen.


Ich kenne nur die englische Meldung:
select() to /dev/rtc to wait for clock tick timed out
Schau mal ins Archiv:
Jörg Sommer (27.12.2008, 20:00)
Hallo Manfred,

Manfred Rebentisch <debianlist> wrote:
> Am Samstag 27 Dezember 2008 00:49:53 schrieb Sven Hartge:
> Keine dumme Frage!
> Es ist ein XEN-Server, aber hier geht es um die domain0, den "Hauptserver"
> oder wie immer man es nennt. Und das Problem müßte ich entweder zwei Jahre
> lang übersehen haben oder es hat früher funktioniert.


Taucht irgendwas interessantes bei dmesg auf?

Schöne Grüße, Jörg.
Oliver Freyd (28.12.2008, 19:30)
On Sat, Dec 27, 2008 at 04:58:42PM +0100, Uwe Kerstan wrote:
> * Manfred Rebentisch [26-12-2008 07:34]:
> Ich kenne nur die englische Meldung:
> select() to /dev/rtc to wait for clock tick timed out
> Schau mal ins Archiv:
>
> Gruß Uwe

Ich hatte dasselbe Problem bei meinem Laptop, als ich von kernel-2.4
auf 2.6 gewechselt bin. Ich habe dann das kernel-modul rtc durch genrtc
ersetzt, das tut es ordentlich. Auf LKML gab es auch einen thread dazu,
habe es aber nicht mehr im Kopf. Es tritt nicht bei allen Mainboards
auf, hängt davon ab, was für eine Art von RTC man hat.

Gruß Oliver
Ähnliche Themen