Alexandre Courtiol
2023-Jun-12 10:53 UTC
[R-sig-Fedora] Problem with R, staged installation for packages, and samba share
Dear Fedora-R enthusiasts, We are experiencing some issues with the binary releases of R 4.3 for Fedora 37 & 38 when running it on our infrastructure. The issue is that packages won't install, unless the (default) staged installation process for packages is switched off (--no-staged-install). It seems to be related to the fact that we are storing R libraries on a drive mounted via samba share. Interestingly, installing R from sources does not cause the issue. When using other OS (e.g. Arch) on the same infrastructure, the problem also disappears. We are looking for a way out that would allow users to install R packages as usual and that would ideally not force the admin to install R from sources. The issue should be reproducible as follows: 1. Mount the share: $ mount -t cifs //server/share /mnt/share -o ...options... 2. Put R library onto the share: $ mkdir /mnt/share/R $ ln -s /mnt/share/R ~/R 3. Install a package that has dependencies (It doesn't matter whether the dependencies actually have to be installed or not. E.g. if you install all of the dependencies of 'dplyr' and then install 'dplyr' itself in an extra call to 'install.packages', the problem will still be triggered.): $ Rscript -e "install.packages('dplyr', repos='https://cloud.r-project.org ')" 4. The installation will fail while trying to move the package to its final location: mv: cannot move '/mnt/share/R/x86_64-redhat-linux-gnu-library/4.3/00LOCK-dplyr/00new/dplyr' to '/mnt/share/R/x86_64-redhat-linux-gnu-library/4.3/dplyr': Permission denied ERROR: moving to final location failed 5. Moving the folder as described in the error manually from the shell succeeds: $ mv /mnt/share/R/x86_64-redhat-linux-gnu-library/4.3/00LOCK-dplyr/00new/dplyr /mnt/share/R/x86_64-redhat-linux-gnu-library/4.3/dplyr $ # => works And if R is either compiled from source (taking the usual "configure/make/make install" route) or installed from Conda, the permission error at step 4 doesn't happen. We also tested creating the binary RPM package on the same machine, and the result was the same as installing the binary package from the repo (i.e. error). ++ -- Alexandre Courtiol, www.datazoogang.de [[alternative HTML version deleted]]
Tom Callaway
2023-Jun-12 11:18 UTC
[R-sig-Fedora] Problem with R, staged installation for packages, and samba share
Hmm, that's a weird one. Is SELinux on and enforcing on that setup? ~spot On Mon, Jun 12, 2023, 6:55 AM Alexandre Courtiol < alexandre.courtiol at gmail.com> wrote:> Dear Fedora-R enthusiasts, > > We are experiencing some issues with the binary releases of R 4.3 for > Fedora 37 & 38 when running it on our infrastructure. > > The issue is that packages won't install, unless the (default) staged > installation process for packages is switched off (--no-staged-install). > > It seems to be related to the fact that we are storing R libraries on a > drive mounted via samba share. > > Interestingly, installing R from sources does not cause the issue. > When using other OS (e.g. Arch) on the same infrastructure, the problem > also disappears. > > We are looking for a way out that would allow users to install R packages > as usual and that would ideally not force the admin to install R from > sources. > > The issue should be reproducible as follows: > > 1. Mount the share: > > $ mount -t cifs //server/share /mnt/share -o ...options... > > 2. Put R library onto the share: > > $ mkdir /mnt/share/R > $ ln -s /mnt/share/R ~/R > > 3. Install a package that has dependencies (It doesn't matter whether the > dependencies actually have to be installed or not. E.g. if you install all > of the dependencies of 'dplyr' and then install 'dplyr' itself in an extra > call to 'install.packages', the problem will still be triggered.): > > $ Rscript -e "install.packages('dplyr', repos='https://cloud.r-project.org > ')" > > 4. The installation will fail while trying to move the package to its final > location: > > mv: cannot move > '/mnt/share/R/x86_64-redhat-linux-gnu-library/4.3/00LOCK-dplyr/00new/dplyr' > to '/mnt/share/R/x86_64-redhat-linux-gnu-library/4.3/dplyr': Permission > denied > ERROR: moving to final location failed > > 5. Moving the folder as described in the error manually from the shell > succeeds: > > $ mv > /mnt/share/R/x86_64-redhat-linux-gnu-library/4.3/00LOCK-dplyr/00new/dplyr > /mnt/share/R/x86_64-redhat-linux-gnu-library/4.3/dplyr > $ # => works > > And if R is either compiled from source (taking the usual > "configure/make/make install" route) or installed from Conda, the > permission error at step 4 doesn't happen. We also tested creating the > binary RPM package on the same machine, and the result was the same as > installing the binary package from the repo (i.e. error). > > ++ > > > -- > Alexandre Courtiol, www.datazoogang.de > > [[alternative HTML version deleted]] > > _______________________________________________ > R-SIG-Fedora mailing list > R-SIG-Fedora at r-project.org > https://stat.ethz.ch/mailman/listinfo/r-sig-fedora >[[alternative HTML version deleted]]
Reasonably Related Threads
- Problem with R, staged installation for packages, and samba share
- Problem with R, staged installation for packages, and samba share
- Problem with R, staged installation for packages, and samba share
- Problem with R, staged installation for packages, and samba share
- paths capability FALSE on devel?