无法使用 apt-get 安装 PHP 包,给出 "E: Unable to locate package"
Unable to install PHP packages with apt-get, gives "E: Unable to locate package"
我实际上正在设置我的 vagrant vm(trusty-64,Ubuntu distribution v14.04)并在安装所有 ppa 时遇到问题:ondrej/php 包。
我试过默认方式安装php...
$ sudo apt-get install software-properties-common
$ sudo add-apt-repository ppa:ondrej/php
$ sudo apt-get update
$ sudo apt-get install php7.3
但是还是有这个问题:
E: Unable to locate package php7.3
E: Couldn't find any package by regex 'php7.3'
他似乎忽略了添加的存储库(它未在 apt-get update
中列出)但命令似乎没问题:
gpg: Total number processed: 1
gpg: imported: 1 (RSA: 1)
OK
其实我也不知道怎么回事。也许有人有想法并且可以解释一下?非常感谢。
更新:
Distributor ID: Ubuntu
Description: Ubuntu 14.04.6 LTS
Release: 14.04
Codename: trusty
used ubuntu/trusty64 vagrant box
这是最常见的 vagrant box,几乎没有预定义的设置。
source.list
/etc/apt/sources.list.d/ondrej-php-trusty.list
/etc/apt/sources.list.d/ondrej-php-trusty.list.save
它在源列表中,但仍然被忽略。例如。 apt-cache search php7
总是没有结果而不是列表。
我也破坏了盒子并安装了一个新的..但仍然是同样的问题。
晚上,
你运行将其作为裸机系统还是 vagrant 容器?
的说明
那你运行:
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
还列出了一个警告:
WARNING: add-apt-repository is broken with non-UTF-8 locales,
see https://github.com/oerdnj/deb.sury.org/issues/56 for workaround
# LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php
您 运行 正在使用 non-default 语言环境吗?
ASK Ubuntu and also Here 上还有一个 post,可能对您有用。
您还可以仔细检查 Ondřej Surý 的 PPA 是否在您的来源列表中。
尝试 locate sources.list
或 locate *.list
并尝试找到 repo。
here 上有一份指南可能也有帮助。
我查看了存储库,似乎不再支持 14.04。尽管 dist 包中列出了 trusty,但当我查看池时,ubuntu 14.04 没有任何内容。
看这里:
http://ppa.launchpad.net/ondrej/php/ubuntu/pool/main/p/php7.3/
这可能解释了为什么当您 运行
sudo apt-get update
估计服务器更新等不及了;)
php 包裹似乎不再适用于盒子 "ubuntu/trusty64"(更多详情 here)。
我通过在 Vagrantfile 中设置 config.vm.box = "ubuntu/xenial64" 来纠正这个问题。
我实际上正在设置我的 vagrant vm(trusty-64,Ubuntu distribution v14.04)并在安装所有 ppa 时遇到问题:ondrej/php 包。
我试过默认方式安装php...
$ sudo apt-get install software-properties-common
$ sudo add-apt-repository ppa:ondrej/php
$ sudo apt-get update
$ sudo apt-get install php7.3
但是还是有这个问题:
E: Unable to locate package php7.3
E: Couldn't find any package by regex 'php7.3'
他似乎忽略了添加的存储库(它未在 apt-get update
中列出)但命令似乎没问题:
gpg: Total number processed: 1
gpg: imported: 1 (RSA: 1)
OK
其实我也不知道怎么回事。也许有人有想法并且可以解释一下?非常感谢。
更新:
Distributor ID: Ubuntu
Description: Ubuntu 14.04.6 LTS
Release: 14.04
Codename: trusty
used ubuntu/trusty64 vagrant box
这是最常见的 vagrant box,几乎没有预定义的设置。
source.list
/etc/apt/sources.list.d/ondrej-php-trusty.list
/etc/apt/sources.list.d/ondrej-php-trusty.list.save
它在源列表中,但仍然被忽略。例如。 apt-cache search php7
总是没有结果而不是列表。
我也破坏了盒子并安装了一个新的..但仍然是同样的问题。
晚上,
你运行将其作为裸机系统还是 vagrant 容器?
的说明那你运行:
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
还列出了一个警告:
WARNING: add-apt-repository is broken with non-UTF-8 locales,
see https://github.com/oerdnj/deb.sury.org/issues/56 for workaround
# LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php
您 运行 正在使用 non-default 语言环境吗?
ASK Ubuntu and also Here 上还有一个 post,可能对您有用。
您还可以仔细检查 Ondřej Surý 的 PPA 是否在您的来源列表中。
尝试 locate sources.list
或 locate *.list
并尝试找到 repo。
here 上有一份指南可能也有帮助。
我查看了存储库,似乎不再支持 14.04。尽管 dist 包中列出了 trusty,但当我查看池时,ubuntu 14.04 没有任何内容。
看这里:
http://ppa.launchpad.net/ondrej/php/ubuntu/pool/main/p/php7.3/
这可能解释了为什么当您 运行
sudo apt-get update
估计服务器更新等不及了;)
php 包裹似乎不再适用于盒子 "ubuntu/trusty64"(更多详情 here)。 我通过在 Vagrantfile 中设置 config.vm.box = "ubuntu/xenial64" 来纠正这个问题。