-bash: /usr/bin/yum: /usr/bin/python: bad interpreter: Permission denied
这是目录/usr/bin/python的权限信息:
drwxrwxrwx 2 root root 4096 Mar 8 00:19 python
-bash: /usr/bin/yum: /usr/bin/python: bad interpreter: Permission denied
这是目录/usr/bin/python的权限信息:
drwxrwxrwx 2 root root 4096 Mar 8 00:19 python
在CentOS中,需要将/usr/bin/python
指向Python 2.6,而不是其他版本。运行以下命令:
sudo rm -rf /usr/bin/python
sudo ln -s /usr/bin/python2.6 /usr/bin/python
至少要修复它的这一部分。下次构建Python时,请使用默认设置并将其安装到/usr/local/bin
,而不是/usr/bin
。这就是/usr/local
层次结构的用途 - 用户安装的程序。/usr
和/usr/bin
应该仅用于系统安装的程序(例如由yum
或其图形等效项安装的程序),除非您知道自己在做什么,否则请勿使用。为了在/usr/local/bin
中使用与/usr/bin
中相同命名的程序而不是其对应程序,打开您的~/.bashrc
或~/.bash_profile
(取决于您的系统)并将以下内容添加为最后一行:
export PATH=/usr/local/bin:$PATH
重新启动你的命令行会话,这样你就可以继续了。
make install
并预先配置好安装到/usr/bin
中?你刚才发布的内容看起来像是一个符号链接,指向你解压2.6.9源代码的目录。就像我之前说的那样,/usr/bin/python
必须是一个二进制文件的链接或实际二进制文件本身,而不是一个目录的链接。你不能“运行”一个目录... - MattDMovim /usr/bin/yum
将
#!/usr/bin/python
更改为
#!/usr/bin/python2.6
如果您的python2.6被删除,则需要重新安装它们,并将目录指向/usr/bin/yum中的python2.6目录。很简单,因为 Python 包已被删除, yum
命令将不起作用。
请使用以下链接安装软件包:
wget http://mirror.centos.org/centos/7/sclo/x86_64/rh/python27/python27-1.1-26.1.el7.x86_64.rpm
rpm -ivh python27-1.1-26.1.el7.x86_64.rpm
然后 yum
就可以工作了。
/usr/bin/python
是一个目录,这个操作可能会失败。 - tripleeeyum
安装Python软件包。还可以运行命令whereis python
并更新该命令的输出作为解释器。 - error404/bin/yum
:
当你执行cat
命令时,它会显示在第一个Python解释器中,在\bin\yum
PF之下的几行代码:[root@osboxes ~]# cat /bin/yum
#!/usr/bin/python
import sys
try:
import yum
except ImportError:
print >> sys.stderr, """\ - Wajid Shaikh这个问题是由于yum文件的开头写了#!/usr/local/bin/python2.6,写成了二进制文件,不是目录,而是Python二进制文件。
CentOs 7 的解决方案:
dnf reinstall python-2.7.5-92.el7_9.x86_64
dnf reinstall yum
如果已经安装了Python3,请使用dnf
先将其卸载。
-bash: /usr/bin/yum: /usr/bin/python: 解释器错误: 权限被拒绝
首先,使用以下命令行删除Python:
-- sudo rpm -e python
其次,检查安装此命令行的软件包:
-- sudo rpm -q python
然后,安装软件包:
-- sudo yum install python*
我认为这个问题会得到解决。
/usr/bin/python
应该是一个可执行文件或二进制文件,而不是一个目录。 - MattDMo