Closed scott-huberty closed 1 month ago
After further investigation, I think this is a corner case that popped up because of a quirk at my institutions HPC cluster. I think that typically someone would launch a singularity container on a filesystem where they have user
or group
privileges, and those privileges are inherited in the container. This isn't the case for me (at least on my HPC), which is why I am hitting the error, because none of the files in home/bibsnet/data
give any file permissions unless they come from someone with user
or group
privileges.
Technically I think the fix would be to give recursive others
read execute permissions to the /home/bibsnet/data
folder, something like:
chmod -R o+rx /home/bibsnet/data/
I took a peek and it does seem like other directories in that container have read execute permissions for the other
group.
But really this choice is up to the maintainers, who would have to weigh whether it's a security concern to do this. No hurt feelings on my end if you choose not to.
In the mean time I am going to work around my issue by doing this myself on a fork of the bibsnet image.
I received a permission error while using the latest image too. Any solution to resolve this?
Can anyone replicate this issue using the latest image (3.4.1) with singularity?
It will immediately fail with a permissions error on a file:
Full Stack Trace
```console "uname": executable file not found in $PATH Matplotlib created a temporary config/cache directory at /tmp/matplotlib-skmue9my because the default path (/home/hubers2/.config/matplotlib) is not a writable directory; it is highly recommended to set the MPLCONFIGDIR environment variable to a writable directory, in particular to speed up the import of Matplotlib and to better support multiprocessing. Traceback (most recent call last): File "/home/bibsnet/bibsnet", line 50, inIf I enter into the singularity container with:
and once I am in the container, I run:
indeed I confirm that others have no file permissions:
And it would seem that the 'user' inside the container launching these commands does not belong to the 'root' group (i.e. it falls under the
others
permissions) and has no permissions to the filesystem (the---
in-rwxrwx---
== no permissions).I am running on a GPU cluster so debugging this is not necessarily trivial, so as a first pass I wanted to see if anyone can replicate this? If you launch BIBSnet with Singularity and the pipeline makes it longer than 10 seconds in, the answer is probably no 🙂