Если добавить в /etc/apt/sources.list:
deb http://cloudfront.debian.net/debian wheezy main deb-src http://cloudfront.debian.net/debian wheezy main deb http://security.debian.org/ wheezy/updates main deb-src http://security.debian.org/ wheezy/updates main deb http://cloudfront.debian.net/debian wheezy-updates main deb-src http://cloudfront.debian.net/debian wheezy-updates main
Затем сделать:
apt-get update apt-get install php5-fpm
В результате установленная версия php всё ещё php 5.4:
$ php --version PHP 5.4.45-1~dotdeb+7.1 (cli) (built: Sep 4 2015 23:38:46)
Содержимое bash-файл (.sh) для установки php 5.6 на debian:
#!/bin/bash if [ `whoami` != "root" ]; then echo "You must be root to provision this"; exit; fi cat > /etc/apt/sources.list.d/dotdeb-php56.list <<- EOF deb http://packages.dotdeb.org wheezy-php56 all deb-src http://packages.dotdeb.org wheezy-php56 all EOF export APT_LISTCHANGES_FRONTEND=none aptitude update aptitude -y purge php5-pinba libpuzzle-php php5-mysql apt-get -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" -y install \ php5 php5-cli php5-common php5-curl php5-dev php5-fpm php5-geoip php5-imagick php5-memcached php5-mysqlnd sed -i.bak -e 's/^;listen\.\([ogm]\)/listen.\1/' /etc/php5/fpm/pool.d/www.conf service php5-fpm restart
Разберём подробно:
#!/bin/bash
- говорит о том, что скрипт написан на языке bash.
Позволяет выполнять файл только от имени root:
if [ `whoami` != "root" ]; then echo "You must be root to provision this"; exit; fi
Добавляет репозитории пакетов dotdeb c php 5.6 в sources.list:
cat > /etc/apt/sources.list.d/dotdeb-php56.list <<- EOF deb http://packages.dotdeb.org wheezy-php56 all deb-src http://packages.dotdeb.org wheezy-php56 all EOF
Export
нужен, чтобы подавить запросы (yes/no) при установке php (в след. пунктах). Имеет смысл только при автоматической установке:
export APT_LISTCHANGES_FRONTEND=none
Применит обновления пакетов, нужно после добавления новых пакетов sources.list:
aptitude update
Удаляет пакеты, которые могут помешать установке php 5.6.
aptitude -y purge php5-pinba libpuzzle-php php5-mysql
Ставим php5.6 на debian, сохраняя существующий конфиг:
apt-get -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" -y install \ php5 php5-cli php5-common php5-curl php5-dev php5-fpm php5-geoip php5-imagick php5-memcached php5-mysqlnd
Правим конфиг fpm:
sed -i.bak -e 's/^;listen\.\([ogm]\)/listen.\1/' /etc/php5/fpm/pool.d/www.conf
И в конце делаем fpm restart:
service php5-fpm restart
Комментарии 0