Разберем процедуру обновления phplist (менеджера рассылки писем) на операционной системе Linux.
Резервируем старую версию
Загружаем и устанавливаем phplist
Загружаем
Заменяем файлы
Обновляем базу данных
Восстановление из резервной копии
Это самый важный шаг при обновлении phplist. Во-первых, после удачной установки новой версии, поверх существующей, необходимо будет вернуть конфигурационный файл с настройками. Во-вторых, если что-то пойдет не так, у нас должна быть копия, чтобы вернуть старый рабочий phplist.
Создадим каталог — в него скопируем копию текущей версии phplist:
mkdir /backup
Делаем резервную копию базы данных.
mysqldump -v -uroot -p phplist | gzip > /backup/phplist.sql.gz
* система запросит пароль — вводим данные для учетной записи root mysql.
** данной командой мы создадим резервную копию базы данных phplist от пользователя root и сохраним ее в файл phplist.sql.gz каталога /backup .
Если в вашей системе база данных называется иначе, необходимо сделать резервное копирование для нее. А если имя неизвестно, то можно выполнить команду:
mysqldump -v -uroot -p —all-databases | gzip > /backup/all_databases.sql.gz
… для резервного копирования всех баз на сервере.
После копируем содержимое каталога с phplist:
cp -R /var/www/phplist /backup/
* в данном примере подразумевается, что наш портал phplist находится по пути /var/www/phplist .
Переходим к обновлению. Процесс нужно выполнить в несколько этапов.
Переходим на страницу загрузки phplist . Копируем ссылку на последнюю версию программы:
С помощью скопированной ссылки скачиваем на сервер архив:
wget -O phplist.tgz https://sourceforge.net/projects/phplist/files/phplist/3.6.6/phplist-3.6.6.tgz/download
* в данном примере вы загрузим phplist версии 3.6.6 .
Скачанный архив распакуем командой:
tar -xvzf phplist.tgz
Перейдем в распакованный каталог:
cd phplist-*
Удалим содержимое каталога старой версии:
rm -rf /var/www/phplist/* /var/www/phplist/.htaccess
* в моем случае, это /var/www/phplist , поэтому команда будет такой.
Перенесем файлы phplist в каталог, где сейчас находится старая его версия:
mv public_html/lists/* public_html/lists/.htaccess /var/www/phplist
* мы переносим все содержимое каталога public_html/lists в /var/www/phplist .
Возвращаем из резервной копии конфигурационный файл:
cp /backup/phplist/config/* /var/www/phplist/config/
Вернем загруженные файлы изображений:
cp -R /backup/phplist/images/* /var/www/phplist/images/
Задаем владельца на файлы:
chown -R nginx:nginx /var/www/phplist
Заходим на наш портал phplist под администратором — мы увидим ошибку, что база данных устарела:
Кликаем по ссылке Обновление — на следующей странице нажимаем по кнопке Обновление .
Ждем окончания процесса. Мы должны увидеть сообщение «Успешно».
Обновление завершено.
Если обновление вызвало проблемы, восстанавливаем предыдущую версию из резервной копии.
Подключаемся к sql-оболочке:
> mysql -uroot -p
Удаляем базу:
> DROP DATABASE phplist;
* в данном примере имя базы phplist . Если у вас другое имя, необходимо прописать соответствующее. Список баз можно посмотреть командой show databases;
Создаем по новой базу данных:
> CREATE DATABASE phplist CHARACTER SET utf8 COLLATE utf8_general_ci;
* будет создана база phplist в кодировке utf8.
Выходим из sql:
> q
Распаковываем архив с дампом базы:
gunzip /backup/phplist.sql.gz
Восстанавливаем базу:
mysql -uroot -p phplist < /backup/phplist.sql
Удаляем каталог с порталом:
rm -r /var/www/phplist
* предполагается, что портал находится по пути /var/www/phplist .
Копируем портал из резервной копии по старому пути:
cp -r /backup/phplist /var/www/phplist
Задаем владельца для каталога с порталом:
chown -R nginx:nginx /var/www/phplist
* в нашем примере пользователем, от которого работает веб-сервер, является nginx .
Zulip — программное обеспечение для реализации корпоративного чата. Разработан в 2012 году, в 2014 был…
Zookeeper — cервис-координатор, который позволяет обеспечить контроль синхронизации данных. Разработан на Java компанией Apache Software…
Zimbra — программное обеспечение для реализации почтового сервиса или, если сказать точнее, автоматизации совместной деятельности…
Zabbix — бесплатная система мониторинга. Позволяет отслеживать состояние сетевых узлов, компьютеров и серверов. Возможности: Поддержка…
YouTube — компания-владелец одноименного портала для просмотра и хранения видео. Чтобы пользоваться данным порталом достаточно…
Yota — провайдер, предоставляющий доступ к сети Интернет по беспроводной связи. Впервые, сервис начал работать…