On Mon, 1 Jun 2020, John Burrell via blfs-dev wrote:

On Mon, 1 Jun 2020 at 11:35, Xi Ruoyao via blfs-dev
<[email protected]> wrote:

On 2020-06-01 10:58 +0100, John Burrell via blfs-dev wrote:
> I use MSB's package user package management system and up til now it
> has worked fine but I've come unstuck installing sudo-1.9.0.
>
> I get:
>
> make[1]: Entering directory '/usr/src/security/sudo/sudo-1.9.0/lib/util'
> /bin/sh ../../scripts/mkinstalldirs /usr/lib/sudo
> case "" in \
> *-no-install*) ;; \
> *)  if [ X"yes" = X"yes" ]; then \
> INSTALL_BACKUP='' /bin/sh ../../libtool --tag=disable-static --quiet
> --mode=install /bin/sh ../../install-sh -c -o 0 -g 0 libsudo_util.la
> /usr/lib/sudo; \
>     fi;; \
> esac
> /sbin/chown: changing ownership of
> '/usr/lib/sudo/libsudo_util.so.0.0.0': Operation not permitted
> make[1]: *** [Makefile:284: install] Error 1
>
> In the dir lib/util the relevant bit of the Makefile.in is:
>
> install: install-dirs
>         case "$(LT_LDFLAGS)" in \
>         *-no-install*) ;; \
>         *)  if [ X"$(shlib_enable)" = X"yes" ]; then \
>                 INSTALL_BACKUP='$(INSTALL_BACKUP)' $(LIBTOOL)
> $(LTFLAGS) --quiet --mode=install $(INSTALL) $(INSTALL_OWNER)
> libsudo_util.la $(DESTDIR)$(libexecdir)/sudo; \
>             fi;; \
>         esac
>
> install-dirs:
>         $(SHELL) $(scriptdir)/mkinstalldirs $(DESTDIR)$(libexecdir)/sudo
>
> install-binaries:
>
> install-includes:
>
> install-doc:
>
> install-plugin:
>
> I assume the chown occurs as part of the install-binaries but I can't
> find the code for install-binaries. Could someone give me a clue as to
> where I might find this code?

I never use this package management approach but it does not make sense to
install sudo with a non-root user owning it.  sudo only works as a setuid-root
executable.
--
I set any necessary setuid-root binaries and the required root
ownerships after installation. But at the moment I can't install it.
I need to edit the Makefile to remove the chown on the library in
/usr/lib/sudo but I don't know where that chown command is.

Thanks

jb.

One change that can be made is by editing the Makefile.in:

Look for these lines:
# User and group ids the installed files should be "owned" by
install_uid = 0
install_gid = 0

By replacing the 0s with the uid/gid of the user who's building Sudo,
you'll be able to install Sudo in a DESTDIR way without any errors.  Of
course it'll be up to you to change the ownership of the files
afterwards.  The file permissions should not need to be modified (at
least that's been my experience).

Cheers,

--Ryan
--
http://lists.linuxfromscratch.org/listinfo/blfs-dev
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to