Как обновить Apache 2.2.15 до 2.4.4 в CentOS

Простой ответ на вопрос в заголовке - "Да". Но то, что Вы действительно хотите сделать, является следующим шагом, который зеркально отражал существующие данные.

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

Во-первых, инициализировать /dev/sdb1 как новое /dev/md0 с недостающим диском и инициализируют файловую систему (я принимаю ext3, но выбор является Вашим),

mdadm --create --verbose /dev/md0 --level=mirror --raid-devices=2 /dev/sdb1 missing
mkfs -text3 /dev/md0

Теперь, /dev/sda1 наиболее вероятно Ваша корневая файловая система (/) таким образом для безопасности необходимо сделать следующий шаг от живого CD, спасательного диска или другой загрузочной системы, которая может получить доступ к обоим /dev/sda1 и /dev/md0 хотя я успешно сделал это путем припадания до однопользовательского режима.

Скопируйте все содержание файловой системы на /dev/sda1 кому: /dev/md0. Например:

mount /dev/sda1 /mnt/a       # only do this if /dev/sda1 isn't mounted as root
mount /dev/md0 /mnt/b
cd /mnt/a                    # or "cd /" if it's the root filesystem
cp -dpRxv . /mnt/b

Править /etc/fstab или иначе удостоверьтесь это на следующей начальной загрузке, /dev/md0 смонтирован вместо /dev/sda1. Ваша система, вероятно, установлена загрузиться от /dev/sda1 и параметры начальной загрузки, вероятно, указывают это как корневое устройство, поэтому когда перезагрузка Вас должна вручную изменить это так, чтобы корень был /dev/md0 (принятие /dev/sda1 был корень). После перезагрузки проверьте это/dev/md0 теперь смонтирован (df) и это это работает как ухудшенное зеркало (cat /proc/mdstat). Добавить /dev/sda1 к массиву:

mdadm /dev/md0 --add /dev/sda1

Так как восстанавливание перезапишет /dev/sda1, какая версия метаданных, которую Вы используете, не важна. Как всегда при внесении существенных изменений, возьмите полное резервное копирование (если возможный), или, по крайней мере, удостоверьтесь, что что-либо, что не может быть воссоздано, безопасно.

Необходимо будет повторно создать конфигурацию начальной загрузки для использования /dev/md0 как корень (если /dev/sda1 был корень), и вероятно должен повторно создать mdadm.conf удостовериться /dev/md0 всегда запускается.

9
13.05.2016, 09:27
2 ответа
[112314]CentOS 6.x не предоставляет 2.4.x, только 2.2.x версии Apache. CentOS, как и операционная система Red Hat, из которой он состоит, RHEL ориентированы на стабильность и поэтому имеют тенденцию отставать от того, что является передовым. Так что вам нужно либо:

скомпилировать его самостоятельно

найти исходные RPM и собрать/перекомпилировать их

найти репозиторий, в котором он уже имеет предварительно собранные в RPM-форме

найти предварительно собранные двоичные файлы не в RPM (часто устанавливаемые в [113344]/opt[113345])

Прокатывая его самостоятельно

В сети есть множество обучающих материалов для компиляции Apache 2. 4.x с нуля на CentOS 6.x, вот одно из них: [112797]Установите Apache 2.4.4 на CentOS 6.4[112798], это покажет, как.

Вы также можете попробовать [112799]скачать файл [113346].tar.gz[113347] напрямую [112800], он включает RPM [112801]. spec[112802], так что вы можете пересобрать его так:
Я бы не ожидал, что вы зайдёте слишком далеко с этим подходом, так как вам, вероятно, понадобится несколько других пакетов, которые немного хитроумны, чтобы прийти на CentOS 6.x, не пересобирая их тоже.

Находя repo

13
27.01.2020, 20:06

Самый простой способ — установить версию SCL, как описано здесь:

Как обновить Apache до версии 2.4.29 с помощью SCL?

0
27.01.2020, 20:06

Теги

Похожие вопросы