Wolfgang Pfeiffer wrote:
Hi all, Either the Kernel How-To, as it is available from <http://www.uni-tuebingen.de/zdv/zriinfo/linux/howto/English/Kernel-HOWTO-4.html#ss4.2> is completely outdated, maybe even dangerously wrong, or ideas I found in postings from <http://lists.debian.org/debian-user/2000/debian-user-200008/thrd3.html#01345> are wrong. The Kernel How-To above, as I understand it, tells me to unpack the kernel source as root in /usr/src/. Whereas in the postings from debian-user to exactly *not* do this: "another good reason to avoid extracting tarballs as root is one could send you a tarball with a file /etc/passwd (with the absolute path embedded), if you extract it as root your /etc/passwd would be replaced... " And: "And Linus has also pointed out several times that people should *not* compile kernels in /usr/src/linux, and instead do it in their home directory as a regular user, not root. The only time you should become root is when you install the kernel." So, in short, what I found by googling about for some time: The correct way seems to be to put the kernel-source in my (non-root) homedirectory, and then cd /usr/src/ln -s /home/<someuser>/kernel-sources linuxand then, as non-root, compile the kernel in /usr/src/linux/(And then forget about some of the stuff I read in the Kernel-HowTo ?) The background to all this is that I tried to get the kernel sources as non-root while being in /usr/src/<some.kernel.directory> with rsync: Which, IIRC, isn't possible. A non-root doesn't have the permission todownload stuff to this dir, right?So the only chance I have to get the sources in there is to run rsync as root: Which is ugly wrong if I learned my lessons well: You never even try to access the net as root. Right? Thanks in anticipation. Best Regards, Wolfgang
This is why you add yourself to the src group (which in the group that owns /usr/src. Then you untar in that directory as regular user and then do something like this: make menuconfig fakeroot make-kpkg clean fakeroot make-kpkg <options> kernel_image kernel_headers cd .. sudo dpkg -i *.deb That way you only become root for the very last step. -Roberto
Attachment:
pgpqbcl6URv9j.pgp
Description: PGP signature