平时在 Linux 服务器下使用 Julia,今天把编写的脚本给同事用,报错对 artifacts 目录下某个文件无打开权限。
尝试过删除整个 artifacts 目录后重新下载二进制依赖,目录的权限情况依然是上图所示。
请问是否有方法可以更改 artifacts 的子目录默认权限
——
平时在 Linux 服务器下使用 Julia,今天把编写的脚本给同事用,报错对 artifacts 目录下某个文件无打开权限。
chmod -R 655 目录
??
或是说你这个磁盘分区可能是FAT的,改不掉文件权限
我的意思是默认权限。就是下次下载新的二进制依赖项的时候自动就设置别人可以访问的。
我的意思是默认权限。就是下次下载新的二进制依赖项的时候自动就设置别人可以访问的。
umask
用来控制当前目录下新文件/目录创建时的默认权限
cd /data4/XXXXX/.julia/artifacts
umask 0022
Edit:
哦不对,好像这里的目录权限是在PkgServer打包的时候就决定了的.
不太确定有没有其他更好的办法,不过可以写一个简单的 cron job 来定时修改权限。比如说 crontab -e
之后:
# 每小时更新一次权限
0 * * * * chmod a+r -R /path/to/artifacts
所以这个问题最早的源头算是Julia官方引发的?或者北外镜像那边能解决吗?
所以这个问题最早的源头算是Julia官方引发的
嗯, 在 gen_static.jl 中为了保证一致性,打包的时候做了一次权限修改,不过不太确定为什么他们设定为700。
北外镜像那边能解决吗?
不能。
如果觉得 cron 不够好的话,可以尝试用 watchman 来自动检测并调整权限