为了账号安全,请及时绑定邮箱和手机立即绑定

相同的权限,不同的权限?

相同的权限,不同的权限?

郎朗坤 2021-03-30 15:11:03
我正在通过CGI在Apache服务器中运行Python脚本。在脚本中,我尝试读取/ home目录中的文件。但是,我只能读取一个文件,而不能读取其他文件。这对于我理解权限以及可以读取或不读取哪些内容的目标非常沮丧。# Worksfile_tmp = open("/home/blastdbs/db_01.fasta", 'r')# Failsfile_tmp = open("/home/blast_dbs/db_01.fasta", 'r')<type 'exceptions.IOError'>: [Errno 13] Permission denied: '/home/blast_dbs/db_01.fasta' ls -l /home/drwxr-xr-x.  2 myself myself  4096 Jun 17 18:18 blastdbsdrwxr-xr-x.  2 myself myself  4096 Jun 17 18:18 blast_dbsls -l /home/blastdbs/-rwxr-xr-x. 1 myself myself   32484551 Jun 17 17:28 db_01.fasta-rwxr-xr-x. 1 myself myself 2279012809 Jun 17 13:10 db_02.fastals -l /home/blast_dbs/-rwxr-xr-x. 1 myself myself  32484551 Jun 17 13:09 db_01.fasta顺便说一句,尝试读取db_02会产生相同的异常。
查看完整描述

2 回答

?
弑天下

TA贡献1818条经验 获得超8个赞

Apache服务器安装在启用SELinux的Linux发行版中。SELinux默认情况下拒绝Apache读取/ home文件夹中的文件。通过使用ls -Z可以检查SELinux文件的标签。就我而言,虽然通常的(DAC)权限是相同的,并且没有设置ACL,但是SELinux上下文是不同的:

下一个可以从Apache守护程序和脚本读取:

unconfined_u:object_r:httpd_sys_content_t:

下一个文件是SELinux拒绝访问Apache的文件:

unconfined_u:object_r:user_home_t


查看完整回答
反对 回复 2021-04-02
  • 2 回答
  • 0 关注
  • 142 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号