Обновление с версии 3.11 на 3.14

Установка

  1. Обновить систему до последних версий:

    sudo aptitude update
    sudo aptitude upgrade
  2. Выполнить полный "бэкап" (см. Регламентные работы по сохранению баз и конфигурации ECSS-10)

    sudo ecss-control stash
  3. Остановить все ноды на сервере:

    sudo systemctl stop ecss.service
    • При обновлении кластера следует обновлять сервера поочередно. Таким образом, при обновлении, один из хостов будет всегда запущен и работа сервисов не будет прервана. Для разделения кластера следует использовать фирменный инструмент на обоих серверах:

      sudo ecss-control detach
    •  После разделения кластера, необходимо выключить все ноды на сервере, который будет обновляться первым:

      sudo systemctl stop ecss.service
  4. Добавить в систему репозиторий версии 3.14 (см. Обновление ОС и инсталляция необходимого ПО).
  5. Удалить пакеты 3.11, сохранив конфигурации и базы:

    cd .. 
    sudo apt remove ecss*
  6.  Версия 3.14 устанавливается на Ubuntu 18.04, а 3.11 на Ubuntu 16.04. Это означает, что перед установкой новой версии SSW требуется обновить ОС на сервере. Как только будут удалены старые пакеты ECSS, можно приступать к обновлению сервера:

    sudo do-release-upgrade
  7. Установить ecss

    • Установить ecss-mysql 
      В кластере установку начинаем с ecss1, причем желательно, чтобы сетевой интерфейс mysql переместился на ecss1.

      sudo aptitude install ecss-mysql

      Во время установки ecss-mysql будет предложено обновить конфигурацию aparmor, следует ответить Yes (Y).

      Если возникла проблема с какой-либо базой данных, следует произвести перезагрузку сервиса aparmor, затем удаление базы данных и mysql, а после заново установить ecss-mysql.

      systemctl restart apparmor.service
      DROP DATABASE <проблемная база данных>;
      sudo aptitude install ecss-mysql
    • Установить пакет ecss-node содержащий основные подсистемы:

      sudo aptitude install ecss-node
    • Установить дополнительные подсистемы:

      sudo aptitude install ecss-restfs ecss-media-server ecss-web-conf ecss-asr ecss-cc-ui ecss-security

      В процессе установки будет предложена замена всех конфигурационных файлов — соглашаемся (Y) или смотрим отличия и потом соглашаемся.
      При установке ecss-media-server будет предложен мастер настройки. Если ответить утвердительно, параметры настроек msr можно сконфигурировать в нем. Тогда не нужно будет править конфигурационные файлы после установки.

    • Для кластера нужно после обновления конфигурационного файла /etc/ecss/ecss-mycelium/mycelium1.config заново прописать реальное имя кластера, например mycelium1:

      sudo perl -pi -e 's/cluster_name, undefined/cluster_name, mycelium1/' /etc/ecss/ecss-mycelium/mycelium1.config
      cat /etc/ecss/ecss-mycelium/mycelium1.config | grep -e cluster_name
  8. Остановить все сервисы:

    sudo systemctl stop ecss.service
  9. Перезапустить модули для работы с token:

    sudo systemctl restart SACSrv 
    sudo systemctl restart pcscd
    sudo ldconfig
  10. Настроить dnsmasq:

    1.  При стандартном обновлении должны оставаться default конфигурации — в качестве ip адреса указан 127.0.0.1:

      /etc/dnsmasq.d/ecss-broker
      	address=/primary.broker.ecss/127.0.0.1
      	address=/secondary.broker.ecss/127.0.0.1
      
      /etc/dnsmasq.d/ecss-tc
      	address=/tc.mysql.ecss/127.0.0.1
      
      /etc/dnsmasq.d/ecss-cocon-mysql
      	address=/cocon.mysql.ecss/127.0.0.1
      
      /etc/dnsmasq.d/ecss-statistic
      	address=/statistics.mysql.ecss/127.0.0.1
      
      /etc/dnsmasq.d/ecss-tts
      	address=/tts.mysql.ecss/127.0.0.1
      
    2. При обновлении системы в кластере в настройках dnsmasq требуется указать ip адреса обоих хостов (в примере 10.10.0.1 10.10.0.2 статические ip адреса хостов, а 10.10.0.15 VRRP ip адрес mysql настроенный в keepalived):

      Пример настроек на ecss1/ecss2:
      /etc/dnsmasq.d/ecss-broker
      	address=/primary.broker.ecss/10.10.0.1
      	address=/secondary.broker.ecss/10.10.0.2
      
      /etc/dnsmasq.d/ecss-tc
      	address=/tc.mysql.ecss/10.10.0.15
      
      /etc/dnsmasq.d/ecss-cocon-mysql
      	address=/cocon.mysql.ecss/10.10.0.15
      
      /etc/dnsmasq.d/ecss-statistic
      	address=/statistics.mysql.ecss/10.10.0.15
      
      /etc/dnsmasq.d/ecss-tts
      	address=/tts.mysql.ecss/10.10.0.15
  11. Запустить ecss:

    sudo systemctl start ecss.service
    • При обновлении кластера, перед запуском системы необходимо выключить сервисы (3.11) на другом хосте
    • После запуска сервисов на сервере с 3.14, необходимо аналогичным образом обновить другой хост с 3.11.

Деинсталляция компонентов ECSS

Удаление ecss-mysql

Для удаления пакета ecss-mysql с сохранением баз воспользуйтесь командой:

sasha@ecss2:~/ssw2_3.14$ sudo apt remove ecss-mysql 
Чтение списков пакетов… Готово
Построение дерева зависимостей       
Чтение информации о состоянии… Готово
Следующий пакет устанавливался автоматически и больше не требуется:
  mysql-server
Для его удаления используйте «sudo apt autoremove».
Следующие пакеты будут УДАЛЕНЫ:
  ecss-mysql
Обновлено 0 пакетов, установлено 0 новых пакетов, для удаления отмечено 1 пакетов, и 0 пакетов не обновлено.
После данной операции объём занятого дискового пространства уменьшится на 440 kB.
Хотите продолжить? [Д/н] y
(Чтение базы данных … на данный момент установлено 197366 файлов и каталогов.)
Удаляется ecss-mysql (3.14.0.611) …
Restart MySQL Server

При этом базы и конфигурационные файлы не удаляются.

sasha@ecss2:~/ssw2_3.14$ sudo ls -la /var/lib/ecss-mysql/
total 44
drwxr-xr-x 11 mysql mysql 4096 сен 10 21:22 .
drwxr-xr-x 59 root  root  4096 сен 10 21:32 ..
drwxr-xr-x  2 mysql mysql 4096 сен 10 21:22 ecss_address_book
drwxr-xr-x  2 mysql mysql 4096 сен 10 21:42 ecss_audit
drwxr-xr-x  2 mysql mysql 4096 сен 10 21:22 ecss_calls_db
drwxr-xr-x  2 mysql mysql 4096 сен 10 21:22 ecss_dialer_db
drwxr-xr-x  2 mysql mysql 4096 сен 10 21:22 ecss_meeting_db
drwxr-xr-x  2 mysql mysql 4096 сен 10 21:22 ecss_statistics
drwxr-xr-x  2 mysql mysql 4096 сен 10 21:22 ecss_subscribers
drwxr-xr-x  2 mysql mysql 4096 сен 12 07:35 history_db
drwxr-xr-x  2 mysql mysql 4096 сен 14 21:30 web_conf
sasha@ecss2:~/ssw2_3.14$ 
sasha@ecss2:~/ssw2_3.14$ 
sasha@ecss2:~/ssw2_3.14$ 
sasha@ecss2:~/ssw2_3.14$ 
sasha@ecss2:~/ssw2_3.14$ sudo ls -la /var/lib/mysql
total 188456
drwx------  5 mysql mysql     4096 сен 14 23:00 .
drwxr-xr-x 59 root  root      4096 сен 10 21:32 ..
-rw-r-----  1 mysql mysql       56 сен 10 21:20 auto.cnf
-rw-r--r--  1 root  root         0 сен 10 21:21 debian-5.7.flag
lrwxrwxrwx  1 mysql mysql       37 сен 10 21:22 ecss_address_book -> /var/lib/ecss-mysql/ecss_address_book
lrwxrwxrwx  1 mysql mysql       30 сен 10 21:22 ecss_audit -> /var/lib/ecss-mysql/ecss_audit
lrwxrwxrwx  1 mysql mysql       33 сен 10 21:22 ecss_calls_db -> /var/lib/ecss-mysql/ecss_calls_db
lrwxrwxrwx  1 mysql mysql       34 сен 10 21:22 ecss_dialer_db -> /var/lib/ecss-mysql/ecss_dialer_db
lrwxrwxrwx  1 mysql mysql       35 сен 10 21:22 ecss_meeting_db -> /var/lib/ecss-mysql/ecss_meeting_db
lrwxrwxrwx  1 mysql mysql       35 сен 10 21:22 ecss_statistics -> /var/lib/ecss-mysql/ecss_statistics
lrwxrwxrwx  1 mysql mysql       36 сен 10 21:22 ecss_subscribers -> /var/lib/ecss-mysql/ecss_subscribers
lrwxrwxrwx  1 mysql mysql       30 сен 10 21:22 history_db -> /var/lib/ecss-mysql/history_db
-rw-r-----  1 mysql mysql     1331 сен 14 22:15 ib_buffer_pool
-rw-r-----  1 mysql mysql 79691776 сен 14 23:00 ibdata1
-rw-r-----  1 mysql mysql 50331648 сен 14 23:00 ib_logfile0
-rw-r-----  1 mysql mysql 50331648 сен 10 21:20 ib_logfile1
-rw-r-----  1 mysql mysql 12582912 сен 14 22:15 ibtmp1
drwxr-x---  2 mysql mysql     4096 сен 10 21:21 mysql
drwxr-x---  2 mysql mysql     4096 сен 10 21:21 performance_schema
drwxr-x---  2 mysql mysql    12288 сен 10 21:21 sys
lrwxrwxrwx  1 mysql mysql       28 сен 10 21:22 web_conf -> /var/lib/ecss-mysql/web_conf
sasha@ecss2:~/ssw2_3.14$ cat /etc/mysql/mysql.cnf 
#
# The MySQL database server configuration file.
#
# You can copy this to one of:
# - "/etc/mysql/my.cnf" to set global options,
# - "~/.my.cnf" to set user-specific options.
# 
# One can use all long options that the program supports.
# Run program with --help to get a list of available options and with
# --print-defaults to see which it would actually understand and use.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html

#
# * IMPORTANT: Additional settings that can override those from this file!
#   The files must end with '.cnf', otherwise they'll be ignored.
#

!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/

Для полного удаления пакета вместе с базами и конфигурационными файлами нужно использовать ключ purge:

sasha@ecss2:~/ssw2_3.14$ sudo apt purge ecss-mysql 
Чтение списков пакетов… Готово
Построение дерева зависимостей       
Чтение информации о состоянии… Готово
Следующий пакет устанавливался автоматически и больше не требуется:
  mysql-server
Для его удаления используйте «sudo apt autoremove».
Следующие пакеты будут УДАЛЕНЫ:
  ecss-mysql*
Обновлено 0 пакетов, установлено 0 новых пакетов, для удаления отмечено 1 пакетов, и 0 пакетов не обновлено.
После данной операции объём занятого дискового пространства уменьшится на 440 kB.
Хотите продолжить? [Д/н] y
(Чтение базы данных … на данный момент установлено 197366 файлов и каталогов.)
Удаляется ecss-mysql (3.14.0.611) …
Restart MySQL Server
(Чтение базы данных … на данный момент установлено 197298 файлов и каталогов.)
Вычищаются файлы настройки пакета ecss-mysql (3.14.0.611) …
Deleting 'ecss_audit' database ...
'ecss_audit' database deleted
Deleting user 'audit' ...
User 'audit' deleted
Deleting 'ecss_statistics' database ...
'ecss_statistics' database deleted
Deleting user 'statistics' ...
User 'statistics' deleted
Deleting 'ecss_subscribers' database ...
'ecss_subscribers' database deleted
Deleting user 'subscribers' ...
User 'subscribers' deleted
Deleting 'web_conf' database ...
'web_conf' database deleted
Deleting user 'web_conf' ...
User 'web_conf' deleted
Deleting 'ecss_calls_db' database ...
'ecss_calls_db' database deleted
Deleting user 'calls_db' ...
User 'calls_db' deleted
Deleting 'ecss_dialer_db' database ...
'ecss_dialer_db' database deleted
Deleting user 'dialer_db' ...
User 'dialer_db' deleted
Deleting 'history_db' database ...
'history_db' database deleted
Deleting user 'history_db' ...
User 'history_db' deleted
Deleting 'ecss_address_book' database ...
'ecss_address_book' database deleted
Deleting user 'address_book' ...
User 'address_book' deleted
Deleting 'ecss_meeting_db' database ...
'ecss_meeting_db' database deleted
Deleting user 'ecss_meeting_db' ...
User 'ecss_meeting_db' deleted

При этом по каждой базе нужно подтверждение удаления:

После этого каталог /var/lib/ecss-mysql/ будет очищен.

Если нужно полностью удалить все пакеты mysql*:

Внимание! Удаление пакетов mysql-* "тянет" за собой удаление ecss-web-conf и ecss-restfs.

При удалении ecss-restfs задается вопрос об удалении записей разговоров.

А также об удалении всех БД MySQL:

sasha@ecss2:~/ssw2_3.14$ sudo apt purge mysql-*
Чтение списков пакетов… Готово
Построение дерева зависимостей       
Чтение информации о состоянии… Готово
Заметьте, выбирается «mysql-workbench» для шаблона «mysql-*»
Заметьте, выбирается «mysql-client-5.5» для шаблона «mysql-*»
Заметьте, выбирается «mysql-client-5.6» для шаблона «mysql-*»
Заметьте, выбирается «mysql-client-5.7» для шаблона «mysql-*»
Заметьте, выбирается «mysql-common-5.6» для шаблона «mysql-*»
Заметьте, выбирается «mysql-server-5.0» для шаблона «mysql-*»
Заметьте, выбирается «mysql-server-5.1» для шаблона «mysql-*»
Заметьте, выбирается «mysql-server-5.5» для шаблона «mysql-*»
Заметьте, выбирается «mysql-server-5.6» для шаблона «mysql-*»
Заметьте, выбирается «mysql-server-5.7» для шаблона «mysql-*»
Заметьте, выбирается «mysql-utilities» для шаблона «mysql-*»
Заметьте, выбирается «mysql-testsuite» для шаблона «mysql-*»
Заметьте, выбирается «mysql-server» для шаблона «mysql-*»
Заметьте, выбирается «mysql-client» для шаблона «mysql-*»
Заметьте, выбирается «mysql-sandbox» для шаблона «mysql-*»
Заметьте, выбирается «mysql-community-client-core» для шаблона «mysql-*»
Заметьте, выбирается «mysql-client-core-5.5» для шаблона «mysql-*»
Заметьте, выбирается «mysql-client-core-5.6» для шаблона «mysql-*»
Заметьте, выбирается «mysql-client-core-5.7» для шаблона «mysql-*»
Заметьте, выбирается «mysql-8.0» для шаблона «mysql-*»
Заметьте, выбирается «mysql-testsuite-5.5» для шаблона «mysql-*»
Заметьте, выбирается «mysql-testsuite-5.6» для шаблона «mysql-*»
Заметьте, выбирается «mysql-testsuite-5.7» для шаблона «mysql-*»
Заметьте, выбирается «mysql-common» для шаблона «mysql-*»
Заметьте, выбирается «mysql-workbench-data» для шаблона «mysql-*»
Заметьте, выбирается «mysql-server-core-5.1» для шаблона «mysql-*»
Заметьте, выбирается «mysql-server-core-5.5» для шаблона «mysql-*»
Заметьте, выбирается «mysql-server-core-5.6» для шаблона «mysql-*»
Заметьте, выбирается «mysql-server-core-5.7» для шаблона «mysql-*»
Заметьте, выбирается «mysql-source-5.7» для шаблона «mysql-*»
Пакет «mysql-client-5.5» не установлен, поэтому не может быть удалён
Пакет «mysql-client-5.6» не установлен, поэтому не может быть удалён
Пакет «mysql-server-core-5.6» не установлен, поэтому не может быть удалён
Пакет «mysql-client-core-5.5» не установлен, поэтому не может быть удалён
Пакет «mysql-client-core-5.6» не установлен, поэтому не может быть удалён
Заметьте, вместо «mysql-common-5.6» выбирается «mysql-common»
Пакет «mysql-server-5.5» не установлен, поэтому не может быть удалён
Пакет «mysql-server-5.6» не установлен, поэтому не может быть удалён
Пакет «mysql-server-core-5.5» не установлен, поэтому не может быть удалён
Пакет «mysql-testsuite-5.5» не установлен, поэтому не может быть удалён
Пакет «mysql-testsuite-5.6» не установлен, поэтому не может быть удалён
Пакет «mysql-server-5.0» не установлен, поэтому не может быть удалён
Пакет «mysql-server-5.1» не установлен, поэтому не может быть удалён
Пакет «mysql-server-core-5.1» не установлен, поэтому не может быть удалён
Пакет «mysql-8.0» не установлен, поэтому не может быть удалён
Пакет «mysql-community-client-core» не установлен, поэтому не может быть удалён
Пакет «mysql-sandbox» не установлен, поэтому не может быть удалён
Пакет «mysql-utilities» не установлен, поэтому не может быть удалён
Пакет «mysql-workbench» не установлен, поэтому не может быть удалён
Пакет «mysql-workbench-data» не установлен, поэтому не может быть удалён
Пакет «mysql-client» не установлен, поэтому не может быть удалён
Пакет «mysql-source-5.7» не установлен, поэтому не может быть удалён
Пакет «mysql-testsuite» не установлен, поэтому не может быть удалён
Пакет «mysql-testsuite-5.7» не установлен, поэтому не может быть удалён
Следующие пакеты устанавливались автоматически и больше не требуются:
  apache2-utils avahi-daemon ca-certificates-java cutycapt default-jre default-jre-headless fonts-crosextra-caladea fonts-crosextra-carlito
  fonts-dejavu fonts-dejavu-extra fonts-liberation2 fonts-linuxlibertine fonts-opensymbol fonts-sil-gentium fonts-sil-gentium-basic freepats
  geoclue-2.0 gstreamer1.0-gtk3 iio-sensor-proxy ipython3 java-common javascript-common jq jshon libabw-0.1-1 libapache-pom-java libapr1
  libaprutil1 libart-2.0-2 libatk-wrapper-java libatk-wrapper-java-jni libaudio2 libavahi-core7 libavahi-glib1 libboost-date-time1.65.1
  libboost-locale1.65.1 libboost-thread1.65.1 libbsh-java libcdr-0.1-1 libclucene-contribs1v5 libclucene-core1v5 libcmis-0.5-5v5 libcolamd2
  libcommons-logging-java libcommons-parent-java libdaemon0 libdouble-conversion1 libe-book-0.1-1 libel-api-java libeot0 libepubgen-0.1-1
  libetonyek-0.1-1 libevent-core-2.1-6 libexttextcat-2.0-0 libexttextcat-data libfreehand-0.1-1 libgeoclue-2-0 libgif7 libgpgmepp6
  libhsqldb1.8.0-java libjq1 libjs-jquery libjsp-api-java liblangtag-common liblangtag1 libmatheval1 libmbim-glib4 libmbim-proxy
  libmediainfo0v5 libmhash2 libmm-glib0 libmms0 libmspub-0.1-1 libmwaw-0.3-3 libmythes-1.2-0 libneon27-gnutls libnss-mdns libodfgen-0.1-1
  libonig4 liborcus-0.13-0 libpagemaker-0.0-0 libpoppler73 libpq5 libqmi-glib5 libqmi-proxy libqt5core5a libqt5dbus5 libqt5gui5 libqt5network5
  libqt5positioning5 libqt5printsupport5 libqt5qml5 libqt5quick5 libqt5sensors5 libqt5svg5 libqt5webchannel5 libqt5webkit5 libqt5widgets5
  libraptor2-0 librasqal3 librdf0 libreoffice libreoffice-avmedia-backend-gstreamer libreoffice-base libreoffice-base-core
  libreoffice-base-drivers libreoffice-calc libreoffice-common libreoffice-core libreoffice-draw libreoffice-gnome libreoffice-gtk3
  libreoffice-impress libreoffice-java-common libreoffice-l10n-ru libreoffice-librelogo libreoffice-math libreoffice-nlpsolver
  libreoffice-ogltrans libreoffice-report-builder libreoffice-report-builder-bin libreoffice-script-provider-bsh libreoffice-script-provider-js
  libreoffice-script-provider-python libreoffice-sdbc-hsqldb libreoffice-sdbc-postgresql libreoffice-style-galaxy libreoffice-style-tango
  libreoffice-wiki-publisher libreoffice-writer librevenge-0.0-0 libservlet-api-java libservlet3.1-java libsuitesparseconfig5 libtinyxml2-6
  libvisio-0.1-1 libwebsocket-api-java libwpd-0.10-10 libwpg-0.3-3 libwps-0.4-4 libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-randr0
  libxcb-render-util0 libxcb-xinerama0 libxcb-xkb1 libxkbcommon-x11-0 libxmlsec1-nss libzen0v5 lp-solve lua-filesystem lua-json lua-ldap
  lua-lpeg lua-sec lua-socket lua-torch-paths lua5.1 mediainfo memcached modemmanager openjdk-11-jre openjdk-11-jre-headless
  python-django-common python3-bs4 python3-cherrypy3 python3-dateutil python3-decorator python3-django python3-html5lib python3-ipython
  python3-ipython-genutils python3-lxml python3-memcache python3-olefile python3-pexpect python3-pickleshare python3-pil python3-prompt-toolkit
  python3-ptyprocess python3-pygments python3-pymysql python3-pypdf2 python3-renderpm python3-reportlab python3-reportlab-accel
  python3-repoze.lru python3-routes python3-simplegeneric python3-simplejson python3-sqlparse python3-traitlets python3-tz python3-uno
  python3-wcwidth python3-webencodings python3-webob python3-ws4py python3-xhtml2pdf python3-xlrd python3-xlsxwriter qt5-gtk-platformtheme
  qttranslations5-l10n timidity timidity-daemon unit unit-python3.6 uno-libs3 ure usb-modeswitch usb-modeswitch-data uwsgi-core
  uwsgi-plugin-python3 zxtune
Для их удаления используйте «sudo apt autoremove».
Следующие пакеты будут УДАЛЕНЫ:
  ecss-restfs* ecss-web-conf* libmysqlclient20* lua-sql-mysql* mysql-client-5.7* mysql-client-core-5.7* mysql-common* mysql-server*
  mysql-server-5.7* mysql-server-core-5.7* python3-mysqldb*
Обновлено 0 пакетов, установлено 0 новых пакетов, для удаления отмечено 11 пакетов, и 0 пакетов не обновлено.
После данной операции объём занятого дискового пространства уменьшится на 234 MB.
Хотите продолжить? [Д/н] y
(Чтение базы данных … на данный момент установлено 197292 файла и каталога.)
Удаляется ecss-restfs (3.14.0.318) …
Удаляется ecss-web-conf (3.14.0.383) …
Удаляется lua-sql-mysql:amd64 (2.3.4-1) …
Удаляется python3-mysqldb (1.3.10-1build1) …
Удаляется libmysqlclient20:amd64 (5.7.27-0ubuntu0.18.04.1) …
Удаляется mysql-server (5.7.27-0ubuntu0.18.04.1) …
Удаляется mysql-server-5.7 (5.7.27-0ubuntu0.18.04.1) …
update-alternatives: используется /etc/mysql/my.cnf.fallback для предоставления /etc/mysql/my.cnf (my.cnf) в автоматическом режиме
Удаляется mysql-client-5.7 (5.7.27-0ubuntu0.18.04.1) …
Удаляется mysql-client-core-5.7 (5.7.27-0ubuntu0.18.04.1) …
Удаляется mysql-common (5.8+1.0.4) …
Удаляется mysql-server-core-5.7 (5.7.27-0ubuntu0.18.04.1) …
Обрабатываются триггеры для man-db (2.8.3-2ubuntu0.1) …
Обрабатываются триггеры для libc-bin (2.27-3ubuntu1) …
(Чтение базы данных … на данный момент установлено 191662 файла и каталога.)
Вычищаются файлы настройки пакета ecss-restfs (3.14.0.318) …
dpkg: предупреждение: при удалении ecss-restfs каталог «/var/cache/ecss» не пуст, поэтому не удалён
Вычищаются файлы настройки пакета ecss-web-conf (3.14.0.383) …
cleanup database WEB_CONF
/var/lib/dpkg/info/ecss-web-conf.postrm: line 34: mysql: command not found
Deleting tables  from web_conf database...
/var/lib/dpkg/info/ecss-web-conf.postrm: line 36: mysql: command not found
Вычищаются файлы настройки пакета mysql-common (5.8+1.0.4) …
Вычищаются файлы настройки пакета mysql-server-5.7 (5.7.27-0ubuntu0.18.04.1) …
Обрабатываются триггеры для ureadahead (0.100.0-21) …
Обрабатываются триггеры для systemd (237-3ubuntu10.29) …
Обрабатываются триггеры для ufw (0.36-0ubuntu0.18.04.1) …

Удаление пакета ecss-node

Для удаления пакета используйте команду:

sasha@ecss2:~/ssw2_3.14$ sudo apt purge ecss-node 
[sudo] password for sasha: 
Чтение списков пакетов… Готово
Построение дерева зависимостей       
Чтение информации о состоянии… Готово
Следующие пакеты устанавливались автоматически и больше не требуются:
  apache2-utils avahi-daemon ca-certificates-java cutycapt default-jre default-jre-headless dnsmasq ecss-dns-env erlang-asn1
  erlang-base-hipe erlang-crypto erlang-eldap erlang-inets erlang-megaco erlang-mnesia erlang-os-mon erlang-parsetools erlang-public-key
  erlang-runtime-tools erlang-snmp erlang-ssh erlang-ssl erlang-syntax-tools erlang-tools erlang-xmerl fonts-crosextra-caladea
  fonts-crosextra-carlito fonts-dejavu fonts-dejavu-extra fonts-liberation2 fonts-linuxlibertine fonts-opensymbol fonts-sil-gentium
  fonts-sil-gentium-basic freepats geoclue-2.0 gstreamer1.0-gtk3 icu-devtools iio-sensor-proxy ipython3 java-common javascript-common jq jshon
  lftp libabw-0.1-1 libapache-pom-java libapr1 libaprutil1 libart-2.0-2 libatk-wrapper-java libatk-wrapper-java-jni libaudio2 libavahi-core7
  libavahi-glib1 libboost-date-time1.65.1 libboost-locale1.65.1 libboost-thread1.65.1 libbsh-java libcdr-0.1-1 libclucene-contribs1v5
  libclucene-core1v5 libcmis-0.5-5v5 libcolamd2 libcommons-logging-java libcommons-parent-java libdaemon0 libdouble-conversion1 libe-book-0.1-1
  libel-api-java libeot0 libepubgen-0.1-1 libetonyek-0.1-1 libevent-core-2.1-6 libexttextcat-2.0-0 libexttextcat-data libfreehand-0.1-1
  libgeoclue-2-0 libgif7 libgpgmepp6 libhsqldb1.8.0-java libjq1 libjs-jquery libjsp-api-java liblangtag-common liblangtag1 libmatheval1
  libmbim-glib4 libmbim-proxy libmediainfo0v5 libmhash2 libmm-glib0 libmms0 libmspub-0.1-1 libmwaw-0.3-3 libmythes-1.2-0 libneon27-gnutls
  libnss-mdns libodfgen-0.1-1 libonig4 libopts25 liborcus-0.13-0 libpagemaker-0.0-0 libpoppler73 libpq5 libqmi-glib5 libqmi-proxy libqt5core5a
  libqt5dbus5 libqt5gui5 libqt5network5 libqt5positioning5 libqt5printsupport5 libqt5qml5 libqt5quick5 libqt5sensors5 libqt5svg5
  libqt5webchannel5 libqt5webkit5 libqt5widgets5 libraptor2-0 librasqal3 librdf0 libreoffice libreoffice-avmedia-backend-gstreamer
  libreoffice-base libreoffice-base-core libreoffice-base-drivers libreoffice-calc libreoffice-common libreoffice-core libreoffice-draw
  libreoffice-gnome libreoffice-gtk3 libreoffice-impress libreoffice-java-common libreoffice-l10n-ru libreoffice-librelogo libreoffice-math
  libreoffice-nlpsolver libreoffice-ogltrans libreoffice-report-builder libreoffice-report-builder-bin libreoffice-script-provider-bsh
  libreoffice-script-provider-js libreoffice-script-provider-python libreoffice-sdbc-hsqldb libreoffice-sdbc-postgresql
  libreoffice-style-galaxy libreoffice-style-tango libreoffice-wiki-publisher libreoffice-writer librevenge-0.0-0 libsctp1 libservlet-api-java
  libservlet3.1-java libsuitesparseconfig5 libtinyxml2-6 libvisio-0.1-1 libwebsocket-api-java libwpd-0.10-10 libwpg-0.3-3 libwps-0.4-4
  libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-randr0 libxcb-render-util0 libxcb-xinerama0 libxcb-xkb1 libxkbcommon-x11-0 libxmlsec1-nss
  libzen0v5 lp-solve lua-filesystem lua-json lua-ldap lua-lpeg lua-sec lua-socket lua-torch-paths lua5.1 mediainfo memcached modemmanager ntp
  openjdk-11-jre openjdk-11-jre-headless opensc opensc-pkcs11 python-django-common python3-bs4 python3-cherrypy3 python3-dateutil
  python3-decorator python3-django python3-html5lib python3-ipython python3-ipython-genutils python3-lxml python3-memcache python3-olefile
  python3-pexpect python3-pickleshare python3-pil python3-prompt-toolkit python3-ptyprocess python3-pygments python3-pymysql python3-pypdf2
  python3-renderpm python3-reportlab python3-reportlab-accel python3-repoze.lru python3-routes python3-simplegeneric python3-simplejson
  python3-sqlparse python3-traitlets python3-tz python3-uno python3-wcwidth python3-webencodings python3-webob python3-ws4py python3-xhtml2pdf
  python3-xlrd python3-xlsxwriter qt5-gtk-platformtheme qttranslations5-l10n snmp snmpd sntp sqlite3 timidity timidity-daemon unit
  unit-python3.6 uno-libs3 ure usb-modeswitch usb-modeswitch-data uwsgi-core uwsgi-plugin-python3 zxtune
Для их удаления используйте «sudo apt autoremove».
Следующие пакеты будут УДАЛЕНЫ:
  ecss-node*
Обновлено 0 пакетов, установлено 0 новых пакетов, для удаления отмечено 1 пакетов, и 0 пакетов не обновлено.
После данной операции объём занятого дискового пространства уменьшится на 134 MB.
Хотите продолжить? [Д/н] y
(Чтение базы данных … на данный момент установлено 191587 файлов и каталогов.)
Удаляется ecss-node (3.14.0.717) …
 * ecss-node: terminating ecss-copycdr.timer
 * ecss-node: terminating ecss-copycdr.service
 * ecss-node: terminating ecss-subscriber-portal.service
 * ecss-node: terminating ecss-pa-megaco.service
 * ecss-node: terminating ecss-pa-sip.service
 * ecss-node: terminating ecss-mediator.service
 * ecss-node: terminating ecss-core.service
 * ecss-node: terminating ecss-ds.service
 * ecss-node: terminating ecss-mycelium.service
 * ecss-node: terminating ecss-call-api.service
 * ecss-node: terminating ecss-teleconference-api.service

Удаление пакета ecss-media-server

Для удаления пакета с сохранением конфигурационных файлов используйте команду:

sudo apt remove ecss-media-server

Пример:

sasha@ecss2:~$ sudo apt remove ecss-media-server 
Чтение списков пакетов… Готово
Построение дерева зависимостей       
Чтение информации о состоянии… Готово
Следующие пакеты будут УДАЛЕНЫ:
  ecss-media-server
Обновлено 0 пакетов, установлено 0 новых пакетов, для удаления отмечено 1 пакетов, и 0 пакетов не обновлено.
После данной операции объём занятого дискового пространства уменьшится на 28,3 MB.
Хотите продолжить? [Д/н] y
(Чтение базы данных … на данный момент установлено 176222 файла и каталога.)
Удаляется ecss-media-server (3.14.0.236) …

В каталоге /etc/ecss/ecss-media-server/ остаются файлы конфигурации:

sasha@ecss2:~$ ls -l /etc/ecss/ecss-media-server/
total 8
-rw-rw-r-- 1 ssw ssw 1203 сен 10 21:34 config-without-video.xml
-rw-rw-r-- 1 ssw ssw 1327 сен 10 21:54 config.xml

Для полного удаления:

sasha@ecss2:~$ sudo apt purge ecss-media-server 
Чтение списков пакетов… Готово
Построение дерева зависимостей       
Чтение информации о состоянии… Готово
Следующие пакеты будут УДАЛЕНЫ:
  ecss-media-server*
Обновлено 0 пакетов, установлено 0 новых пакетов, для удаления отмечено 1 пакетов, и 0 пакетов не обновлено.
После данной операции объём занятого дискового пространства возрастёт на 0 B.
Хотите продолжить? [Д/н] y
(Чтение базы данных … на данный момент установлено 175962 файла и каталога.)
Вычищаются файлы настройки пакета ecss-media-server (3.14.0.236) …

Удаление более ненужных пакетов

Для удаления остальных пакетов, которые больше не требуются, нужно использовать ключ autoremove:

sasha@ecss2:~$ sudo apt autoremove 
Чтение списков пакетов… Готово
Построение дерева зависимостей       
Чтение информации о состоянии… Готово
Следующие пакеты будут УДАЛЕНЫ:
  apache2-utils avahi-daemon ca-certificates-java cutycapt default-jre default-jre-headless dnsmasq ecss-user erlang-asn1 erlang-base-hipe erlang-crypto erlang-eldap erlang-inets erlang-megaco
  erlang-mnesia erlang-os-mon erlang-parsetools erlang-public-key erlang-runtime-tools erlang-snmp erlang-ssh erlang-ssl erlang-syntax-tools erlang-tools erlang-xmerl fonts-crosextra-caladea
  fonts-crosextra-carlito fonts-dejavu fonts-dejavu-extra fonts-liberation2 fonts-linuxlibertine fonts-opensymbol fonts-sil-gentium fonts-sil-gentium-basic freepats geoclue-2.0 gstreamer1.0-gtk3
  icu-devtools iio-sensor-proxy incron ipython3 java-common javascript-common jq jshon lftp libabw-0.1-1 libapache-pom-java libapr1 libaprutil1 libart-2.0-2 libatk-wrapper-java libatk-wrapper-java-jni
  libaudio2 libavahi-core7 libavahi-glib1 libboost-date-time1.65.1 libboost-locale1.65.1 libboost-thread1.65.1 libbsh-java libcdr-0.1-1 libclucene-contribs1v5 libclucene-core1v5 libcmis-0.5-5v5
  libcolamd2 libcommons-logging-java libcommons-parent-java libdaemon0 libdouble-conversion1 libe-book-0.1-1 libel-api-java libeot0 libepubgen-0.1-1 libetonyek-0.1-1 libevent-core-2.1-6
  libexttextcat-2.0-0 libexttextcat-data libfreehand-0.1-1 libgeoclue-2-0 libgif7 libgpgmepp6 libhsqldb1.8.0-java libjq1 libjs-jquery libjsp-api-java liblangtag-common liblangtag1 libmatheval1
  libmbim-glib4 libmbim-proxy libmediainfo0v5 libmhash2 libmm-glib0 libmms0 libmspub-0.1-1 libmwaw-0.3-3 libmythes-1.2-0 libneon27-gnutls libnss-mdns libodfgen-0.1-1 libonig4 libopts25 liborcus-0.13-0
  libpagemaker-0.0-0 libpoppler73 libpq5 libqmi-glib5 libqmi-proxy libqt5core5a libqt5dbus5 libqt5gui5 libqt5network5 libqt5positioning5 libqt5printsupport5 libqt5qml5 libqt5quick5 libqt5sensors5
  libqt5svg5 libqt5webchannel5 libqt5webkit5 libqt5widgets5 libraptor2-0 librasqal3 librdf0 libreoffice libreoffice-avmedia-backend-gstreamer libreoffice-base libreoffice-base-core
  libreoffice-base-drivers libreoffice-calc libreoffice-common libreoffice-core libreoffice-draw libreoffice-gnome libreoffice-gtk3 libreoffice-impress libreoffice-java-common libreoffice-l10n-ru
  libreoffice-librelogo libreoffice-math libreoffice-nlpsolver libreoffice-ogltrans libreoffice-report-builder libreoffice-report-builder-bin libreoffice-script-provider-bsh
  libreoffice-script-provider-js libreoffice-script-provider-python libreoffice-sdbc-hsqldb libreoffice-sdbc-postgresql libreoffice-style-galaxy libreoffice-style-tango libreoffice-wiki-publisher
  libreoffice-writer librevenge-0.0-0 libsctp1 libservlet-api-java libservlet3.1-java libsuitesparseconfig5 libtiff-tools libtinyxml2-6 libvisio-0.1-1 libwebsocket-api-java libwpd-0.10-10 libwpg-0.3-3
  libwps-0.4-4 libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-randr0 libxcb-render-util0 libxcb-xinerama0 libxcb-xkb1 libxkbcommon-x11-0 libxmlsec1-nss libzen0v5 lp-solve lua-filesystem lua-json
  lua-ldap lua-lpeg lua-sec lua-socket lua-torch-paths lua5.1 mediainfo memcached modemmanager ntp openjdk-11-jre openjdk-11-jre-headless opensc opensc-pkcs11 python-django-common python3-bs4
  python3-cherrypy3 python3-dateutil python3-decorator python3-django python3-html5lib python3-ipython python3-ipython-genutils python3-lxml python3-memcache python3-olefile python3-pexpect
  python3-pickleshare python3-pil python3-prompt-toolkit python3-ptyprocess python3-pygments python3-pymysql python3-pypdf2 python3-renderpm python3-reportlab python3-reportlab-accel python3-repoze.lru
  python3-routes python3-simplegeneric python3-simplejson python3-sqlparse python3-traitlets python3-tz python3-uno python3-wcwidth python3-webencodings python3-webob python3-ws4py python3-xhtml2pdf
  python3-xlrd python3-xlsxwriter qt5-gtk-platformtheme qttranslations5-l10n snmp snmpd sntp sqlite3 timidity timidity-daemon unit unit-python3.6 uno-libs3 ure usb-modeswitch usb-modeswitch-data
  uwsgi-core uwsgi-plugin-python3 xmlstarlet zxtune
Обновлено 0 пакетов, установлено 0 новых пакетов, для удаления отмечено 248 пакетов, и 0 пакетов не обновлено.
После данной операции объём занятого дискового пространства уменьшится на 866 MB.
Хотите продолжить? [Д/н] y
(Чтение базы данных … на данный момент установлено 175930 файлов и каталогов.)
Удаляется apache2-utils (2.4.29-1ubuntu4.10) …
...
Удаляется ca-certificates-java (20180516ubuntu1~18.04.1) …
Обрабатываются триггеры для desktop-file-utils (0.23-1ubuntu3.18.04.2) …
Обрабатываются триггеры для libc-bin (2.27-3ubuntu1) …
Обрабатываются триггеры для man-db (2.8.3-2ubuntu0.1) …
Обрабатываются триггеры для shared-mime-info (1.9-2) …
Обрабатываются триггеры для dbus (1.12.2-1ubuntu1.1) …
Обрабатываются триггеры для ca-certificates (20180409) …
Updating certificates in /etc/ssl/certs...
0 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...

updates of cacerts keystore disabled.
done.
Обрабатываются триггеры для hicolor-icon-theme (0.17-2) …
Обрабатываются триггеры для fontconfig (2.12.6-0ubuntu2) …
Обрабатываются триггеры для mime-support (3.60ubuntu1) …

Удаление пакетов по маске

Для удаления сразу нескольких пакетов можно пользоваться масками(см. man apt).

Пример команды для удаления всех пакетов ecss:

sudo apt purge ecss-*

Команды полной деинсталляции ECSS

В итоге, для полного удаления всех компонентов ECSS нужны всего 3 команды:

sudo apt purge ecss-*
sudo apt purge mysql-*
sudo apt autoremove

После желательно перезагрузить хост для удаления некоторых процессов из оперативной памяти.

В каталоге /var/log/ecss/security/ в служебных целях остаются логи. Данные логи нельзя удалить, штатными средствами данный процесс не предоставляется. Если необходима очистка этого каталога, следует обратиться в техническую поддержку.

Debconf

В некоторых случаях вместо переустановки пакета требуется просто изменение конфигурации. Обычно лучше применять команду dpkg-reconfigure <имя_пакета>. Но при необходимости можно использовать команды пакета debconf-utils.

Описание приведено на странице "Приложение В".