Добро пожаловать читатель. Я автор блога Олло Александр aka ekzorchik начинаю серию пошаговых руководств целью которых — это пошаговая установка и эксплуатация инструмента под именем FOG
. Данный инструмент содержит в себе Web
-интерфейс по управлению клонированием, разворачиванием образов на различные системы: Windows (7,10,Server2008R2/Server2012R2/Server2016) & Ubuntu (16.04/18.04)
и т. д. Но я перечислил лишь те с которым я работаю и они наиболее популярны. По сути пакет FOG
— это бесплатный аналог всеми известному Acronis
, но для любителей бесплатности и контролю что делается и как.
Применение:
- В домашней локальной сети если Вы системный администратор на фрилансе дабы обкатывать различные системы на железе.
- В обслуживаемой локальной сети если Вы системный администратор и Вам нужно разворачивать системы на купленные/переустанавливать/снимать образа.
И т.д.
На железо или виртуальную составляющую (QEMU+KVM,Virtualbox
) установлен дистрибутив: ubuntu-18.04.1-server-amd64.iso
Необходимые требования перед инсталляцией:
- В Вашей локальной сети должен быть Шлюз (у меня
Mikrotik: 2011UiAS-2HnD version: 6.43.8
) или интернет центр (Zyxel Keenetic Giga 2
) - Наличие интернета
- И желание
- Навыки работы с консолью
Моя сеть: 172.33.33.0/24
FOG сервис: 172.33.33.25
Рабочая система, у меня это 172.33.33.16
с осью Ubuntu 18.04 Desktop amd64
на ноутбуке Lenovo E555
Шлюз: 172.33.33.1
На заметку: Дабы все у Вас получилось, то повторяйте шаг за шагом.
Шаг №1: На роутере нужно прописать опции необходимые для работы сервиса FOG
, для этого подключаюсь к своему роутеру по SSH
и дополняю настройки своего DHCP
-сервиса. В Вашем случае вы уже сами должны уметь прописывать записи.
ekzorchik@navy:~$ ssh -l ekzorchik 172.33.33.1
[ekzorchik@ekzorchik] > ip dhcp-server network set 0 next-server=172.33.33.25 boot-file-name=undionly.kpxe
[ekzorchik@ekzorchik] > ip dhcp-server network print where boot-file-name=undionly.kpxe
Flags: D - dynamic
# ADDRESS GATEWAY DNS-SERVER WINS-SERVER DOMAIN
0 172.33.33.0/24 172.33.33.1
[ekzorchik@ekzorchik] > quit
Connection to 172.33.33.1 closed.
ekzorchik@navy:~$
Шаг №2: Обновляю систему (Ubuntu 18.04 Server amd64
) до самого последнего состояния в рамках релиза с долговременной поддержкой (т. е. LTS
):
ekzorchik@srv-bionic:~$ sudo nano /etc/update-manager/release-upgrades
[DEFAULT]
Prompt=never
ekzorchik@srv-bionic:~$ sudo rm -Rf /var/lib/apt/lists/
ekzorchik@srv-bionic:~$ sudo apt-get update && sudo apt-get upgrade -y
ekzorchik@srv-bionic:~$ sudo apt-get install software-properties-common -y
Шаг №3: Скачиваю пакет FOG
самый последний (на момент написания данного руководства):
ekzorchik@srv-bionic:~$ wget https://github.com/FOGProject/fogproject/archive/1.5.5.tar.gz
Шаг №4: Распаковываю скачанный пакет FOG
и устанавливаю в систему:
ekzorchik@srv-bionic:~$ tar zxf 1.5.5.tar.gz
ekzorchik@srv-bionic:~$ sudo mv fogproject-1.5.5/ /opt/fog
ekzorchik@srv-bionic:~$ cd /opt/fog/bin
ekzorchik@srv-bionic:/opt/fog/bin$ sudo ./installfog.sh
Version: 1.5.5 Installer/Updater
What version of Linux would you like to run the installation for?
1) Redhat Based Linux (Redhat, CentOS, Mageia)
2) Debian Based Linux (Debian, Ubuntu, Kubuntu, Edubuntu)
3) Arch Linux
Choice: [2]
Вариант определения текущего дистрибутива меня устраивается и нажимаю клавишу «Enter»
*** Detected a potential need to reinstall apache and php files.
*** This will remove the /etc/php* and /etc/apache2* directories
*** and remove/purge the apache and php files from this system.
*** If you're okay with this please type Y, anything else will
*** continue the installation, but may mean you will need to
*** remove the files later and make proper changes as
*** necessary. (Y/N):
Нажимаю клавишу «Y»
FOG Server installation modes:
* Normal Server: (Choice N)
This is the typical installation type and
will install all FOG components for you on this
machine. Pick this option if you are unsure what to pick.
* Storage Node: (Choice S)
This install mode will only install the software required
to make this server act as a node in a storage group
What type of installation would you like to do? [N/s (Normal/Storage)]
Нажимаю клавишу «N»
What is the IP address to be used by this FOG Server? [172.33.33.25]
Нажимаю клавишу «Enter»
Would you like to change the default network interface from enp0s3?
If you are not sure, select No. [y/N]
Нажимаю клавишу «N»
Would you like to setup a router address for the DHCP server? [Y/n]
Нажимаю клавишу «n»
Would you like DHCP to handle DNS? [Y/n]
Нажимаю клавишу «n»
Would you like to use the FOG server for DHCP service? [y/N]
Нажимаю клавишу «N»
This version of FOG has internationalization support, would
you like to install the additional language packs? [y/N]
Нажимаю клавишу «N»
* Are you sure you wish to continue (Y/N)
Нажимаю клавишу «Y»
На заметку: Если у Вас не проходит инсталляция, то мой Вам совет смотрите логи:
ekzorchik@srv-bionic:/opt/fog/bin$ tail -f error_logs/fog_error_1.5.5.log
Мне помогло найти ошибку почему я получал вот такую вот отбивку:
* Adding needed repository....................................Failed!
В логах значилось:
../lib/common/functions.sh: line 539: add-apt-repository: command not found
и начинается процесс добавления репозитария, установки пакетов, настройки.
На заметку: следующие пакеты устанавливает инсталлятор — это чтобы знать, для справки.
apache2 bc build-essential cpp curl g++ gawk gcc genisoimage gzip htmldoc isolinux lftp libapache2-mod-php7.1 libc6 libcurl3 liblzma-dev m4 mysql-client mysql-server net-tools nfs-kernel-server openssh-server php7.1 php7.1-bcmath php7.1-cli php7.1-curl php7.1-fpm php7.1-gd php7.1-json php7.1-ldap php7.1-mbstring php7.1-mysql php7.1-mysqlnd php-gettext sysv-rc-conf tar tftpd-hpa tftp-hpa unzip vsftpd wget xinetd zlib1g
Если Вы не хотите использовать пустой пароль на MySQL
то мастер предложит, либо продолжить установку, либо задать его — я выбираю второй вариант:
* Is the MySQL password blank? (Y/n)
n
* Enter the MySQL password:
712mbddr@ (Это мой тестовый пароль, Вы же задаете свой)
* Re-enter the MySQL password:
712mbddr@ (Это мой тестовый пароль, Вы же задаете свой)
* You still need to install/update your database schema.
* This can be done by opening a web browser and going to:
http://172.33.33.25/fog/management
* Press [Enter] key when database is updated/installed
. Нажимаю клавишу «Enter»
* Setup complete
You can now login to the FOG Management Portal using
the information listed below. The login information
is only if this is the first install.
This can be done by opening a web browser and going to:
http://172.33.33.25/fog/management
Default User Information
- Username: fog
- Password: password
Отлично, вот что значит инсталляционный скрипт экономящий время от разработчиков продукта FOG
.
Отобразить какие сайты автоматический установщик сделал:
ekzorchik@srv-bionic:~$ sudo a2ensite
Your choices are: 000-default 001-fog default-ssl
Which site(s) do you want to enable (wildcards ok)?
Или
ekzorchik@srv-xenial:~$ apache2ctl -S | grep fog
*:80 172.33.33.25 (/etc/apache2/sites-enabled/001-fog.conf:1)
ekzorchik@srv-bionic:~$ cat /etc/apache2/sites-available/001-fog.conf
<VirtualHost *:80>
<FilesMatch "\.php$">
SetHandler "proxy:fcgi://127.0.0.1:9000/"
</FilesMatch>
KeepAlive Off
ServerName 172.33.33.25
DocumentRoot /var/www/
<Directory /var/www/fog/>
DirectoryIndex index.php index.html index.htm
</Directory>
RewriteEngine On
RewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK)
RewriteRule .* - [F]
RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f
RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-d
RewriteRule ^/fog/(.*)$ /fog/api/index.php [QSA,L]
</VirtualHost>
Обращаюсь через браузер Mozilla Firefox
к данному URL
адресу со своей рабочей системы: http://172.33.33.25/fog/management
, первое что меня встречает это указание от Мастера, что для завершения процесса нужно нажать на кнопку «Install/Update Now
» это действие установит в систему базу mysql
под именем fog
.
Нажимаю Intsall/Update Now
, затем щелкаю левой кнопкой мыши по гиперссылке (http://172.33.33.25/fog/management/index.php
) с надписью «here
»
и вот только теперь база появилась:
ekzorchik@srv-bionic:~$ sudo mysql -u root -p712mbddr@ -e "show databases like 'fog'"
mysql: [Warning] Using a password on the command line interface can be insecure.
+----------------+
| Database (fog) |
+----------------+
| fog |
+----------------+
Авторизуюсь в Web-интерфейсе по ссылке выше которой перебросило Вас на следующий шаг:
- Username: указываю дефолтный логин → fog
- Password: указываю дефолтный пароль от логина → password
- Language: English (т. к. я не устанавливал дополнительные языки, учитесь использовать мировой язык, сильно облегчит Вам жизнь в случае поиска каких-либо ошибок)
и нажимаю кнопку «Login»
и вот она Web-панель администрирования
Для последующего использования создаю свою учетную запись, дефолтную использовать не буду и изменю ей пароль, дабы шаловливые ручки пользователей в локальной сети не порушили мою систему:
Users — Create New User (Когда наводите указатель мыши на верхние элементы кнопок появляется подсказка о именовании их) и заполняю поля:
User Name: ekzorchik
Friendly Name: ekzorchik
User Password: 712mbddr@
User Password (confirm): 712mbddr@
Create user?
Нажимаю кнопку «Create
»
После уже работа с данным инструментом может вестить как под дефолтной учетной записью или под ново созданной (права доступа одинаковые, хотя тут нет вообще установки прав доступа, просто добавление пользователей системы).
Итак процедура инсталляции Web-панели F.O.G успешно завершена на Ubuntu 18.04 Server amd64.
На этом я прощаюсь, в дальнейшем буду заметки, как использовать данный инструмент на благо системного администрирования, с уважением автор блога Олло Александр aka ekzorchik.