如何解决奇点无法删除文件夹,只读文件系统
我已经从 docker hub 部署了一个镜像到singularity 2.6.0 并运行如下容器。
singularity run -B ~/path-to-mount/:/home ~/oqfe_latest.sif -1 /home/file_R1.fastq.gz -2 /home/file_R2.fastq.gz --sample sid1
在容器上运行时,该工具下载文件并解压,然后尝试删除原始文件,但无法删除,并显示以下错误:
rm -rf /data/GRCh38_full_analysis_set_plus_decoy_hla.tar.gz
rm: cannot remove '/data/GRCh38_full_analysis_set_plus_decoy_hla.tar.gz': Read-only file system
Traceback (most recent call last):
File "/oqfe",line 528,in <module>
args.cram_reference_fasta)
File "/oqfe",line 486,in main
bwa_reference_index_path = _setup_reference(DEFAULT_REFERENCE_TAR_PATH)
File "/oqfe",line 130,in _setup_reference
_run_cmd(cmd)
File "/oqfe",line 110,in _run_cmd
subprocess.check_call(cmd)
File "/usr/lib/python3.6/subprocess.py",line 311,in check_call
raise CalledProcessError(retcode,cmd)
subprocess.CalledProcessError: Command '['rm','-rf','/data/GRCh38_full_analysis_set_plus_decoy_hla.tar.gz']' returned non-zero exit status 1.
我使用选项 --sandbox 构建了容器,不幸的是错误仍然存在。 任何帮助表示赞赏。
解决方法
为了修改沙箱,您必须将 --writable
与您的奇点 run/exec/shell 命令一起使用。
请注意,以确保您拥有适当的权限 the docs recommend running a sandbox as root/with sudo。
作为一个更广泛的评论,如果要修改图像上的数据,通常最好在容器运行时而不是在构建时装入它。当它特别大时,我也会忽略它,就像诱饵 fasta。奇点图像然后简单地变成软件,并且更小且更容易传输。这当然取决于用例和个人喜好,但我觉得它更方便。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。