如何在 Wheezy Debian php 5.6 中安装 php5-gd
Posted
技术标签:
【中文标题】如何在 Wheezy Debian php 5.6 中安装 php5-gd【英文标题】:How to install php5-gd in Wheezy Debian php 5.6 【发布时间】:2019-08-18 08:41:13 【问题描述】:我的 2 个站点无法正常工作,因为我无法将 php5-gd 库安装到 Debian Wheezy php5.6 ...
我试过了
aptitude install php5-gd,系统说我错过了 2 个依赖项,我无法找到或安装...
aptitude install php5-gd
sudo apt-get install php5-gd
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
php5-gd :
Depends: libt1-5 (>= 5.1.0) but it is not installable
Depends: libvpx1 (>= 1.0.0) but it is not installable
E: Unable to correct problems, you have held broken packages.
【问题讨论】:
你能运行apt-cache policy php5-gd
并更新你得到的输出吗?
您是否以某种方式更改了您的 apt-source?看起来像是 Wheezy 和 Jessie 的一些混合存储库!
我怀疑操作员是否会回应.. 这似乎是他发送的唯一消息。顺便说一句,我有同样的问题:没有从旧版 wheezy 更改存储库,apt-cache
结果已安装:(无),候选:(无),版本表为空。
@Ivan(和@Milos)——Wheezy 太老了。升级或至少将更新的版本添加到您的源中,以便您可以选择更新的软件包;详情请参阅my answer。
@Ivan 从字面上看,这一切都是危险的,不建议过时的。您需要同时升级到 PHP 版本和非 EOL 操作系统。
【参考方案1】:
您是否先更新了 apt-get?
首先,运行:
sudo apt-get update
然后如果成功运行;
sudo apt-get upgrade
如果你跑 df -lah
首先,它可能会显示您的 /boot 处于 100% 尝试; sudo apt-get 自动删除
那就从头开始,然后试试你的php5-gd
当失败时 试试看:
sudo apt-get install -f
【讨论】:
sudo apt-get update - 一切正常 升级 - 构建依赖关系树 读取状态信息...完成 0 升级,0 新安装,0 删除,0 未升级。 df -lah /dev/md1 496M 39M 432M 9% /boot sudo apt-get autoremove 读取包列表...完成 构建依赖树 读取状态信息...完成 0 升级,0 新安装,0 删除,0 未升级.其他都一样,当我尝试安装 ...GD 同样的消息 0 升级,0 新安装,0 删除,0 未升级。【参考方案2】:Wheezy 真的已经过时了。它于 2013 年发布,支持于 2018 年结束。
这是从Debian Long Term Support 页面导入的表格:
最好的办法是升级到buster(Debian 10,2019 年 7 月发布,并且(可能)支持到 2024 年。
另一种选择是升级到jessie(2015 年 4 月发布,安全支持于 2018 年结束,社区支持于 2020 年 6 月结束),这将为您争取几个月的时间来更换您的系统。
如果您真的需要继续使用 Wheezy,最后的选择是使用 backports 或针对相关软件包精心固定的更新版本。
由于 Wheezy 已经如此老了,所以没有任何存储库仍在托管(可能在某个地方有它的存档,但您不会得到更新)。我将引导您升级到 Jessie 并改用它的后端。
这些说明应该适用于任何版本,因此您可以(应该!)使用buster
代替jessie
,尽管升级这么多版本几乎肯定需要大量工作。
1。更新您的来源:
$ find /etc/apt/sources.list* -name '*.list' |sudo xargs sed -i 's/wheezy/jessie/g'
2。如果其中一个文件尚不存在,请将 Jessie backports 添加到其中:
deb http://deb.debian.org/debian jessie-backports main
3。更新和升级,最好是从 X11 外部(例如,Ctrl+Alt+F2 的控制台):
$ sudo apt-get clean
$ sudo apt-get update
$ sudo apt-get dist-upgrade
$ sudo apt-get autoremove
$ sudo reboot
之后,您可以尝试对系统进行故障排除。
【讨论】:
无法升级,这不是一个选项。当然,去 jessie 或者更好的 buster 将是最好的选择,但事实并非如此。因此,考虑到问题(2 个未满足的依赖项),我正在努力寻找轻松的解决方案(只是一个补丁可以暂时摆脱问题并专注于不是这个的真正问题)。 能否详细说明为什么不能升级?你能拉入另一个版本的源代码,然后有选择地为有问题的包固定新版本吗?这就是我所暗示的。 服务器的所有者(朋友)在这个系统中有一些重要的东西,并且担心如果我们升级会发生什么(似乎有过一些不好的经历)。无论如何,我们决定不使用 GD 并解决了问题(尽管我知道真正的问题是拥有过时的操作系统)。 是的,要非常小心,在防火墙上要积极进取,确保停止使用已弃用的密码和协议等。【参考方案3】:您应该手动构建它 从: https://www.howtoforge.com/building-php-5.4-from-source-on-debian-squeeze
【讨论】:
以上是关于如何在 Wheezy Debian php 5.6 中安装 php5-gd的主要内容,如果未能解决你的问题,请参考以下文章
无法在Debian wheezy上安装chef-server
升级debian stable(wheezy)的iceweasel(firefox).
sh 在Kali Linux(或任何其他基于Wheezy的Debian版本)上安装docker