如何将PHP升级到Debian Squeeze的更高版本?

目前,我的PHP在5.3.3上,如何升级它? 另外我怎样才能升级任何东西? 例如,如果我想升级phpMyAdmin?

升级所有软件包:

apt-get update; apt-get upgrade; 

如果你想升级一个包(例如php5):

 apt-get update; apt-get install php5; 

对于在Debian上可用的软件包版本,请看:

http://www.debian.org/distrib/packages

如果你想安装php5 5.4.4-2,那么只能在wheezy上运行,你应该在你的/etc/apt/sources.list中joinwheezy:

 deb http://ftp.us.debian.org/debian/ wheezy main non-free contrib 

接着:

 apt-get update apt-get install -t wheezy php5 

为了不发生任何意外,你应该使用apt固定,以防止你的系统从安装软件包,只是创build文件/ etc / apt / preferences

 Package: * Pin: release n=squeeze Pin-Priority: 650 Package: * Pin: release n=wheezy Pin-Priority: -10 

所以当你做apt-get install的时候,如果你没有指定-t wheezy,它将默认从squeeze安装包。

@Juan注意到,钉住会让你陷入依赖的地狱。 当我想要在我的Debian系统上stream血的时候,我通常会转向http://www.dotdeb.org/

有关正确的说明 – > http://www.dotdeb.org/instructions/

Debian稳定版的devise非常稳定, 因此使用较新版本的软件包通常不被支持,通常是棘手的和/或不好的想法,有时是不可能的。 这就是说,有办法做到这一点:

  • 看看backports.debian.org,看看你想要的包是否有 – 这是“支持”的方式。
  • 如果不可用,请执行一个简单的sid backport: http : //wiki.debian.org/SimpleBackportCreation (使用系统上安装的开发库来编译debiantesting或不稳定的软件包源代码)
  • 从不同的仓库(例如wheezy或ubuntu)安装.debs是一个非常糟糕的主意。

如果没有backport可用,并且简单的sid backport是不可能的,那么你可能将无法使你的系统上的软件包工作。 你可以考虑升级到debiantesting(当testing被冻结时,这并不是那么糟糕,正如Debian Wheezy在撰写本文时那样)。

如果不重复irc.debian.org上的dpkg bot提供的“简单的sid backport”指令,这个答案就不会完整:

  1. 打开sources.list并为sid添加一个deb-src行(不是deb行!)
  2. 启用debian-backports(
  3. 在您select的terminal中执行以下操作:
    • 能力更新;
    • aptitude install build-essential;
    • aptitude build-dep软件包名称
    • apt-get -us -uc -b源码包名称
  4. 安装合成代码。

另见: http : //wiki.debian.org/Backports