[Comm] Использование start-stop-daemon
Eugene Prokopiev
=?iso-8859-1?q?prokopiev_=CE=C1_stc=2Edonpac=2Eru?=
Пн Ноя 6 16:41:28 MSK 2006
> Но есть другая проблема:
>
> [root на mydomain root]# ps aux | grep myservice
> [root на mydomain root]# start-stop-daemon --quiet --start -b -m --pidfile
> /var/run/myservice.pid --user myservice --exec /usr/bin/myservice
> [root на mydomain root]# ps aux | grep myservice
> root 6129 1.0 0.1 1612 824 ? S 14:22 0:00 /bin/sh
> /usr/bin/myservice
>
> Почему myservice стартует от root?
>
> Пользователь myservice есть, при указании несуществующего получаю:
>
> start-stop-daemon: user `myservice1' not found
strace вообще не показывает попыток сменить uid:
[root на mydomain root]# strace -f start-stop-daemon --start --user
myservice --exec /usr/bin/myservice &> daemon.strace
[root на mydomain root]# grep myservice daemon.strace
execve("/sbin/start-stop-daemon", ["start-stop-daemon", "--start",
"--user", "myservice", "--exec", "/usr/bin/myservice"], [/* 34 vars */]) = 0
stat64("/usr/bin/myservice", {st_mode=S_IFREG|0755, st_size=25, ...}) = 0
execve("/usr/bin/myservice", ["/usr/bin/myservice"], [/* 34 vars */]) = 0
open("/usr/bin/myservice", O_RDONLY|O_LARGEFILE) = 3
есть только такое:
open("/etc/passwd", O_RDONLY) = 3
fcntl64(3, F_GETFD) = 0
fcntl64(3, F_SETFD, FD_CLOEXEC) = 0
fstat64(3, {st_mode=S_IFREG|0644, st_size=2678, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x124000
read(3, "root:x:0:0:System Administrator:"..., 4096) = 2678
close(3) = 0
и что бы это значило?
--
С уважением, Прокопьев Евгений
Подробная информация о списке рассылки community