2021-11-07
使用broad推出的GATK流程做外显子分析,在使用MarkDuplicates时,一直无法运行,查看原因出现如下报错
-bash: /home/data/my_project/wes/wes_cancer/biosoft/gatk4.1/gatk: Permission denied
所以,很简单,我们需要对gatk赋予执行的权利。ls -lh查看
-rw-rw-r-- 1 krystal krystal 20K 11月 7 19:30 gatk
前10位,文件权限
1:文件类型 (-:普通文件),(d:目录),(l:软连接),(b:设备),(p:管道文件)
2-4:属主(U)权限(r:read,w:write,x:excute)
5-7:属组(G)权限(r:read,w:write,x:excute)
8-10:其他(O)用户权限(r:read,w:write,x:execute)
接下来的细心分别是:
硬链接数 属主 属组 文件大小 文件创建日期 文件名称
修改文件权限所需命令为chomd
每个文件都有九位的读写执行权限分为三组,分别对应拥有者(owner),拥有组(owner group)中的用户和所有其他用户(other)。将权限理解为二进制的对应关系(每段rwx为一组),
在这里,我们也有三个数字,755,对应三个组。7被分配给拥有者,5被分配给拥有组,最后一个5分配给其它用户。Linux规定: 4为有读取的权利,2为有写入的权利,1为有执行的权利。我们看到的7实际上是4 + 2 + 1,表示拥有者有读、写、执行三项权利。(想想5 意味着什么)
因此,为了赋予gatk read 和execute的权限,只需要执行如下命令
chomod 755 gat
更直观的看出给一个文件的具体权限可以使用下面的命令
chmod u=rwx,g=rx,o=rx gatk
问题解决了,又可以开心的瞎搞了
网友评论