[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: beware sysvinit 2.58 installation

> The 0.93R6 sysvinit-2.57b used /var/log/initrunlevel as the file to
> communicate with init. The debian-1.0 version of sysvinit-2.57b

Interesting. I was just about to submit a report about how if I did a
shutdown -h now, it halted the system, and then if I hit ctl-alt-del I
got a message about "unable to write to /var/log/initrunlevel". It
turns out that I don't *have* a /var/log/initrunlevel, even in normal
operation... it appears that the sysvinit-2.57b package doesn't
create it, and init itself doesn't either.

So I tried to figure out where telinit was actually writing... and
found a bug in strace -- note the open, and then the write; the args
to open are pretty clearly wrong (since not only doesn't that file
exist, the directory doesn't...)

stat("/usr/lib/locale/libc/C/usr/share/locale/C/libc.cat", 0xbffff46c) = -1 ENOENT (No such file or directory)
stat("/usr/local/share/locale/C/libc.cat", 0xbffff46c) = -1 ENOENT (No such file or directory)
geteuid()                               = 0
umask(022)                              = 022
brk(0xb000)                             = 0xb000
open("/usr/local/share/locale/C/libc.cat", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
brk(0xc000)                             = 0xc000
write(3, "2 20", 4)                     = 4
close(3)                                = 0
INIT: Switching to runlevel: 2
)                         = 0
_exit(0)                                = ?

curiouser and curiouser...

Reply to: