Re: make-kpkg: permission denied making modules_image
martin f krafft <madduck@debian.org> writes:
> Then I tried to compile a module for that kernel:
>
> make-kpkg --append-to-version
> -diamond-grsec-1.9.10+freeswan-ext-1.99+preempt-20030617-2
> --rootcmd fakeroot --added-modules nvidia modules_image
Kernel modules' support for 'make-kpkg --rootcmd fakeroot modules-image'
can be kind of spotty (and for 'make-kpkg modules' even more so), in
my experience. As other people suggested, 'fakeroot make-kpkg' is a
little more likely to actually work. (But IMHO, packages should be
updated so that --rootcmd works, and that 'make-kpkg modules' actually
generates a .changes file; the patches to do this generally aren't
that hard, but I haven't been good about submitting them.)
> This fails:
>
> if [ -f /usr/src/modules/nvidia/debian/control.template ]; then \
> cp -a /usr/src/modules/nvidia/debian/control.template
> /usr/src/modules/nvidia/debian/control; \
> fi
> cp: cannot create regular file
> `/usr/src/modules/nvidia/debian/control': Permission denied
Right: with the default setup, the user who runs make-kpkg needs write
access to /usr/src/modules, or you need to run under sudo.
> So I am wondering: what am I doing wrong? I *should* be able to
> compile modules for an existing kernel tree without write privs to
> /usr/src/modules/..., right?
Try, for example:
cd $HOME/src
tar xzf /usr/src/i2c.tar.gz
tar xzf /usr/src/lm-sensors.tar.gz
export MODULE_LOC=$HOME/src/modules
cd $HOME/src/kernel-source-2.4.21
make-kpkg --rootcmd=fakeroot modules-image
Setting the MODULE_LOC environment variable will tell make-kpkg to
look somewhere besides /usr/src/modules for kernel modules.
--
David Maze dmaze@debian.org http://people.debian.org/~dmaze/
"Theoretical politics is interesting. Politicking should be illegal."
-- Abra Mitchell
Reply to: