Если вы обслуживаете большое количество облачных экземпляров 3CX, скрипт автоматического резервирования весьма удобен, т.к. работает из единой консоли, не требуя входа в интерфейс управления каждого сервера. Консольные утилиты доступны как в версии 3CX для Linux, так и для Windows.
Команда BackupCMD
BackupCMD — консольная команда резервного копирования. У нее сеть следующие параметры:
- l, —log=VALUE, имя или путь log-файла
- f, —file=VALUE, имя или путь zip-файла архива — обязательный параметр
- o, —options=VALUE, Опции резервирования (что резервируется) — обязательный параметр
- c, —cfg=VALUE, полный путь к файлу конфигурации
- h, —help, показать справку (список этих параметров)
- —pwd=Value, пароль шифрования архива (v15.5 SP2 и выше)
Использование параметров
При указании только имени файла (параметр —file), резервная копия будет создана в расположении, указанном в интерфейсе управления 3CX. Местом хранения может быть локальная папка, FTP-сервер или Google Drive. Но если в параметре указан полный путь к файлу, используется именно он, а настройки в интерфейсе игнорируются.
Если не указан параметр log-файла, файл создается в расположении по умолчанию C:\Program Files\3CX Phone System\Instance1\Binbackup.log (Windows) или /var/lib/3cxpbx/Instance1/Bin/backup.log (Linux). Если в параметре указано только имя файла, оно будет использовано в расположении по умолчанию. А если указан полный путь, он переопределяет расположение log-файла по умолчанию (указывать можно только локальный путь).
Обратите внимание, что при запуске системного скрипта резервирования, пользователь «phonesystem» должен иметь право на запись в папку резервной копии.
Параметр —cfg используется только, если утилита BackupCMD запускается не из папки по умолчанию (например, из вашей папки с утилитами). В этом случае значение параметра устанавливается так:
- C:\Program Files\3CX Phone System\Instance1\Bin\BackupCmd.exe.config (Windows)
- /var/lib/3cxpbx/Instance1/Bin/BackupCmd.exe.config (Linux)
Резервное копирование в Windows
- Запустите командную строку от имени администратора и введите: cd C:\Program Files\3CX Phone System\Instance1\Bin
- Для показа справки введите: BackupCmd.exe —help
- Пример команды полного резервирования: BackupCmd.exe —file=backuptest.zip —options=ALL —log=backuptest.log
- Пример команды резервирования истории вызовов, лицензии и FQDN: BackupCmd.exe —file=backuptest.zip —options=CH,LIC,FQDN —log=backuptest.log
Резервное копирование в Linux
Команды выполняются пользователем «phonesystem» с привилегиями sudo:
- Запустите Terminal и введите: cd /var/lib/3cxpbx/Instance1/Bin/
- Для показа справки введите: sudo -u phonesystem /usr/sbin/3CXBackupCmd —help
- Пример команды полного резервирования: sudo -u phonesystem /usr/sbin/3CXBackupCmd —file=backuptest.zip —options=ALL —log=/tmp/backuptest.log
- Пример команды резервирования истории вызовов, лицензии и FQDN: sudo -u phonesystem /usr/sbin/3CXBackupCmd —file=backuptest.zip —options=CH,LIC,FQDN —log=/tmp/backuptest.log

Команда RestoreCMD
RestoreCMD — консольная команда восстановления резервной копии сервера 3CX. У нее сеть следующие параметры:
- -l, —log=VALUE, имя или путь log-файла
- -f, —file=VALUE, имя или путь zip-файла архива — обязательный параметр
- -c, —cfg=VALUE, полный путь к файлу конфигурации
- -h, —help, показать справку (список этих параметров)
- —pwd=Value, пароль дешифрования архива (v15.5 SP2 и выше)
- —failover, отказоустойчивый режим (сервисы 3CX не запускаются после восстановления)
Использование параметров
При указании только имени файла (аргумент —file), резервная копия ищется в расположении, указанном в интерфейсе управления 3CX. Но если в параметре указан полный путь к файлу, используется именно он, а настройки в интерфейсе игнорируются.
Если не указан параметр log-файла, файл не создается. Если в параметре указано только имя файла, файл будет создан в расположении по умолчанию C:\Program Files\3CX Phone System\Instance1\Binbackup.log (Windows) или /var/lib/3cxpbx/Instance1/Bin/backup.log (Linux). А если вы указали полный путь, log-файл создается по этому пути.
Параметр —cfg используется только, если утилита RestoreCMD запускается не из папки по умолчанию. В этом случае параметр устанавливается так:
- C:\Program Files\3CX Phone System\Instance1\Bin\RestoreCmd.exe.config (Windows)
- /var/lib/3cxpbx/Instance1/Bin/RestoreCmd.exe.config (Linux)
Восстановление в Windows
- Запустите командную строку от имени администратора и введите: cd C:\Program Files\3CX Phone System\Instance1\Bin
- Для показа справки введите: RestoreCmd.exe —help
- Пример команды восстановления сервера 3CX: RestoreCmd.exe —file=restoretest.zip —log=restoretest.log
- Пример команды восстановления отказоустойчивого узла: RestoreCmd.exe —file=restoretest.zip —failover —log=restoretest.log
Восстановление в Linux
Команды выполняются пользователем «phonesystem» с привилегиями sudo:
- Запустите Terminal и введите: cd /var/lib/3cxpbx/Instance1/Bin/
- Для показа справки введите: sudo -u phonesystem /usr/sbin/3CXRestoreCmd —help
- Пример команды восстановления: sudo -u phonesystem /usr/sbin/3CXRestoreCmd —file=restoretest.zip —log=/tmp/restoretest.log
- Пример команды восстановления отказоустойчивого узла: sudo -u phonesystem /usr/sbin/3CXRestoreCmd —file=restoretest.zip —failover —log=/tmp/restoretest.log
ссылка на оригинал статьи https://habr.com/post/420641/
Добавить комментарий