problems with portupgrade under non-root user

Sergey Matveychuk sem at FreeBSD.org
Mon Feb 26 21:31:05 UTC 2007


Julian C. Dunn wrote:
> I want to set up a FreeBSD system so that all portupgrades are done by a
> "portbld" user, which has restricted 'sudo' rights to execute only
> portupgrade-related commands. To that end, I did the following:
> 
> $ sudo chown -R portbld:portbld /usr/ports
> $ sudo chown -R portbld:portbld /var/db/sup/ports-all
> $ cd /usr/ports && sudo -u portbld make update
> (cvsup runs)
> (add 'portbld' to sudoers with NOPASSWD: ALL for now)
> $ sudo -u portbld portupgrade -s dovecot

You need root at least for port install.

> 
> Unfortunately this last step doesn't work: ruby dumps core:
> 
> Making all in doc
> cat dovecot-config.in|sed "s|moduledir=|moduledir=/usr/local/lib/dovecot|"
>> dovecot-config
> ** Listing the failed packages (*:skipped / !:failed)
>         ! mail/dovecot (dovecot-1.0.r22)        (Permission denied)
> --->  Packages processed: 0 done, 0 ignored, 0 skipped and 1 failed
> /usr/local/sbin/portupgrade:2084: [BUG] Segmentation fault
> ruby 1.8.5 (2006-12-25) [i386-freebsd6]
> 
> Abort trap: 6 (core dumped)

/var/db/pkg and var/db/ports must be writable for the user too.

-- 
Dixi.
Sem.


More information about the freebsd-stable mailing list