Перейти к собственно контенту

AgR^ Live Blog

Общественные записки не поддающиеся вкуриванию…

Архив

Метка: update

В связи с окончанием поддержки php53 на FreeBSD, решил переехать на php55, при этом перескачив ветку php54.
Приступим....

1. Запускаем обновление:
portmaster -o lang/php55 lang/php53
2. сохраняем и (или) распечатываем файл подключаемых модулей - /usr/local/etc/php/extensions.ini , тк он нам ещё понадобится.
3. Удаляем ВСЕ модули начинающиеся с php53-########
pkg delete -f php53-########
...
...
...
pkg delete -f php53-########
и
удаляем также модули начинающиеся с pecl-####### , ессно предварительно сохранив их список (pkg version -v | grep pecl >> ext.txt)
pkg delete -f pecl-#######
...
pkg delete -f pecl-#######

4. Устанавливаем расширения:
cd /usr/ports/lang/php55-extensions
make config
И выбираем все те модули которые находились у нас в файле /usr/local/etc/php/extensions.ini
Жмём ОК и далее:
make install clean

Устанавливаем из портов pecl-####### модули, которые удалили.
5. И напоследок, на всякий случай, а вдруг что то зависящее забыли пересобрать:
portmaster -R -r php55-5.5.18

и оказались правы. Пересобралось ещё с десяток зависящих портов.

6. Проверяем:
php -v
должно вывести информацию о php без вывода ошибок:
-
PHP 5.5.18 (cli) (built: Oct 28 2014 09:08:34)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
with Zend OPcache v7.0.4-dev, Copyright (c) 1999-2014, by Zend Technologies
-
И ещё так, чисто для профилактики - проверка всех библиотек:
pkg check -Ba

7. Устанавливаем модуль php для apache, тк его вынесли отдельно:
cd /usr/ports/www/mod_php55
make install clean

И фиг....не ставится по причине окончания поддержки apache22 во фре.
Делать нечего. Будем обновляться до apache24

portmaster -o www/apache24 www/apache22
Обновились.
Про все прелести переноса конфигов писать не буду, тк у каждого будет своя пляска с бубном, ибо апач24 это отдельная история.

А теперь подключаем PHP:
cd /usr/ports/www/mod_php55
make install clean
Готово!

Не забываем поправить /etc/rc.conf для запуска apache24.
Запускаем апач:
/usr/local/etc/rc.d/apache24 start

Уффффф. На всё ушло три часа. Но зато теперь веб сервак на фре снова в строю.

И напоследок. Очень важно посмотреть что изменилось. Какие директивы удалены(будут удалены), какие добавились(взамен), чтобы после очередного обновления не получить что-то не работающее как надо.

Вот такое глобальное обновление получилось!

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Загрузка...
1 803 views

Решил наконец-то обновиться до ветки FreeBSD v8.3 Release + все патчи что успели выйти после релиза. Ну и естественно пересобрать со своими настройками ядро.
В общем план таков:
1. Для начала делаем бинарное обновление:
# freebsd-update upgrade -r 8.3-RELEASE
# freebsd-update install
# shutdown -r now
# freebsd-update install
# shutdown -r now
Всё. Бинарное обновление сделали. Теперь нам нужны соответствующие исходные коды системы.
2. Скачиваем с помощью svn соответствующие «сырцы»:
# rm -d /usr/src
# mkdir /usr/src
# svn checkout http://svn.freebsd.org/base/releng/8.3/ /usr/src
# svn update /usr/src/
Осталось пересобрать ядро и установить.
3. Ядро:
# cd /sys/i386/conf && config AGR83 && cd ../compile/AGR83 && make cleandepend && make depend && make && make install
# shutdown -r now
И вот что стало:
$ uname -a
FreeBSD k.xxxxxx.ru 8.3-RELEASE-p2 FreeBSD 8.3-RELEASE-p2 #0 r236713M: Thu Jun 7 19:07:20 YEKT 2012 v@x.xxxxx.ru:/usr/src/sys/i386/compile/AGR83 i386

Ну вот и всё. Теперь имеем новую ветку, плюс патчи и свои настройки. По времени это обновление заняло около часа, на машинке с процом на каком то там атоме.

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Загрузка...
1 227 views

Словив пару «глюков» при обновлении исходников с помощью cvsup, я решил наконец то перейти на svn.
Для начала установим subversion.
#cd /usr/ports/devel/subversion
#make install clean
После установки, можно почитать информацию по svn.
#svn help
Сперва я решил очистить каталог исходников подчистую.....#rm /usr/src
Дальше всё ещё проще.
Скачиваем нужную нам ветку:
#svn checkout http://svn.freebsd.org/base/releng/8.3/ /usr/src - через HTTP
или так:
#svn checkout svn://svn.freebsd.org/base/releng/8.3/ /usr/src - через SVN

Обновляем так:
#svn update /usr/src/
At revision 234940

Проверяем:
#grep -A 2 'TYPE="' /usr/src/sys/conf/newvers.sh
TYPE="FreeBSD"
REVISION="8.3"
BRANCH="RELEASE"

Вывод. Используйте SVN. Намного проще и надёжнее. И меньше шансов словить "глюки".

UPDATE 04-05-2012
Решил проверить обновления. И получил такое:
koms# svn update /usr/src/
Updating '/usr/src':
Skipped '/usr/src/crypto' -- Node remains in conflict
Skipped '/usr/src/UPDATING' -- Node remains in conflict
Skipped '/usr/src/sys' -- Node remains in conflict
At revision 234994.
Summary of conflicts:
Skipped paths: 3

Что делать!? А ничего. Просто ждать пару дней или больше. Происходит изменение кода на сервере в этих папках. И как код будет принят, исходники обновятся нормально, без всяких предупреждений.

p.s. Помогло полное удаление каталога src и по новому полное скачивание.

p.p.s. Чуть позже допишу статейку по поводу обновления и команды resolved.

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5,00 out of 5)
Загрузка...
2 244 views

Довольно таки часто приходится собирать своё собственное ядро со своими опциями и устройствами. И соответственно бинарное обновление через интернет, отпадает напрочь. Вот и займёмся обновлением исходников в системе.

Создадим конфигурационный файл для cvsup:
koms# ee  /root/updatefile.cvs

и заполним следующим:
*default host=cvsup6.ru.FreeBSD.org
*default base=/var/db
*default prefix=/usr
*default release=cvs
*default delete use-rel-suffix
*default compress
*default tag=RELENG_8_2
src-all

Запускаем обновление исходников:
koms# cvsup -L 2 /root/updatefile.cvs

Проверяем что скачалось:
koms# grep -A 2 'TYPE="' /usr/src/sys/conf/newvers.sh
TYPE="FreeBSD"
REVISION="8.2"
BRANCH="RELEASE-p6"
koms#

А далее уже пересобираем и устанавливаем как обычно.

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Загрузка...
569 views