Это старая версия документа!
Что такое Bareos?
Bareos (Backup Archiving Recovery Open Sourced) это высоконадежное сетевое кроссплатформенное программное обеспечение для резервного копирования, архивирования и восстановления данных. Bareos, основанный в 2010 году как 100-процентное открытое ответвление проекта Bacula, активно развивается и пополняется многими новыми функциями.
Поддержка LTO Hardware-шифрования, ограничение используемой ширины канала, поддержка облачных технологий и новые практичные команды для консоли — вот далеко не полный перечень расширенных функций, предлагаемых на сегодняшний день проектом Bareos. Исходный код доступен на https://github.com/bareos/ и находится под лицензией AGPL v3. Bareos также предоставляет готовые пакеты через репозитории для всех распространённых дистрибутивов Linux и установочные пакеты для Windows.
portsnap fetch portsnap extract portsnap fetch portsnap update
cd /usr/ports/databases/postgresql95-server make install clean BATCH=yes
mcedit /etc/rc.conf postgresql_enable="YES"
service postgresql initdb
Исправим конфигурационный файл:
mcedit /usr/local/pgsql/data/postgresql.conf listen_addresses = '*' port = 5432
Запустим и проверим:
/usr/local/etc/rc.d/postgresql start sockstat -l4 | grep post postgres postgres 99719 4 tcp4 *:5432 *:*
Изменим пароль, создадим пользователя, роль и добавим базу(тестовую. что бы было )) ).
passwd pgsql
B4TA1Z1K
su pgsql
createuser -sdrP sector
password
createdb -O sector newdb
psql newdb
newdb=# \list
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+----------+----------+---------+-------+-----------------------
newdb | sector | UTF8 | C | C |
postgres | postgres | UTF8 | C | C |
template0 | postgres | UTF8 | C | C | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | C | C | =c/postgres +
| | | | | postgres=CTc/postgres
(4 rows)
newdb=# \q
$ exit
cd /usr/ports/www/apache24 make install clean BATCH=yes mcedit /etc/rc.conf apache24_enable="YES"
Исправим конфигурационный файл что бы запустился:
mcedit /usr/local/etc/apache24/httpd.conf ServerName 127.0.0.1:80
Запустим:
/usr/local/etc/rc.d/apache24 start
cd /usr/ports/lang/php72 make install clean BATCH=yes
Установим расширения для php:
cd /usr/ports/lang/php72-extensions/ make config bz2 calendar CURL GD GETTEXT MBSTRING PDF PDO_PGSQL PGSQL PSPELL SQLITE3 - снял XMLRPC XSL ZIP ZLIB остальное по умолчанию # make install clean BATCH=yes
Установим мод php:
cd /usr/ports/www/mod_php72 make install clean BATCH=yes
Скопируем php.ini:
cd /usr/local/etc/ cp php.ini-production php.ini
mcedit /usr/local/etc/apache24/httpd.conf раскомментировать - mod_rewrite в httpd.conf <IfModule dir_module> DirectoryIndex index.php index.html </IfModule> <FilesMatch "\.php$"> SetHandler application/x-httpd-php </FilesMatch> <FilesMatch "\.phps$"> SetHandler application/x-httpd-php-source </FilesMatch>
Перезапустим:
/usr/local/etc/rc.d/apache24 restart
# cd /usr/ports/databases/phppgadmin/ # make install clean
Пропишем Alias и перезагрузим Apache:
mcedit /usr/local/etc/apache24/httpd.conf
Alias /phpPgAdmin "/usr/local/www/phpPgAdmin/"
<Directory "/usr/local/www/phpPgAdmin/">
AllowOverride None
Options None
Require all granted
</Directory>
/usr/local/etc/rc.d/apache24 restart
# cd /usr/ports/sysutils/bareos-server/ # make install clean
Выбрал все кроме MTX (Ленточный носитель).
При установке сервера он тянет за собой клиента, там оставил все по умолчанию.
Установим web- интерфейс:
cd /usr/ports/www/bareos-webui make install clean
скопируем Alias для Apache:
# cat /usr/local/etc/bareos-webui/apache-bareos-webui.conf
И вставим его в httpd.conf, а так же исправим пути в Alias на /usr/local/www:
# mcedit /usr/local/etc/apache24/httpd.conf
меняем права:
chown -R www:www /usr/local/etc/bareos-webui chown -R www:www /usr/local/www/bareos-webui chown -R bareos:bareos /usr/local/etc/bareos find /usr/local/etc/bareos -type f -exec chmod 640 {} ';' find /usr/local/etc/bareos -type d -exec chmod 750 {} ';'
Сделаем копию папки на всякий случай:
cp -a /usr/local/etc/bareos /usr/local/etc/bareos.bck
mcedit /etc/rc.conf bareos_dir_enable="YES" bareos_fd_enable="YES" bareos_sd_enable="YES"
Добавим пользователя bareos в группы pgsql и www:
pw groupmod bareos -m pgsql id pgsql pw groupmod bareos -m www id www
Выполним скрипты для создания пользователя, базы и таблиц:
su pgsql /usr/local/lib/bareos/scripts/create_bareos_database /usr/local/lib/bareos/scripts/make_bareos_tables /usr/local/lib/bareos/scripts/grant_bareos_privileges
Зайдем в PhpPgAdmin и изменим пароль для пользователя Bareos. Можно и через консоль.
Пропишем имя пользователя БД и пароль в конфиг bareos:
mcedit /usr/local/etc/bareos/bareos-dir.d/catalog/MyCatalog.conf
Catalog {
Name = MyCatalog
dbdriver = "postgresql"
#dbdriver = "XXX_REPLACE_WITH_DATABASE_DRIVER_XXX"
dbname = "bareos"
dbuser = "bareos"
dbpassword = "bareos"
}
Перезапустим демоны Bareos:
# /usr/local/etc/rc.d/bareos-dir restart # /usr/local/etc/rc.d/bareos-fd restart # /usr/local/etc/rc.d/bareos-sd restart
Создадим профиль для доступа через web:
cp /usr/local/etc/bareos-webui/bareos-dir.d/profile/webui-admin.conf /usr/local/etc/bareos/bareos-dir.d/profile/
Создадим конфигурационный файл admin.conf и наполним его следующим содержимым:
touch /usr/local/etc/bareos/bareos-dir.d/console/admin.conf
cat /usr/local/etc/bareos/bareos-dir.d/console/admin.conf
Console {
Name = admin
Password = ADMIN-PASSWORD
Profile = webui-admin
}
По секциям, копируем из первого конфига пароль и вставляем в остальные:
-------BAREOS-DIR-PASSWORD ---------------------- cat /usr/local/etc/bareos/bconsole.d/bconsole.conf mcedit /usr/local/etc/bareos/bareos-dir.d/director/bareos-dir.conf ------------------------------------------------- -------BAREOS-SD-PASSWORD------------------------ cat /usr/local/etc/bareos/bareos-dir.d/storage/File.conf - <написать вместо "localhost" ip адрес сервера mcedit /usr/local/etc/bareos/bareos-sd.d/director/bareos-mon.conf mcedit /usr/local/etc/bareos/bareos-sd.d/director/bareos-dir.conf ------------------------------------------------- -------BAREOS-FD-PASSWORD------------------------ cat /usr/local/etc/bareos/bareos-dir.d/client/bareos-fd.conf mcedit /usr/local/etc/bareos/bareos-fd.d/director/bareos-dir.conf ------------------------------------------------- -------BAREOS-MON-PASSWORD----------------------- cat /usr/local/etc/bareos/bareos-dir.d/console/bareos-mon.conf mcedit /usr/local/etc/bareos/bareos-fd.d/director/bareos-mon.conf -------------------------------------------------
Зайдем в веб интерфейс http://ip компа/bareos-webui
там уже будет один клиент, т.е. сам сервер и задания по резервному копированию конфигурационных файлов, выполните любое, чтобы убедится, что все в порядке, если все прошло успешно, то приступаем к установке клиента.
Имя моего компа - desktop-vrt4qkq
версия клиента 17.2 не работает под Windows 10.
Скачиваем свежий, если у вас сервер 17.2 и не используется TLS, а клиент 18.2, то TLS нужно отключить, в 18-й версии он включен по умолчанию.
http://download.bareos.org/bareos/release/17.2/windows/ http://download.bareos.org/bareos/release/18.2/windows/
Step 4. Скопировать секцию клиент. она нам пригодится.
В клиенте 18.2 по умолчанию включено шифрование.
В данной инструкции мы не рассматриваем этот вариант, поэтому отключим его.
после установки:
C:\ProgramData\Bareos\bareos-fd.d\director\bareos-dir.conf
Director {
...
TlsEnable = no
TlsRequire = no
...
}
Далее перезапустите службы или комп
С клиентом windows покончили
вернемся в серверную часть:
cd /usr/local/etc/bareos/bareos-dir.d/client touch desktop-vrt4qkq-fd.conf
Вставим секцию Client из того что нам сгенерировало приложение под Windows:
mcedit desktop-vrt4qkq-fd.conf
Client {
Name = desktop-vrt4qkq-fd
Address = 192.168.88.242
Password = "ek/X5veq4LiO6w0JGoXpVF2Hb2zeGK29lUd81Cdrgy6h"
# uncomment the following if using bacula
# Catalog = "MyCatalog"
}
Продолжим добавление клиента:
cd /usr/local/etc/bareos/bareos-dir.d/job
cp backup-bareos-fd.conf desktop-vrt4qkq.conf
root@bareos:/usr/local/etc/bareos/bareos-dir.d/job # cat desktop-vrt4qkq.conf
Job {
Name = "desktop-vrt4qkq"
JobDefs = "desktop-vrt4qkqJob"
Client = "desktop-vrt4qkq-fd"
}
cd /usr/local/etc/bareos/bareos-dir.d/jobdefs
cp DefaultJob.conf desktop-vrt4qkqJob.conf
cat desktop-vrt4qkqJob.conf
JobDefs {
Name = "desktop-vrt4qkqJob"
Type = Backup
Level = Incremental
Client = desktop-vrt4qkq-fd
FileSet = "Workstation" # selftest fileset (#13)
Schedule = "WeeklyCycle"
Storage = File
Messages = Standard
Pool = Incremental
Priority = 10
Write Bootstrap = "/var/db/bareos/%c.bsr"
Full Backup Pool = Full # write Full Backups into "Full" Pool (#05)
Differential Backup Pool = Differential # write Diff Backups into "Differential" Pool (#08)
Incremental Backup Pool = Incremental # write Incr Backups into "Incremental" Pool (#11)
}
cd /usr/local/etc/bareos/bareos-dir.d/fileset
cp WindowsAllDrives.conf Workstation.conf
cat Workstation.conf
FileSet {
Name = "Workstation"
Enable VSS = yes
Include {
Options {
Signature = MD5
Drive Type = fixed
IgnoreCase = yes
WildFile = "[A-Z]:/pagefile.sys"
WildDir = "[A-Z]:/RECYCLER"
WildDir = "[A-Z]:/$RECYCLE.BIN"
WildDir = "[A-Z]:/System Volume Information"
Exclude = yes
}
File = "c:/totalcmd" - тестовая директория.
}
}
Отключим поддержку TLS
mcedit /usr/local/etc/bareos/bareos-dir.d/client/bareos-fd.conf
Client {
...
TlsEnable = no
TlsRequire = no
...
}
Перезапустим все это дело:
# /usr/local/etc/rc.d/bareos-dir restart # /usr/local/etc/rc.d/bareos-fd restart # /usr/local/etc/rc.d/bareos-sd restart
Вход в консоль - bconsole -c /usr/local/etc/bareos/bconsole.d/bconsole.conf
конфиг bareos в windows лежит в %ProgramData%\Bareos