آموزش نصب باکولا وب روی اوبونتو 24.04
۲۸ اسفند ۱۴۰۳
باکولا وب یک اپلیکیشن وب PHP است که راهی ساده برای مشاهده خلاصهها و نمودارهای مربوط به عملیات بکاپگیری انجامشده توسط باکولا فراهم میکند. اگرچه این ابزار امکان کنترل مستقیم باکولا را نمیدهد، اما بهعنوان یک گزینه گرافیکی جایگزین، برای مشاهده وضعیت عملیات از طریق کنسول عمل میکند. باکولا وب بهویژه برای کاربران تازهکار مفید است، زیرا گزارشهای آن کمک میکند تا بهراحتی متوجه شوید که باکولا چه عملیاتی انجام داده است.
در این آموزش، نحوه نصب باکولا وب روی یک سرور اوبونتو 24.04 که نرمافزار باکولا روی آن اجرا میشود را توضیح خواهیم داد.
پیشنیازها
برای دنبال کردن این آموزش، باید نرمافزار سرور بکاپگیری باکولا را روی یک سرور Ubuntu نصب کرده باشید. فرض بر این است که تنظیمات باکولاشما از MySQL برای مدیریت کاتالوگ استفاده میکند. اگر از یک سیستم مدیریت پایگاه داده رابطهای (RDBMS) دیگر، مانند PostgreSQL، استفاده میکنید، حتماً تنظیمات لازم را مطابق با این راهنما انجام دهید. همچنین، باید ماژولهای مناسب PHP را نصب کرده و اطلاعات مربوط به اتصال پایگاه داده را متناسب با سیستم خود تنظیم کنید.
در ادامه بخوانید:
- مرحله اول: نصب Nginx و PHP
- مرحله دوم: دانلود و پیکربندی باکولاوب
- مرحله سوم: کپی برنامه باکولاوب در دایرکتوری root
- مرحله چهارم: دسترسی به باکولا وب از طریق مرورگر
- جمعبندی

مرحله اول: نصب Nginx و PHP
همانطور که در ابتدا گفتیم باکولا یک برنامه PHP است، بنابراین باید PHP و یک وبسرور را نصب کنیم. در این راهنما از Nginx استفاده خواهیم کرد. برای نصب مقاله نحوه نصب Nginx در سرور مجازی اوبونتو Ubuntu را مطالعه کنید.
ابتدا لیست بستههای apt
را بروزرسانی کنید:
sudo apt update
سپس Nginx، PHP-fpm و برخی بستههای ضروری را طبق دستور زیر نصب کنید:
sudo apt install nginx apache2-utils php5-fpm php5-mysql php5-gd
اکنون آماده پیکربندی PHP و Nginx هستید.
پیکربندی PHP-FPM
برای اینکار، فایل پیکربندی PHP-FPM را در ویرایشگر مورد نظر خودتان باز کنید:
sudo vi /etc/php5/fpm/php.ini
در فایل، خط مربوط به cgi.fix_pathinfo
را پیدا کنید، کامنت آن را حذف کرده و مقدار آن را به 0
تغییر دهید.
به این شکل:
cgi.fix_pathinfo=0
حالا خط مربوط به تنظیم date.timezone
را پیدا کنید، کامنت آن را حذف کرده و مقدار آن را با منطقه زمانی خود جایگزین کنید.
مانند:
date.timezone = America/New_York
در آخر فایل را ذخیره کرده و آنرا ببندید.
اکنون که PHP-FPM به درستی پیکربندی کردید، حالا بیایید آن را ریاستارت کنیم تا تغییرات اعمال شوند:
sudo service php5-fpm restart
پیکربندی Nginx
حالا وقت آن است که Nginx را برای سرویسدهی به برنامههای PHP پیکربندی کنید.
ابتدا، چون نمیخواهیم افراد غیرمجاز به باکولا وب دسترسی پیدا کنند، بیایید یک فایل htpasswd
ایجاد کنیم. از دستور htpasswd
برای ایجاد یک کاربر مدیر به نامadmin (که بهتر است نام دیگری انتخاب کنید) استفاده کنید که بتواند به رابط باکولا وب دسترسی پیدا کند:
sudo htpasswd -c /etc/nginx/htpasswd.users admin
حالا یک رمز عبور را در محل خواسته شده وارد کنید. این نامکاربری و رمز عبور را به خاطر بسپارید، زیرا برای دسترسی به باکولا وب به آن نیاز خواهید داشت.
حالا فایل پیکربندی بلوک سرور پیشفرض Nginx را در ویرایشگر متن باز کنید. ما از ویرایشگر vi
استفاده میکنیم:
sudo vi /etc/nginx/sites-available/default
در کد زیر، محتوای فایل را با کد زیر جایگزین کنید. مطمئن شوید که مقدار مشخصشده برای server_name
را با دامنه یا آدرس IP
سرور خود جایگزین کنید:
server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
root /usr/share/nginx/html;
index index.php index.html index.htm;
server_name server_domain_name_or_IP;
auth_basic "Restricted Access";
auth_basic_user_file /etc/nginx/htpasswd.users;
location / {
try_files $uri $uri/ =404;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
سپس فایل را ذخیره کرده و خارج شوید. اکنون این پیکربندی، Nginx را برای سرویسدهی به برنامههای PHP تنظیم میکند و از فایل htpasswd
که قبلاً ایجاد کردیم، برای احراز هویت استفاده میکند.
در آخر، برای اعمال تغییرات، Nginx را ریاستارت کنید:
sudo service nginx restart
حالا، آماده دانلود باکولا وب هستید.
مرحله دوم: دانلود و پیکربندی باکولا وب
برای تغییر به دایرکتوری home و دانلود آخرین نسخه باکولا وب، مراحل زیر را دنبال کنید:
در حال حاضر، آخرین نسخه باکولا وب 9.7.0 است که در نوامبر 2024 منتشر شده است.
cd ~
wget --content-disposition http://www.bacula-web.org/download.html?file=files/bacula-web.org/downloads/bacula-web-9.7.0.tgz
بعد از دانلود باکولا وب، دایرکتوری جدید ایجاد کنید و فایلهای دانلود شده را در آن قرار دهید:
mkdir bacula-web
cd bacula-web
tar xvf ../bacula-web-*.tgz
قبل از کپی کردن فایلها به دایرکتوری root وب سرور، ابتدا باید تنظیمات لازم را انجام دهید:
برایاینکار، با دستور زیر به دایرکتوری پیکربندی بروید:
cd application/config
باکولا وب یک پیکربندی اولیه ارائه میدهد. آن را به این شکل کپی کنید:
cp config.php.sample config.php
حالا فایل پیکربندی را در ویرایشگر دلخواه ویرایش کنید:
vi config.php
همانطور که در کد زیر میبینید، بخش مربوط به // MySQL bacula catalog
را پیدا کنید و از حالت کامنت خارج کنید. همچنین، مقدار رمز عبور را با رمز عبور پایگاه داده باکولا خود (که در فایل /etc/bacula/bacula-dir.conf
در تنظیم dbpassword
وجود دارد) جایگزین کنید.
// MySQL bacula catalog
$config[0]['label'] = 'Backup Server';
$config[0]['host'] = 'localhost';
$config[0]['login'] = 'bacula';
$config[0]['password'] = 'bacula-db-pass';
$config[0]['db_name'] = 'bacula';
$config[0]['db_type'] = 'mysql';
$config[0]['db_port'] = '3306';
در آخر فایل را ذخیره کرده و خارج شوید.
اکنون پیکربندی باکولا وب را با موفقیت به اتمام رساندهاید. در مرحله بعد فایلهای برنامه باکولا وب را در مکان مناسبی قرار میدهید.
مرحله سوم: کپی برنامه باکولا وب در دایرکتوری root
در این آموزش، ما Nginx را طوری پیکربندی کردیم که از مسیر /usr/share/nginx/html
بهعنوان ریشه داکیومنت (اشاره به دایرکتوری اصلی وبسرور دارد) استفاده کند. حالا به این دایرکتوری بروید و فایل index.html
پیشفرض را با استفاده از دستورات زیر حذف کنید:
cd /usr/share/nginx/html
sudo rm index.html
حالا، باید فایلهای باکولا وب را به دایرکتوری فعلی خود که ریشه داکیومنت Nginx است، منتقل کنید.
به شکل زیر:
sudo mv ~/bacula-web/* .
در ادامه، برای تغییر مالکیت فایلها به کاربر www-data
که کاربر دیمون Nginx است، از دستور زیر استفاده کنید:
sudo chown -R www-data: *
اکنون، باکولا وب بصورت کامل نصب و پیکربندی شده است:)
در لیارا فقط با یک کلیک و در چند ثانیه، دیتابیس PostgreSQL تهیه کنید.
پشتیبانگیری ساعتی، روزانه، هفتگی و ماهانه
مرحله چهارم: دسترسی به باکولا وب از طریق مرورگر
باکولا وب حالا از طریق نام دامنه یا آدرس IP
عمومی سرور شما در دسترس است.
شاید بخواهید بررسی کنید که همه چیز به درستی پیکربندی شده باشد. خوشبختانه، یک صفحه آزمایشی برای باکولا وب ارائه شده است. برای دسترسی به آن، URL زیر را در مرورگر وب باز کنید (بخش مشخصشده را با اطلاعات سرور خود جایگزین کنید):
توجه داشته باشید که your-server-ip-or-domain
را با آدرس IP یا دامنه واقعی سرور خود جایگزین کنید.
http://server_public_IP/test.php
در خروجی وب خود، باید جدولی را ببینید که وضعیت اجزای مختلف Bacula-Web را نمایش میدهد. همه آنها باید وضعیت علامت تأیید سبز داشته باشند، به جز ماژولهای پایگاه دادهای که به آنها نیازی ندارید. به عنوان مثال، ما از MySQL استفاده میکنیم، بنابراین نیازی به ماژولهای پایگاه داده دیگر نداریم.

در آخر، اگر همه چیز به درستی نمایش داده شد، شما آماده استفاده از داشبورد هستید. برای دسترسی به آن، میتوانید روی متن Bacula-Web در بالای سمت چپ کلیک کنید یا آدرس سرور خود را در مرورگر وب وارد کنید:
http://server_public_IP/
در صفحه باید چیزی مانند تصویر زیر نمایش داده شود:

جمع بندی
تبریک! حالا میتوانید به راحتی از داشبورد Bacula-Web برای بررسی گزارشها و تحلیل عملکرد سیستم بکاپ خود بهرهبرداری کنید. این ابزار به شما کمک میکند تا بدون نیاز به خط فرمان، تمامی وظایف و وضعیتهای Bacula را به صورت گرافیکی مشاهده کنید.