Installation & déploiement
Требования
- Сервер Debian 10, 11 или 12 / Ubuntu 18.04 или 20.04
- PHP 7.4+ с расширениями: mysqli, curl, json, mbstring, xml, ssh2
- MariaDB 10.3+ или MySQL 5.7+ (для внутренней базы PmaControl)
- Apache2 или Nginx с mod_rewrite
- Git, nmap (опционально для автообнаружения)
- Graphviz (для генерации топологии Dot3)
Быстрая установка
# Cloner le dépôt
git clone https://github.com/PmaControl/PmaControl.git /srv/www/pmacontrol
# Créer la base de données
mysql -e "CREATE DATABASE pmacontrol CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;"
mysql -e "CREATE USER 'pmacontrol'@'localhost' IDENTIFIED BY 'votre_mot_de_passe';"
mysql -e "GRANT ALL ON pmacontrol.* TO 'pmacontrol'@'localhost';"
# Configurer la connexion
cp /srv/www/pmacontrol/configuration/db.config.ini.php.example /srv/www/pmacontrol/configuration/db.config.ini.php
# Éditez le fichier avec vos identifiants
# Lancer le wizard d'installation
php /srv/www/pmacontrol/glial install init
Мастер
Install::init() создаёт все необходимые таблицы, настраивает параметры по умолчанию и разворачивает полную SQL-схему (162 таблицы).Настройка базы данных
Файл configuration/db.config.ini.php содержит параметры подключения:
[pmacontrol]
driver=mysql
hostname=127.0.0.1
port=3306
user=pmacontrol
password=votre_mot_de_passe
database=pmacontrol
ssl=0
timeout=1
Для пересоздания этого файла:
php /srv/www/pmacontrol/glial mysql refreshConfig Развёртывание SSH-ключей
PmaControl использует SSH-ключи ED25519 для подключения к удалённым серверам (сбор данных о железе, дисковом пространстве и т. д.).
# Générer une clef SSH
php /srv/www/pmacontrol/glial deployRsaKey generate
# Déployer sur un serveur
php /srv/www/pmacontrol/glial deployRsaKey deploy [id_serveur]
# Tester la connexion
php /srv/www/pmacontrol/glial deployRsaKey test [id_serveur]
SSH-ключи хранятся в таблице
ssh_key. Тип ED25519 рекомендуется за его безопасность и компактность.Обновление
# Mettre à jour le code
cd /srv/www/pmacontrol && git pull
# Appliquer les patches SQL
php /srv/www/pmacontrol/glial upgrade needUpgrade
php /srv/www/pmacontrol/glial upgrade executePatch
Система обновления (Upgrade.php) автоматически определяет SQL-патчи для применения, сравнивая текущую версию с доступными патчами в sql/patch/.
Настройка Apache
<VirtualHost *:80>
ServerName pmacontrol.votre-domaine.com
DocumentRoot /srv/www/pmacontrol/App/Webroot
<Directory /srv/www/pmacontrol/App/Webroot>
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/pmacontrol_error.log
CustomLog ${APACHE_LOG_DIR}/pmacontrol_access.log combined
</VirtualHost>
Включите mod_rewrite: a2enmod rewrite && systemctl restart apache2