无法运行'/usr/bin/bash':没有这样的文件或目录。

8
我最近几天一直使用gitbash,它工作得很好。但是,一段时间前,我安装了一个带有补丁文件的pdf阅读器后,当我打开我的gitbash时,它给出了一个错误提示,说“Failed to run '/usr/bin/bash': No such file or directory”。我不知道发生了什么以及为什么会出错,但我认为我安装的应用程序的补丁文件与此有关。我的电脑杀毒软件发出了警告,于是我采取了行动,然后gitbash就出了问题。请帮帮我,因为我不想重新安装gitbash,因为我还需要安装其他东西。

我假设你仍然有 /usr 和 /usr/bin,只是 /usr/bin/bash 被删除了?你还有 /bin/bash 吗?在我的 git bash 中,它们是相同的文件,所以你可以将 /bin/bash 复制或链接到 /usr/bin/bash 以恢复它。 - Rup
1
你为什么打上了reactjs的标签?我看不出它与那有什么关系。 - Rup
不好意思,我检查过后没有bash了。我该如何恢复它?很抱歉标记了React,我不知道还能标记什么。对不起。 - izee
哦,你说得对 - 抱歉。我在git bash内比较了这两个文件,它说它们是相同的,但现在我看到磁盘上的文件非常不同。我想你需要重新安装,或者尝试从安装程序中提取该文件,或者从另一台机器上的安装中复制该文件。 - Rup
请检查您的防病毒软件,可能已经将Bash隔离,您需要释放它。 - runwuf
显示剩余4条评论
8个回答

8

我遇到了同样的问题,搜寻后发现这是最初的几个结果之一。如果你也想知道为什么最近会收到这条消息:请检查你的杀毒软件 ,确保文件夹和文件确实存在。就像之前的回答提到的那样,重新安装可以帮助你恢复文件,但是杀毒软件可能会再次破坏它。因此,建议你检查杀毒软件的图形用户界面,看看是否可以恢复并添加一个例外。

我的问题是Avast杀毒软件将其归类为“IDP.Generic”威胁(在Windows 10上只有当我使用ctrl+cctrl+d关闭shell时才会出现奇怪的情况)。


你说得对。我关闭了 Avast 杀毒软件的所有功能 10 分钟并重新安装了 MSYS2,然后它就可以工作了。另外,阅读 这个。我和你一样有完全相同的症状。在安装过程中,我的 Avast 杀毒软件检测到一个“IDP.Generic”威胁,我决定将其隔离。然后,我运行了 MSYS2 并得到了 /usr/bin/bash: Exit 126. Failed to run '/usr/bin/bash': No such file or directory。在 /usr/bin/ 下有 basenc.exebashbug,但它们之间没有 bash。现在它可以工作了,谢谢你。 - IanHacker

3
为了解决这个问题,只需要重新安装git即可。

1
它能够工作,但每次系统启动/重新启动时,我都会遇到相同的问题。 - herr

2

我禁用了 Avast 杀毒软件,然后卸载并重新安装了 git。

这对我起了作用 :)


1

像杰克一样,这是由我的病毒扫描器(Avast)引起的。要解决问题,我打开了隔离页面,进行了恢复并添加了例外。


0
在CygWin终端中尝试“echo $PATH”以获取路径,它必须写成类似于:
/usr/local/bin:/usr/bin:/cygdrive/c/Windows/system32:/cygdrive/c/Windows:/cygdrive/c/Windows/System32/Wbem:/cygdrive/c/Windows/System32/WindowsPowerShell/v1.0:/cygdrive/c/Program Files/TortoiseHg:/home 根据您的sshd_config中的Chroot设置,它会查找/bin/bash文件。
你有三个选择:
1. 您可能需要将文件复制到Chroot提到的文件夹中并授予权限。 2. 您可以更新您的Chroot。 3. 或者绑定挂载也会有所帮助。 ref

0

为解决此问题,只需在重新安装git时停用您的防病毒软件。


你的回答可以通过提供更多支持信息来改进。请编辑以添加进一步的细节,例如引用或文档,以便他人可以确认你的答案是正确的。您可以在帮助中心中找到有关如何编写良好答案的更多信息。 - Community

0

我做了同样的事情,是由于Avast引起的问题。所以我从这里输入链接描述重新下载了Git,并通过添加例外来阻止Avast再次产生问题。


0

真的没有必要卸载git bash。对我来说,问题在于我的杀毒软件隔离了usr/bin/bash并将其归类为“IDP.generic”威胁。我点击了“还原并添加例外”选项,现在我的git bash可以正常工作了。 问题很可能是您的反病毒软件(特别是avast)造成了无意伤害。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接