Quantcast

Unix-like permissions to allow a user to update recommended packages

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Unix-like permissions to allow a user to update recommended packages

Patrick Connolly-2
I installed R from the tar.gz file (as root) in a directory under
/usr/local.  The recommended packages are installed in a library in
that directory whereas additional packages I install in a directory
under the /home directory as a user.

Updating the additional packages is very easy with update.packages()
as a non-root user, but the recommended packages cannot be done so
readily because of file permissions.

My question is how do I set the permissions or ownerships in the
/usr/local/R-2.5.0 directory so that everything necessary can be
writable by a user?  Should I make a group for R users (total of one
member) or is it simpler than that?

TIA

--
~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.  
   ___    Patrick Connolly  
 {~._.~}           Great minds discuss ideas    
 _( Y )_            Middle minds discuss events
(:_~*~_:)       Small minds discuss people  
 (_)-(_)                             ..... Anon
         
~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: Unix-like permissions to allow a user to update recommen

Ted.Harding
On 18-Jun-07 10:11:43, Patrick Connolly wrote:

> I installed R from the tar.gz file (as root) in a directory under
> /usr/local.  The recommended packages are installed in a library in
> that directory whereas additional packages I install in a directory
> under the /home directory as a user.
>
> Updating the additional packages is very easy with update.packages()
> as a non-root user, but the recommended packages cannot be done so
> readily because of file permissions.
>
> My question is how do I set the permissions or ownerships in the
> /usr/local/R-2.5.0 directory so that everything necessary can be
> writable by a user?  Should I make a group for R users (total of one
> member) or is it simpler than that?

Since you have root access, do you need to segregate the additional
packages to a particular user?

Though I don't run R as root for general use, I always install/update
by running R CMD as root. This makes all of R ("recommended" and also
any extras) available system-wide, and no pemission problems arise.

This of course does not stop you from setting up a special .Rprofile
for each user, since this by definition lives in the user's home
directory.

Does this help? Or are there issues you haven't mentioned which make
such an approach not feasible?

Best wishes,
Ted.

--------------------------------------------------------------------
E-Mail: (Ted Harding) <[hidden email]>
Fax-to-email: +44 (0)870 094 0861
Date: 18-Jun-07                                       Time: 11:53:19
------------------------------ XFMail ------------------------------

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: Unix-like permissions to allow a user to update recommen

Patrick Connolly-2
On Mon, 18-Jun-2007 at 11:53AM +0100, Ted Harding wrote:

|> On 18-Jun-07 10:11:43, Patrick Connolly wrote:
|> > I installed R from the tar.gz file (as root) in a directory under
|> > /usr/local.  The recommended packages are installed in a library in
|> > that directory whereas additional packages I install in a directory
|> > under the /home directory as a user.
|> >
|> > Updating the additional packages is very easy with update.packages()
|> > as a non-root user, but the recommended packages cannot be done so
|> > readily because of file permissions.
|> >
|> > My question is how do I set the permissions or ownerships in the
|> > /usr/local/R-2.5.0 directory so that everything necessary can be
|> > writable by a user?  Should I make a group for R users (total of one
|> > member) or is it simpler than that?
|>
|> Since you have root access, do you need to segregate the additional
|> packages to a particular user?

It's handy to not have to reload packages that don't change between
versions of the basic installation.

|>
|> Though I don't run R as root for general use, I always install/update
|> by running R CMD as root. This makes all of R ("recommended" and also
|> any extras) available system-wide, and no pemission problems arise.
|>
|> This of course does not stop you from setting up a special .Rprofile
|> for each user, since this by definition lives in the user's home
|> directory.
|>
|> Does this help? Or are there issues you haven't mentioned which make
|> such an approach not feasible?

I don't exactly have issues.  It's not a huge problem I'm dealing
with.  It's simple enough for me to use update.packages() as a user
which will download the appropriate packages.  Though they won't be
installed, they are all in the one place in the /tmp/ directory from
where I can install them as root.  I just thought there must be a more
elegant way to set permissions so that users could write to the
subdirectories under /usr/local/R-2.xxx/.  So much of the installation
process of R and its packages is so elegant, I'd like to retain some
of that elegance.

best

--
~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.  
   ___    Patrick Connolly  
 {~._.~}           Great minds discuss ideas    
 _( Y )_            Middle minds discuss events
(:_~*~_:)       Small minds discuss people  
 (_)-(_)                             ..... Anon
         
~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: Unix-like permissions to allow a user to update recommen

Ted.Harding
On 18-Jun-07 20:27:56, Patrick Connolly wrote:

> On Mon, 18-Jun-2007 at 11:53AM +0100, Ted Harding wrote:
>
>|> On 18-Jun-07 10:11:43, Patrick Connolly wrote:
>|> > I installed R from the tar.gz file (as root) in a directory under
>|> > /usr/local.  The recommended packages are installed in a library in
>|> > that directory whereas additional packages I install in a directory
>|> > under the /home directory as a user.
>|> >
>|> > Updating the additional packages is very easy with
>|> > update.packages()
>|> > as a non-root user, but the recommended packages cannot be done so
>|> > readily because of file permissions.
>|> >
>|> > My question is how do I set the permissions or ownerships in the
>|> > /usr/local/R-2.5.0 directory so that everything necessary can be
>|> > writable by a user?  Should I make a group for R users (total of
>|> > one
>|> > member) or is it simpler than that?
>|>
>|> Since you have root access, do you need to segregate the additional
>|> packages to a particular user?
>
> It's handy to not have to reload packages that don't change between
> versions of the basic installation.
>
>|>
>|> Though I don't run R as root for general use, I always install/update
>|> by running R CMD as root. This makes all of R ("recommended" and also
>|> any extras) available system-wide, and no pemission problems arise.
>|>
>|> This of course does not stop you from setting up a special .Rprofile
>|> for each user, since this by definition lives in the user's home
>|> directory.
>|>
>|> Does this help? Or are there issues you haven't mentioned which make
>|> such an approach not feasible?
>
> I don't exactly have issues.  It's not a huge problem I'm dealing
> with.  It's simple enough for me to use update.packages() as a user
> which will download the appropriate packages.  Though they won't be
> installed, they are all in the one place in the /tmp/ directory from
> where I can install them as root.  I just thought there must be a more
> elegant way to set permissions so that users could write to the
> subdirectories under /usr/local/R-2.xxx/.  So much of the installation
> process of R and its packages is so elegant, I'd like to retain some
> of that elegance.

On my Linux, all the places where components of R might normally
be installed (/usr/lib or /usr/local/lib) are user=root, group=root,
and when I look under them practically everything is writeable
only by user=root. So you'd have to change a lot of permissions
before any other user got rights to write to these directories.
Even adding a user to group=root wouldn't change things, since
group does not have write permissions (unless user=root too).

I'm still wondering, though, why you don't just run the command
update.packages() as root. You have root access, and you said
(in the "adding user to group" context) that only one user is
involved (presumably yourself?). In that case, why not start R
as root and run update.packages()?

Or am I missing something?

Best wishes,
Ted.

--------------------------------------------------------------------
E-Mail: (Ted Harding) <[hidden email]>
Fax-to-email: +44 (0)870 094 0861
Date: 18-Jun-07                                       Time: 22:25:18
------------------------------ XFMail ------------------------------

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: Unix-like permissions to allow a user to update recommen

John Logsdon-2
In reply to this post by Patrick Connolly-2
R-ists

When you move from version to version of R a completely new directory tree is
installed so in principal if you *know* that a package is not updated you can
re-install it from the old tree or copy it to your new tree and install it.

Maybe an 'import packages from previous versions' could be included which
would search  for other installations, offer a choice if >1 and automatically
pick out the list of old packages again offering the user to check/uncheck
each package.  Then the action would import or download updated versions as
appropriate...

What would be more useful (and I don't really think this is the right list) is
to have permissions and a date stamp attached to each object and to extend
the ls() command to be able to select or sort on these aspects of an object,
also the size - just like Unix in fact (perhaps with more comprehensive
permissions although the group/world structures are not needed).

This is because as memory increases, I guess many people do what I do and
create all their objects in the workspace - then forget when we wrote and
when!

On Monday 18 June 2007 21:27:56 Patrick Connolly wrote:

> On Mon, 18-Jun-2007 at 11:53AM +0100, Ted Harding wrote:
> |> On 18-Jun-07 10:11:43, Patrick Connolly wrote:
> |> > I installed R from the tar.gz file (as root) in a directory under
> |> > /usr/local.  The recommended packages are installed in a library in
> |> > that directory whereas additional packages I install in a directory
> |> > under the /home directory as a user.
> |> >
> |> > Updating the additional packages is very easy with update.packages()
> |> > as a non-root user, but the recommended packages cannot be done so
> |> > readily because of file permissions.
> |> >
> |> > My question is how do I set the permissions or ownerships in the
> |> > /usr/local/R-2.5.0 directory so that everything necessary can be
> |> > writable by a user?  Should I make a group for R users (total of one
> |> > member) or is it simpler than that?
> |>
> |> Since you have root access, do you need to segregate the additional
> |> packages to a particular user?
>
> It's handy to not have to reload packages that don't change between
> versions of the basic installation.
>
> |> Though I don't run R as root for general use, I always install/update
> |> by running R CMD as root. This makes all of R ("recommended" and also
> |> any extras) available system-wide, and no pemission problems arise.
> |>
> |> This of course does not stop you from setting up a special .Rprofile
> |> for each user, since this by definition lives in the user's home
> |> directory.
> |>
> |> Does this help? Or are there issues you haven't mentioned which make
> |> such an approach not feasible?
>
> I don't exactly have issues.  It's not a huge problem I'm dealing
> with.  It's simple enough for me to use update.packages() as a user
> which will download the appropriate packages.  Though they won't be
> installed, they are all in the one place in the /tmp/ directory from
> where I can install them as root.  I just thought there must be a more
> elegant way to set permissions so that users could write to the
> subdirectories under /usr/local/R-2.xxx/.  So much of the installation
> process of R and its packages is so elegant, I'd like to retain some
> of that elegance.
>
> best



--
Best wishes

John

John Logsdon                               "Try to make things as simple
Quantex Research Ltd, Manchester UK         as possible but not simpler"
[hidden email]              [hidden email]
+44(0)161 445 4951/G:+44(0)7717758675       www.quantex-research.com

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: Unix-like permissions to allow a user to update recommen

Patrick Connolly-2
In reply to this post by Ted.Harding
On Mon, 18-Jun-2007 at 10:25PM +0100, Ted Harding wrote:

[....]

|> I'm still wondering, though, why you don't just run the command
|> update.packages() as root. You have root access, and you said (in
|> the "adding user to group" context) that only one user is involved
|> (presumably yourself?). In that case, why not start R as root and
|> run update.packages()?

That's probably slightly simpler than what I described.  I never think
of running R as root, so I never thought of that, but it's not as
elegant as I'd have imagined.

Since nobody has suggested a way of modifying the permissions to make
what I was thinking of possible, perhaps it really isn't.

Thanks for that suggestion.

--
~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.  
   ___    Patrick Connolly  
 {~._.~}           Great minds discuss ideas    
 _( Y )_            Middle minds discuss events
(:_~*~_:)       Small minds discuss people  
 (_)-(_)                             ..... Anon
         
~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Loading...