Portdowngrade

Требования

1. Локальный доступ с правами root или su.

2. Клиент SSH, например putty или SecureCRT

3. Наличие дерева портов. Если дерево портов не установлено, вы может установить его с помощью sysnstall

(либо используя portsnap).

 

Установка

Установка позволяет непосредственно сконфигурировать сервер CVS используемый по умолчанию

 # cd /usr/ports/sysutils/portdowngrade

# make DEFAULT_CVS_SERVER=»

Этот адрес электронной почты защищен от спам-ботов. У вас должен быть включен JavaScript для просмотра.

:/home/ncvs» install clean

 

Использование

Принцип работы portdowngrade состоит в ведении журнала логов сервера CVS используемого по умолчанию (либо одного из тех, которые определяются с флагом -s) и фиксации процессов  обновления. Затем отображается результат о предыдущих версиях на ваш выбор и обновляет дерево портов этой информацией (только для выбранного порта). Например, вы обновили PHP до версии 5.2.0. и  обнаружили, что некоторые из ваших PHP приложений перестали работать или работают некорректно. Вам необходимо вернуться к версии 5.1.x. Первым шагом необходимо заставить portdowngrade (1) выдать результат  по php5.

Примечание:

Если указать php5 только как имя порта, вам будет предоставлен список всех портов в имени которых присутствует php5.

# portdowngrade lang/php5

portdowngrade 0.6 by Heiner Eichmann

Please note, that nothing is changed in the ports tree

unless it is explicitly permitted in step 6!

Seeking port lang/php5 …

Found several matches:

1: lang/php5

2: lang/php5-extensions

Please choose one: 1

Выберите порт к которому планируете применить процедуру даунгрэйда. В данном случае выберите 1.

Теперь он будет зарегистрирован на CVS сервере и вам представят доступные версии обновления дерева

портов.

Downgrading port: lang/php5

Step 1: Checking out port from CVS repository

CVS root directory:

Этот адрес электронной почты защищен от спам-ботов. У вас должен быть включен JavaScript для просмотра.

:/home/ncvs

The authenticity of host ‘anoncvs1.freebsd.org (216.38.206.185)’ can’t be established.

DSA key fingerprint is 4d:59:19:7b:ea:9b:76:0b:ca:ee:da:26:e2:3a:83:b8.

Are you sure you want to continue connecting (yes/no)? yes

Warning: Permanently added ‘anoncvs1.freebsd.org’ (DSA) to the list of known hosts.

Step 2: Reading the port history from the CVS repository

Step 3: Analyzing the port history from the CVS repository

Step 4: Load port version numbers and present results

Keys: : next page d : details

p : previous page

: leave presentation and downdgrade if wanted

======================================================================

number date portversion comment

1 2006/11/12 19:43:12 5.2.0 Update suhosin patch to 0.9.6.2 release.

2 2006/11/06 17:43:10 5.2.0 Update to 5.2.0 release.

3 2006/10/27 19:11:17 5.1.6 Update suhosin patch to 0.9.6 release.

4 2006/10/16 09:30:58 5.1.6 — fix open_basedir vulnerability in php4 and php5 [1]

5 2006/10/06 17:24:21 5.1.6 Enable suhosin patch by default.

6 2006/10/05 20:59:17 5.1.6 Added safety checks against integer overflow.

7 2006/09/29 19:11:40 5.1.6 Update suhosin patch to 0.9.5 release.

8 2006/09/10 16:37:43 5.1.6 Add support for QDBM.

9 2006/09/09 12:35:33 5.1.6 Update suhosin patch to 0.9.3 release.

10 2006/09/04 07:59:15 5.1.6 — Add experimental suhosin protection system support

11 2006/08/31 14:37:05 5.1.6 Update to 5.1.6 release.

12 2006/08/18 16:41:29 5.1.5 Update to 5.1.5.

13 2006/08/18 16:40:18 5.1.4 Allow php5-ldap to be built with SASL support enabled.

14 2006/07/11 13:21:54 5.1.4 Add databases/php5-oci8:

15 2006/05/23 06:19:19 5.1.4 Try to fix build on 4.X.

16 2006/05/18 22:17:32 5.1.4 — Holy Batman! Chase rerolled distfile. Only chance is an addition of a file

17 2006/05/10 14:46:43 5.1.4 Chase gmp library and bump PORTREVISION.

Total lines: 152. Command:

Как только появится запрос на ввод команды, вы можете нажать Enter, чтобы выбрать соответсвующих даунградов или можете нажать пробел, для просмотра следующего списка вариантов. Выберем первое вхождение 5.1.6. в этом списке и нажмём Enter. Нам предложат ввести номер соответствующий версии,которая требуется в дереве портов.

Enter version number to change port to (0: exit): 3

Теперь вам необходимо подтвердить свой выбор:

Step 5: Checking out choosen date of the port from the CVS repository

Step 6: Modifying the port

Port: lang/php5

at : 2006/10/27 19:11:17

Type ‘yes’ to bring the port to the state of the date above

or ‘no’ to exit without changing anything. Note, that this only changes

the port, not the installed software! yes or no:yes

После подтверждения, lang/php5 установлен в версию 5.1.6. и вы готовы к проведению даунгрэйда порта.

Предварительно рекомендуется выполнить следующую команду, чтобы увидеть изменения в дереве портов:

# portsdb-Uu

После её завершения, фактически наступает время для выполнения даунгрэйда. Поскольку мы выполняем даунгрэйд php5, требуется убедиться, что так же производится даунгрэйд и всех его  расширений. Для этого можно использовать шаблон *.

# portupgrade-е php5 *

После завершения процесса portupgrade вы получите требуемую версию порта. В этом можно убедиться используя следующую команду:

# pkg_info | GREP php5

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *