无法使用“firefox”命令运行最新的 Firefox

无法使用“firefox”命令运行最新的 Firefox

我从 Mozilla 网站下载了 Firefox 34 版本。

接下来,我提取了 tar 存档,并将其移动到桌面。

现在,当我运行以下命令时:

Desktop/firefox/firefox

我下载的 Firefox 版本已运行(34.0.5),但是当我运行此命令时:

firefox

旧的 Firefox (3.4) 开始运行。我想更新 makefirefox命令以运行下载的最新版本,所以我这样做:

ln -s /bin/firefox/firefox Desktop/firefox

什么事情都没有发生,我该怎么办?

答案1

有两种方法可以解决此问题:

  1. 您可以更改 $PATH 变量,以便在任何其他目录之前检查新版 Firefox 版本所在的目录,方法是运行以下命令
    导出 PATH=$HOME/Desktop/firefox:$PATH
    如果您将相同的命令添加到您的 中.bashrc,您未来的所有会话也将具有新的 PATH。
  2. 您可以使用ln将新版本符号链接到 PATH 中已有的目录中。首先,通过执行 来检查旧版本的位置which firefox。如果我在我的计算机上执行此操作,我会得到以下信息:
    jenny@sameen > 哪个 Firefox
    /usr/bin/火狐
    
    这意味着我需要删除现有版本/usr/bin/firefox并将其替换为新版本的符号链接。这就是您尝试过的 - 但您编写命令的方式是错误的。正确的语法是
    sudo ln -fs $HOME/Desktop/firefox/firefox /usr/bin/firefox
    该标志的-f意思是“如果已经存在 /usr/bin/firefox,请将其删除并用此链接替换它”,s意思是“使其成为符号链接,而不是硬链接”。

请注意,如果您以外的其他人正在使用此服务器,这可能会给他们带来问题,因为他们可能无法使用位于您的主目录中的程序。如果是这样,您应该/usr/local/firefox在符号链接之前将二进制文件移动到 例如,或者您应该使用上面的第一个解决方案并简单地修改您自己的 $PATH。

答案2

最简单的方法

apt-get install firefox 这将更新为新的

或者

which firefox这将为您提供 Firefox 的路径

然后替换相同的

sudo ln -fs $HOME/Desktop/firefox/firefox /usr/bin/firefox

对于前。

which firefox /usr/bin/firefox sudo ln -fs $HOME/Desktop/firefox/firefox /usr/bin/firefox

答案3

为什么您下载了该版本,显然您没有将其安装在 PATH 变量中的目录之一中。当您简单地执行“firefox”时,它将使用 PATH 目录在第一个目录中找到 firefox。如果您使用更完全限定的名称执行 Firefox,它将仅使用该特定目录中找到的任何内容。

最简单的方法是将新版本的 Firefox 所在的目录放在 PATH 中,放在其他所有内容之前。

答案4

您只是使用了ln错误的方法:lnis ln <source> <target>

所以你可以这样做:

ORIGINAL="$(which firefox)"
sudo mv "$ORIGINAL" "${ORIGINAL}.orig"
sudo ln -s "$HOME/Desktop/firefox/firefox" "$ORIGINAL"

firefox将从您的路径备份当前的二进制文件,并创建指向您手动安装的版本的符号链接。

相关内容