NVIDIA / enroot

A simple yet powerful tool to turn traditional container/OS images into unprivileged sandboxes.
Apache License 2.0
648 stars 94 forks source link

OSError: [Errno 30] Read-only file system: '/workspace/single_stage_detector/ssd.log' #81

Closed ucmsuri closed 3 years ago

ucmsuri commented 3 years ago

Hi, Am running MLperf. While using docker directly, entire set up runs with the same container. When I use enroot+pyxis, the content inside the container becomes Readonly. I tried to change permission of the folder inside the container and following issue occurs. Can you please help me sort this out?

srun --nodes=1 --ntasks=1 --container-name=single_stage_detector --container-remap-root bash -c ' chmod 0777 /workspace/single_stage_detector/*' chmod: changing permissions of '/workspace/single_stage_detector/Dockerfile': Read-only file system chmod: changing permissions of '/workspace/single_stage_detector/README.md': Read-only file system chmod: changing permissions of '/workspace/single_stage_detector/async_evaluator.py': Read-only file system chmod: changing permissions of '/workspace/single_stage_detector/bind.sh': Read-only file system chmod: changing permissions of '/workspace/single_stage_detector/bind_launch.py': Read-only file system chmod: changing permissions of '/workspace/single_stage_detector/box_coder.py': Read-only file system chmod: changing permissions of '/workspace/single_stage_detector/config_DGX1.sh': Read-only file system chmod: changing permissions of '/workspace/single_stage_detector/config_DGX2.sh': Read-only file system

flx42 commented 3 years ago

What do you have in your /etc/enroot/enroot.conf? You need to set ENROOT_ROOTFS_WRITABLE y as the default is no (read-only container filesystem).

You might also want to take a look at the pyxis wiki: https://github.com/NVIDIA/pyxis/wiki/Setup#enroot-configuration-example

Beck-919 commented 3 years ago

I faced a similar issue, I assume you installed something inside the container using '--root'.

When using a standard user, could you try '--rw' ?