Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
make xconfig, unable to save .config
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware
View previous topic :: View next topic  
Author Message
Silmano
n00b
n00b


Joined: 10 Mar 2012
Posts: 41

PostPosted: Mon Oct 22, 2012 8:13 am    Post subject: make xconfig, unable to save .config Reply with quote

I'm trying to use make xconfig to edit and save the .config file of the kernel. To do so I've tried loading the .config file in /usr/src/linux via xconfig and tried to save it somewhere else (/tmp, /home/user), but everytime I try to save it, xconfig returns the "unable to save file" error (despite I have rw permissions in the places I've tried to save it.

I also changed /usr/src/linux/.config permissions to 666 but again the error was the same.

Any clue what could it be or where could I find any other message/log about this that will point in the right direction to search?
Back to top
View user's profile Send private message
paulj
Guru
Guru


Joined: 30 Sep 2004
Posts: 342
Location: Wales, UK

PostPosted: Mon Oct 22, 2012 5:55 pm    Post subject: Reply with quote

Does it save it back to /usr/src/linux/.config ok? If you want to edit a config and save it somewhere else, you could also make a copy of the start file with a different name. Of course this is not to avoid the original bug, but to establish where the problem lies.

I'll have a go when I get home and see what my system does.
Back to top
View user's profile Send private message
Silmano
n00b
n00b


Joined: 10 Mar 2012
Posts: 41

PostPosted: Mon Oct 22, 2012 6:33 pm    Post subject: Reply with quote

No it doesn't work. The message from the xconfig is the following "Unable to save configuration".

I can open a .config file without problems, even I've tried to move the .config as root to /tmp and name it asd with rw permissions, but I'm unable to save it with a normal user.

EDIT: I've just tried using root porting xauth from a normal user and it seems root can do all just fine. Still the idea should be to be able to change it with a normal user, then compile it with root...
Back to top
View user's profile Send private message
paulj
Guru
Guru


Joined: 30 Sep 2004
Posts: 342
Location: Wales, UK

PostPosted: Mon Oct 22, 2012 8:13 pm    Post subject: Reply with quote

Bizarre! I ran "make xconfig" as a user (not root), and it fails with the error message
Code:
scripts/basic/fixdep.c:433:1: fatal error: opening dependency file scripts/basic/.fixdep.d: Permission denied

(just what I expected - no surprise really as I haven't touched the permissions in /usr/src/linux)
Running as root, selecting "save as..." from the menu and locating somewhere else on the disk, it completely ignores both the path and file name I enter, and saves .config in the /usr/src/linux directory! So it doesn't do what I would expect, but also it doesn't issue an error message.

make menuconfig (my normal tool choice) does exactly what it should and saves the file where I ask with the correct filename. I always do it as root as well.
Back to top
View user's profile Send private message
mv
Advocate
Advocate


Joined: 20 Apr 2005
Posts: 4105

PostPosted: Mon Oct 22, 2012 8:27 pm    Post subject: Reply with quote

Silmano wrote:
then compile it with root...

You shouldn't compile the kernel as root, only install it as root.
Back to top
View user's profile Send private message
Silmano
n00b
n00b


Joined: 10 Mar 2012
Posts: 41

PostPosted: Tue Oct 23, 2012 7:58 am    Post subject: Reply with quote

paulj wrote:
Bizarre! I ran "make xconfig" as a user (not root), and it fails with the error message
Code:
scripts/basic/fixdep.c:433:1: fatal error: opening dependency file scripts/basic/.fixdep.d: Permission denied

(just what I expected - no surprise really as I haven't touched the permissions in /usr/src/linux)

If you run "make xconfig" as root (despite not importing xauth), it will create the needed files to run it. Then you can run it with any user (but again can't save it).

I usually use "make menuconfig", but I wanted to try "make xconfig" since I found its faster to configure.

mv wrote:
You shouldn't compile the kernel as root, only install it as root.

Should I install it and then change the permissions so another user can compile it? Any idea why I shouldn't compile it as root?
Back to top
View user's profile Send private message
paulj
Guru
Guru


Joined: 30 Sep 2004
Posts: 342
Location: Wales, UK

PostPosted: Tue Oct 23, 2012 11:49 am    Post subject: Reply with quote

mv wrote:
Silmano wrote:
then compile it with root...

You shouldn't compile the kernel as root, only install it as root.


If this is best practice, the permissions should be setup to allow this to happen on installation of the source. If general access is not such a good idea, there could be a group for kernel compiling to give some flexibility as to who can compile.

I recognise there are some risks from compiling the kernel as root, but since all packages are compiled as root in gentoo (admittedly in a sandbox), is the risk not limited? I have to admit I don't know much about security management during the package management process, so please don't flame me if I have exposed a big misunderstanding on my behalf! :oops:
Back to top
View user's profile Send private message
mv
Advocate
Advocate


Joined: 20 Apr 2005
Posts: 4105

PostPosted: Tue Oct 23, 2012 3:31 pm    Post subject: Reply with quote

paulj wrote:
mv wrote:
You shouldn't compile the kernel as root, only install it as root.


If this is best practice, the permissions should be setup to allow this to happen

This is easy to do (as user):
Code:
mkdir ~/compiled_kernel
export KBUILD_OUTPUT=~/compiled_kernel
make xconfig
make

Quote:
If general access is not such a good idea, there could be a group for kernel compiling to give some flexibility as to who can compile.

Read access of your kernel configuration, at least for user/group "portage", is a good idea, since some ebuilds need to read your kernel configuration. Therefore, I suggest to set KBUILD_OUTPUT globally system wide to a directory which is +rwx for user/group portage, and to compile the kernel as user portage.
(If you want to automate the calls to sudo and make, you can use the kernel script (install e.g. sys-kernel/kernel from the mv overlay with layman)).
Quote:
but since all packages are compiled as root in gentoo (admittedly in a sandbox)

I would strongly suggest to use FEATURES="userfetch userpriv usersandbox usersync" (maybe some of these are even the default):
In this case, most things (including compiling) of portage are done as portage:portage.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum