CentOS7下root用户执行pip3安装库遇chromedriver_autoinstaller权限拒绝问题
解决CentOS7下root用户pip3安装natsort时的chromedriver_autoinstaller权限问题
问题根源
你遇到的核心矛盾是root用户无法修改自身拥有的文件权限,这在CentOS7上通常由两种原因导致:
- 文件被设置了
immutable(不可变)特殊属性 - SELinux强制访问控制(MAC)限制了操作
分步解决方案
1. 检查并移除文件的不可变属性
首先用lsattr查看文件的特殊属性:
lsattr /usr/local/lib/python3.6/site-packages/chromedriver_autoinstaller-0.6.2.dist-info
如果输出中包含i标记(例如----i--------e----),说明文件被设为不可变,用chattr移除该属性:
chattr -i /usr/local/lib/python3.6/site-packages/chromedriver_autoinstaller-0.6.2.dist-info
2. 修改文件夹权限
移除特殊属性后,修改权限让pip可以正常访问:
chmod 755 /usr/local/lib/python3.6/site-packages/chromedriver_autoinstaller-0.6.2.dist-info
3. 排查SELinux限制(如果上述步骤无效)
检查SELinux状态:
getenforce
如果输出为Enforcing,临时关闭SELinux测试:
setenforce 0
此时重新执行安装命令:
pip3 install natsort
如果安装成功,说明是SELinux上下文问题,恢复SELinux并修正上下文:
setenforce 1 chcon -R system_u:object_r:lib_t:s0 /usr/local/lib/python3.6/site-packages/chromedriver_autoinstaller-0.6.2.dist-info
4. 重新安装natsort
完成上述步骤后,再次执行安装命令:
pip3 install natsort
内容的提问来源于stack exchange,提问作者dkrantz831
相关产品推荐
相关产品推荐

