[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