Re: What is location for building/ installing system-wide software?
On Thu, 2013-09-19 at 20:32 -0600, Bob Proulx wrote:
> Gregory Nowak wrote:
> > David Christensen wrote:
> > > But, this implies working as root. I prefer building in my home
> > > directory as a normal user, and finishing with "sudo make install",
> > > "sudo vi /etc/<projectrc>", etc..
> > >
> > > Does anybody have any compelling arguments for building as root
> > > under /usr/local/src?
It's recommended to never build as root, but ...
> >
> > Since I need to become root in order to install,
>
> Why? Seriously, it isn't needed. Just group 'staff'.
... simply allow a group (an already existing group or add a new group)
to access /usr/src/ without root access. However, you could build in
what ever directory you like, while e.g. ~/foo_bar is ok too, I prefer
to use /usr/src. I suspect some people build in /tmp. Regarding to the
usage of your machine you also could keep root:root but chmod /usr/src
to write access for others.
> > I just go ahead and do the whole thing from start to finish as root
>
> The problem with that is that a mistake (or nefarious intent) in a
> Makefile can cause the build to crawl out of the build directory and
> into the rest of the system. Sure it would be a bug. Sure it would
> be addressed in a different version. But there is no safety net.
> Once tripped over then the damage to your system is already done.
Seldom, but sometimes I risk to build as root. Sure, a makefile could
delete everything on a HDD. OTOH I "seldom" read that people should do a
dry run for make install, before they run make install as root and the
make install also could damage your system.
My preferred solution is
$ ls -hald /usr/src
drwxrwxr-x 21 root rocketmouse 4.0K Sep 17 17:06 /usr/src
Where rocketmouse is me, myself and I.
rwxrwxrwx might be a little bit risky, but assumed there's no Internet
access and it's a single user machine, even this wouldn't be a security
risk.
Reply to: