Running rc.d programs under a different user

Justin P. Mattock justinmattock at gmail.com
Sat Feb 6 23:08:35 PST 2010


On 02/06/10 22:11, Charles Solar wrote:
> LFS is working great, and I can safely say I know much more about linux
> then I did before going through the book, so thanks to all those who
> contributed.
>
> I am wrapping up my fileserver built from LFS SVN 2010-01-09 and I am
> trying to find a way to run a daemon process as a different user.
> In the book we only used the apps config file to specify a different
> user, ex, svn, proftpd.  But I want to run Deluge under a different user
> and it does not have a config option for this.  So I am wondering if
> there is some way I am 'supposed' to setup the init script to do this.
> I am trying to avoid installing any more unnecessary programs like
> daemon and start-stop-daemon so any advice is appreciated.
>
> Basically I want to mimic the provided example init scripts from here
> http://dev.deluge-torrent.org/wiki/UserGuide/InitScript
>
> This is what I am using at the moment
> #!/bin/sh
> # Deluge daemon startup
>
> . /etc/sysconfig/rc
> . $rc_functions
>
> case "$1" in
>          start)
>                  boot_mesg "Starting deluged service..."
>                  loadproc -p /var/run/deluged.pid /usr/sbin/deluged -c
> /etc/deluge/ -p 58840 -l /var/log/deluged.log
>                  RETVAL=$?
>                  if [ $RETVAL -eq 0 ] ; then
>                          boot_mesg "Starting deluge web ui..."
>                          loadproc -p /var/run/webluge.pid
> /usr/sbin/deluge-web -f -c /etc/deluge/ -l /var/log/webluged.log
>                  fi
>                  ;;
>          stop)
>                  boot_mesg "Stopping deluged service..."
>                  killproc /usr/sbin/deluged
>                  boot_mesg "Stopping deluge web ui..."
>                  killproc /usr/sbin/deluge-web
>                  ;;
>          restart)
>                  $0 stop
>                  sleep 1
>                  $0 start
>                  ;;
>          status)
>                  statusproc /usr/bin/deluged
>                  ;;
>          *)
>                  echo "Usage: $0 {start|stop|restart|status}"
>                  exit 1
>                  ;;
> esac
>
> I checked out the functions library and did not see anything jump out at me.
>
> Thanks
>


not sure..
first is you probably should post this on
blfs or something(so people don't bi*ch
and complain), but as for different user
tough to say I would test/try setting the user as root
maybe or something(but if this daemon checks /etc/group*shadow
for the user logging in then things might be trick).

hope this helps.

Justin P. Mattock





More information about the lfs-support mailing list