尝试安装 Mariadb 时出现未找到 curl 命令错误

尝试安装 Mariadb 时出现未找到 curl 命令错误

我正在遵循 mariadb 文档,其中启动步骤已经完成,但是当我使用此命令时。

sudo curl -o /etc/apt/trusted.gpg.d/mariadb_release_signing_key.asc 
'https://mariadb.org/mariadb_release_signing_key.asc'

此命令给出了一个错误:

sudo: curl: command not found

我尝试使用这些命令在我的 Ubuntu 上安装 curl。

sudo apt update
sudo apt install curl

我不确定它现在是否已安装,但当我再次尝试使用上述命令时,它给出了同样的错误。

为了更好地理解,我还添加了一些附加命令的屏幕截图。

Curl 命令图像

答案1

安装 curl 时出现问题,看来您的系统仍然缺少它。

为了检查 curl 包是否已安装,您可以尝试运行以下命令:

apt-cache policy curl

应该打印如下内容:

curl:
  Installed: 7.81.0-1ubuntu1.10
  Candidate: 7.81.0-1ubuntu1.10
  Version table:
 *** 7.81.0-1ubuntu1.10 500
        500 http://it.archive.ubuntu.com/ubuntu jammy-updates/main amd64 Packages
        500 http://security.ubuntu.com/ubuntu jammy-security/main amd64 Packages
        100 /var/lib/dpkg/status
     7.81.0-1 500
        500 http://it.archive.ubuntu.com/ubuntu jammy/main amd64 Packages

更新

如果软件包安装正确,此命令应该显示二进制文件的位置

$ dpkg -L curl | grep bin
/usr/bin
/usr/bin/curl

检查$PATH多变的:

$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin

如果不存在,你可以暂时添加/usr/bin添加到您的 $PATH 变量中:

$ export PATH=/usr/bin:$PATH

要使此更改永久生效,您可以编辑〜/ .profile(用户范围)或/etc/环境(系统范围)

如果一切都失败了,您可以随时使用完整路径手动运行二进制文件:

$ /usr/bin/curl
curl: try 'curl --help' or 'curl --manual' for more information

答案2

curl软件包似乎已损坏,因此请使用以下命令重新安装该软件包

$ sudo apt install --yes --reinstall curl

这将修复所有丢失的二进制文件。

但是,软件包二进制文件丢失并非“正常”行为。一定有人或某物故意删除了这些文件。

答案3

我已经尝试了所有这些命令来安装 curl。

sudo apt install curl

我也尝试了用于重新安装 curl 的命令。

sudo apt install --yes --reinstall curl

执行该命令后,我使用以下命令检查,结果显示 curl 已安装。

apt-cache policy curl

它显示了以下响应,表明 curl 现已安装。

curl:
Installed: 7.81.0-1ubuntu1.10
Candidate: 7.81.0-1ubuntu1.10
Version table:
7.81.0-1ubuntu1.10 500
500 http://pk.archive.ubuntu.com/ubuntu jammy-updates/main amd64 Packages
500 http://security.ubuntu.com/ubuntu jammy-security/main amd64 Packages
100 /var/lib/dpkg/status
7.81.0-1 500
500 http://pk.archive.ubuntu.com/ubuntu jammy/main amd64 Packages

但是问题并没有因此得到解决,但是当我将我的 ubuntu 更新到 22.04 时,这个问题就得到了解决,并且以下命令运行良好。

sudo curl -o /etc/apt/trusted.gpg.d/mariadb_release_signing_key.asc 
'https://mariadb.org/mariadb_release_signing_key.asc'

因此,我在 curl 中使用的命令存在问题,这就是它出现错误的原因,现在已经解决了。

相关内容