我需要在Debian上安装PHP 5.3。如果我要执行常规的PHP安装,我将得到5.4版本。
我知道我可以运行apt-get install <package-name>=<package-version-number>
来安装一个特定的版本。但是我不知道PHP 5.3的确切版本号。
我运行了apt-cache showpkg php5
和apt-cache madison php5
,但它们只列出了当前版本。
如何确定正确的版本号来安装PHP 5.3?
我不知道它是否在某些apt命令中可用,但您可以在这里获得完整的列表:http://snapshot.debian.org/package/php5/
最新的PHP 5.3版本是5.3.10-2:http://snapshot.debian.org/package/php5/5.3.10-2/
要从快照安装包,您必须在/etc/apt/sources中添加一个条目列出匹配你想要的包,这个条目可以在"pool"链接中找到。例如,php5 5.3.10-2的池链接是http://snapshot.debian.org/archive/debian/20120221T041601Z/pool/main/p/php5/,所以你需要添加http://snapshot.debian.org/archive/debian/20120221T041601Z/到你的sources.list:
deb http://snapshot.debian.org/archive/debian/20120221T041601Z/ unstable main
deb-src http://snapshot.debian.org/archive/debian/20120221T041601Z/ unstable main
这些条目需要设置为不稳定,这是因为快照给你第一次出现在debian软件包中的包,大多数情况下是不稳定的(但我猜它也可能是实验性的)。
接下来,您需要更新,同时告诉apt忽略包的过期日期:
apt-get -o Acquire::Check-Valid-Until=false update
如果你用aptitude,那就是:
aptitude -o Acquire::Check-Valid-Until=false update
现在你可以安装你的php5版本了:
apt-get install php5=5.3.10-2
现在,当您在安装中添加了一个不稳定的存储库时,您可能希望将优先级设置为稳定的包,请参阅:http://www.imped.net/2007/07/20/apt-pinning-installing-unstable-packages-on-stable-debian/