From owner-freebsd-questions@FreeBSD.ORG Wed Nov 3 11:26:23 2010 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6E3CC1065672 for ; Wed, 3 Nov 2010 11:26:23 +0000 (UTC) (envelope-from valentin.bud@gmail.com) Received: from mail-yx0-f182.google.com (mail-yx0-f182.google.com [209.85.213.182]) by mx1.freebsd.org (Postfix) with ESMTP id 25FC98FC1A for ; Wed, 3 Nov 2010 11:26:22 +0000 (UTC) Received: by yxl31 with SMTP id 31so366952yxl.13 for ; Wed, 03 Nov 2010 04:26:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:mime-version:received:in-reply-to :references:from:date:message-id:subject:to:cc:content-type; bh=zREcIy/exKDG6kIRHlkk8nyDIz/bZVMsYyadRQBZo5s=; b=b/r2TzmiCWgrHM/1qMagCQ2b0BeZT2eQcAemVm0NGMz/fEeOOC6FShwusGfm0yOLVR gKsSjmepRCIi1F22yoiRoDFSqT2L3ApzLc5u8zkW1HMKUv5jhYEKmDZFPl7nQ/WMnLsJ LV1IybiquCGzZY5mwyOlmKan5I77R78KC40Q8= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; b=foCtjdeyhk/LwI1AUiK2yWdfsx1GSPS4a/m9XKZKBcmmhywdjjszV+dQE74Csdvx/9 fUS/Tf9qWKGprBaplXUNtDs2YTjppj9TlKVh0tYsA0YQBtih6BzMOOJtWtTZaqBkX48v iQBGPPnnJZBRR+ZhqZvWm/ZKQpLLYw1zvEnjQ= Received: by 10.100.249.8 with SMTP id w8mr1932295anh.112.1288783581908; Wed, 03 Nov 2010 04:26:21 -0700 (PDT) MIME-Version: 1.0 Received: by 10.101.67.9 with HTTP; Wed, 3 Nov 2010 04:26:01 -0700 (PDT) In-Reply-To: <20101103104700.GA16329@orange.esperance-linux.co.uk> References: <20101103104700.GA16329@orange.esperance-linux.co.uk> From: Valentin Bud Date: Wed, 3 Nov 2010 13:26:01 +0200 Message-ID: To: Frank Shute Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: freebsd-questions Subject: Re: rc startup script - daemon: failed to set user environment X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Nov 2010 11:26:23 -0000 On Wed, Nov 3, 2010 at 12:47 PM, Frank Shute wrote: > On Wed, Nov 03, 2010 at 08:55:45AM +0200, Valentin Bud wrote: > > > > Hello community, > > > > I am trying to build a startup script for an application built from > source > > code. The application name is SOGo (sogo.nu). > > > > I will attach the rc script and the error I receive when I run it. > > > > #!/bin/sh > > # > > # > > # PROVIDE: sogod > > # REQUIRE: memcached > > # > > # Add the following lines to /etc/rc.conf to enable sogod: > > # > > # sogod_enable (bool): Set it to "YES" to enable sogod. > > # Default is "NO" > > # > > # > > > > . /etc/rc.subr > > > > name="sogod" > > rcvar=`set_rcvar` > > > > load_rc_config ${name} > > > > : ${sogod_enable="NO"} > > : ${sogod_user="sogo"} > > : ${sogod_workers="-WOWorkersCount 1"} > > : ${sogod_command="/usr/local/GNUstep/Local/Tools/Admin/sogod"} > > : ${sogod_logfile="/var/log/sogo/sogo.log"} > > > > pidfile="/var/run/sogo/sogo.pid" > > command="/usr/sbin/daemon" > > command_args="-f -p ${pidfile} -u ${sogod_user} ${sogod_command} > > ${sogod_workers} -WOPidFile ${pidfile} -WOLogFile ${sogod_logfile}" > > > > start_precmd="${name}_prestart" > > > > sogod_prestart() { > > if [ ! -d `dirname ${pidfile}` ]; then > > mkdir `dirname ${pidfile}` >/dev/null 2>&1 && chown > > ${sogod_user} `dirname ${pidfile}` > > fi > > if [ ! -d `dirname ${sogod_logfile}` ]; then > > mkdir `dirname ${sogod_logfile}` >/dev/null 2>&1 > > touch ${sogod_logfile} && chown ${sogod_user} > > ${sogod_logfile} > > fi > > if [ -z ${GNUSTEP_SYSTEM_ROOT} ]; then > > . /usr/local/GNUstep/System/Library/Makefiles/GNUstep.sh > > fi > > } > > > > run_rc_command "$1" > > > > The sogo daemon requires memcached running to start and the > > file ${sogod_logfile} > > to be readable by ${sogod_user}. I also requires the > > directory /var/run/sogo/ to be read/write > > by ${sogod_user} so it can write the PID file. The GNUstep.sh makefile > must > > be loaded > > so it can run properly. > > > > The other command_args are the startup arguments sogod takes. > > > > memcached is already started: > > sogo# sockstat | grep memcached > > nobody memcached 71167 16 tcp4 172.31.32.6:11211 *:* > > nobody memcached 71167 17 udp4 172.31.32.6:11211 *:* > > > > sogod is enabled is /etc/rc.conf > > # /usr/local/etc/rc.d/sogod rcvar > > # sogod > > # > > sogod_enable="YES" > > # (default: "") > > > > This is the error I receive when I try to start sogod > > sogo# /usr/local/etc/rc.d/sogod start > > Starting sogod. > > daemon: failed to set user environment > > /usr/local/etc/rc.d/sogod: WARNING: failed to start sogod > > > > This is the first rc script I write. What can I do to debug the problem > > further? > > > > Thank you and have a great day, > > v > > -- > > network warrior > > Starting with the obvious, did you create a sogo userID with adduser(8)? > You want to give it nologin as a shell. It will also want a group. > > > Regards, > > -- > > Frank > > Contact info: http://www.shute.org.uk/misc/contact.html > > > Hello Mr. Frank, Yes I did. sogo# id sogo uid=1001(sogo) gid=1001(sogo) groups=1001(sogo) Thank you, v -- network warrior