Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 142308 - revdep-rebuild doesn't like to be called via sudo on root-squashed nfs home directory
Summary: revdep-rebuild doesn't like to be called via sudo on root-squashed nfs home d...
Status: RESOLVED FIXED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Tools (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Portage Tools Team
URL:
Whiteboard:
Keywords: InVCS
Depends on:
Blocks:
 
Reported: 2006-07-31 11:22 UTC by andrew boie
Modified: 2007-03-09 04:26 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description andrew boie 2006-07-31 11:22:25 UTC
Portage 2.1.1_pre4-r1 (default-linux/x86/2005.1, gcc-3.4.6, glibc-2.3.6-r4, 2.6.16-rt26-dski-smp i686)
=================================================================
System uname: 2.6.16-rt26-dski-smp i686 Intel(R) Pentium(R) 4 CPU 2.40GHz
Gentoo Base System version 1.6.15
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.3 [enabled]
app-admin/eselect-compiler: [Not Present]
dev-lang/python:     2.3.5-r2, 2.4.3-r1
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.3
dev-util/confcache:  [Not Present]
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.16.1-r3
sys-devel/gcc-config: 1.3.13-r3
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O3 -march=pentium4 -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-O3 -march=pentium4 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache distlocks metadata-transfer sandbox sfperms strict"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 X alsa apm arts avi berkdb bitmap-fonts cli crypt cups dlloader dri eds emboss encode foomaticdb fortran gdbm gif gnome gpm gstreamer gtk gtk2 imlib ipv6 isdnlog jpeg kde libg++ libwww mad mikmod motif mp3 mpeg mysql ncurses nls nvidia ogg oggvorbis opengl oss pam pcre pdflib perl png pppd python qt qt3 qt4 quicktime readline reflection sdl session spell spl ssl tcpd truetype truetype-fonts type1-fonts vorbis xml2 xmms xorg xv zlib elibc_glibc input_devices_keyboard input_devices_mouse input_devices_evdev kernel_linux userland_GNU"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY

i have a gentoo machine with /home mounted from a remote machine over nfs. root squash is turned on. for system administration tasks i often use sudo. this has never been a problem (emerge, etc. work fine) but one day i needed to use revdep-rebuild with the following result. obviously, it is trying to write temporary files to my home directory and failing because it isn't allowed to.

boie@legolas ~
$ sudo revdep-rebuild
Configuring search environment for revdep-rebuild
/usr/bin/revdep-rebuild: line 312: /home/boie/.revdep-rebuild.0_env: Permission denied
/usr/bin/revdep-rebuild: line 313: /home/boie/.revdep-rebuild.0_env: Permission denied
/usr/bin/revdep-rebuild: line 314: /home/boie/.revdep-rebuild.0_env: Permission denied
/usr/bin/revdep-rebuild: line 315: /home/boie/.revdep-rebuild.0_env: Permission denied
/usr/bin/revdep-rebuild: line 316: /home/boie/.revdep-rebuild.0_env: Permission denied
/usr/bin/revdep-rebuild: line 317: /home/boie/.revdep-rebuild.0_env: Permission denied

Checking reverse dependencies...

Packages containing binaries and libraries broken by a package update
will be emerged.

Collecting system binaries and libraries.../usr/bin/revdep-rebuild: line 359: /home/boie/.revdep-rebuild.0_files: Permission denied
/usr/bin/revdep-rebuild: line 369: /home/boie/.revdep-rebuild.1_files: Permission denied
mv: cannot stat `/home/boie/.revdep-rebuild.1_files': No such file or directory
/usr/bin/revdep-rebuild: line 369: /home/boie/.revdep-rebuild.1_files: Permission denied
mv: cannot stat `/home/boie/.revdep-rebuild.1_files': No such file or directory
mv: cannot stat `/home/boie/.revdep-rebuild.0_files': No such file or directory
 done.
  (/home/boie/.revdep-rebuild.1_files)

Collecting complete LD_LIBRARY_PATH.../usr/bin/revdep-rebuild: line 388: /home/boie/.revdep-rebuild.1_files: No such file or directory
/usr/bin/revdep-rebuild: line 389: /home/boie/.revdep-rebuild.2_ldpath: Permission denied
 done.
  (/home/boie/.revdep-rebuild.2_ldpath)
cat: /home/boie/.revdep-rebuild.2_ldpath: No such file or directory

Checking dynamic linking consistency...
/usr/bin/revdep-rebuild: line 403: /home/boie/.revdep-rebuild.3_rebuild: Permission denied
cat: /home/boie/.revdep-rebuild.1_files: No such file or directory
cat: /home/boie/.revdep-rebuild.1_files: No such file or directory
 done.
  (/home/boie/.revdep-rebuild.3_rebuild)

Assigning files to ebuilds... Nothing to rebuild
/usr/bin/revdep-rebuild: line 572: /home/boie/.revdep-rebuild.4_ebuilds: Permission denied

Evaluating package order...cat: /home/boie/.revdep-rebuild.4_ebuilds: No such file or directory
/usr/bin/revdep-rebuild: line 618: /home/boie/.revdep-rebuild.5_order: Permission denied
 done.
  (/home/boie/.revdep-rebuild.5_order)
cat: /home/boie/.revdep-rebuild.5_order: No such file or directory

Dynamic linking on your system is consistent... All done.
rm: missing operand
Try `rm --help' for more information.
rm: missing operand
Try `rm --help' for more information.
boie@legolas ~

aside from all the errors, the dynamic linking on the system was, in fact, inconsistent. logging in as root and running revdep-rebuild worked fine. off the top of my head, i suggest either having the program write its files to /tmp, or at least catch the errors and fail.
Comment 1 Paul Varner (RETIRED) gentoo-dev 2006-09-03 14:26:38 UTC
Fix is in subversion revision 313.
Comment 2 Paul Varner (RETIRED) gentoo-dev 2007-01-08 21:23:35 UTC
Fix was released in gentoolkit-0.2.3_pre1
Comment 3 Paul Varner (RETIRED) gentoo-dev 2007-03-09 04:26:58 UTC
Fixed in gentoolkit-0.2.3