recent
أخبار ساخنة

شرح تثبيت Bacula Backup Server على Ubuntu ... بالخطوات

الصفحة الرئيسية

 

شرح تثبيت Bacula Backup Server على Ubuntu ... بالخطوات

Bacula هي أداة نسخ احتياطي مفتوحة المصدر (open-source) يمكن استخدامها للنسخ الاحتياطي واستعادة البيانات عبر الشبكة.

إنها أداة بسيطة وسهلة الاستخدام وتوفر العديد من ميزات إدارة التخزين المتقدمة التي تساعدك على النسخ الاحتياطي واستعادة الملفات المفقودة بسهولة.

يدعم Linux و Windows و macOS ويدعم أيضًا مجموعة واسعة من أجهزة النسخ الاحتياطي.

يتكون Bacula من عدة مكونات بما في ذلك Bacula directory وBacula console وBacula storage وBacula file وBacula catalog.

 كل مكون مسؤول عن إدارة وظائف محددة.

سنشرح هنا تثبيت وإعداد نظام النسخ الاحتياطي على Ubuntu 20.04.

المتطلبات الأساسية


ذاكرة وصول عشوائي لا تقل عن 2 جيجابايت.

إعداد كلمة مرور الـ root للخادم.


قم بتحديث نظامك إلى أحدث إصدار. 

يمكنك تحديثه بالأمر التالي:


apt-get update -y


تثبيت Bacula


تتوفر حزمة Bacula في Ubuntu 20.04 بشكل تلقائي.

يمكنك تثبيته باستخدام الأمر التالي:


apt-get install bacula -y


سيُطلب منك تحديد خادم البريد:





حدد خادم البريد الذي تريده وانقر على زر ok.

سيُطلب منك تقديم اسم بريد النظام الخاص بك كما هو موضح أدناه:




أدخل اسم البريد الإلكتروني للنظام الخاص بك وانقر على زر ok.

سيُطلب منك تكوين قاعدة بيانات لـ bacula:





انقر فوق الزر Yes.

سيُطلب منك تحديد مضيف خادم PostgreSQL كما هو موضح أدناه:




حدد المضيف المحلي (localhost) وانقر على زر Ok

سيُطلب منك تقديم كلمة مرور PostgreSQL:



أدخل كلمة المرور التي تريدها وانقر فوق الزر Ok  لمتابعة التثبيت.


إعداد Bacula Storage


قم بإنشاء مجلد لتخزين ملفات النسخ الاحتياطي. 

يمكنك إنشائه بالأمر التالي:


mkdir /backup


قم بتغيير ملكية مجلد bacula إلى مستخدم bacula والمجموعة باستخدام الأمر التالي:


chown -R bacula:bacula /backup


قم بتعديل الملف الافتراضي لتخزين bacula وتحديد الجهاز وموقع التخزين.


nano /etc/bacula/bacula-sd.conf


قم بإزالة جزء "Device {" و "Autochanger {" أو التعليق عليه وإضافة الأسطر التالية:


Device {

Name = Local-device

Media Type = File

Archive Device = /backup

LabelMedia = yes; # lets Bacula label unlabeled media

Random Access = Yes;

AutomaticMount = yes; # when device opened, read it

RemovableMedia = no;

AlwaysOpen = no;

Maximum Concurrent Jobs = 5

}


احفظ وأغلق الملف عند الانتهاء.

أعد تشغيل خدمة Bacula storage باستخدام الأمر التالي:


systemctl restart bacula-sd.service


تحقق من حالة Bacula storage بالأمر التالي:


systemctl status bacula-sd


ستحصل على النتيجة التالية:


? bacula-sd.service - Bacula Storage Daemon service

     Loaded: loaded (/lib/systemd/system/bacula-sd.service; enabled; vendor preset: enabled)

     Active: active (running) since Tue 2020-10-06 09:32:43 UTC; 8s ago

       Docs: man:bacula-sd(8)

    Process: 10687 ExecStartPre=/usr/sbin/bacula-sd -t -c $CONFIG (code=exited, status=0/SUCCESS)

   Main PID: 10688 (bacula-sd)

      Tasks: 2 (limit: 4691)

     Memory: 1.0M

     CGroup: /system.slice/bacula-sd.service

             ??10688 /usr/sbin/bacula-sd -fP -c /etc/bacula/bacula-sd.conf

Oct 06 09:32:43 ubuntu2004 systemd[1]: Starting Bacula Storage Daemon service...

Oct 06 09:32:43 ubuntu2004 systemd[1]: Started Bacula Storage Daemon service.


إعداد Bacula Director


قم بتعديل ملف إعداد Bacula director وادخل موقع التخزين الخاص بك:


nano /etc/bacula/bacula-dir.conf


أضف الأسطر التالية.


Storage {

Name = ubuntu2004-sd  # Must be equal to the "Name" parameter of the "Storage" section in the /etc/bacula/bacula-sd.conf file

Address = 127.0.0.1

Password = "aFEH-0a3QycsbYQVcoy_VoUMhAHJQ00CD" # Password must match the password in the /etc/bacula/bacula-sd.conf

Device = Local-device

Media Type = File

}

FileSet {

Name = "Local-file"

Include {

Options {

signature = MD5

}

File = /etc 

}

}

Schedule {

Name = "LocalDaily"

Run = Full daily at 06:00

}

Job {

Name = "LocalBackup"

JobDefs = "DefaultJob"

Enabled = yes

Level = Full

FileSet = "Local-file"

Schedule = "LocalDaily"

Storage = ubuntu2004-sd

Write Bootstrap = "/var/lib/bacula/LocalhostBackup.bsr"

}


احفظ وأغلق الملف.

أعد تشغيل خدمة Bacula director لتطبيق التغييرات:


systemctl restart bacula-dir


تحقق من حالة خدمة Bacula director بالأمر التالي:


systemctl status bacula-dir


ستحصل على النتيجة التالية:


? bacula-director.service - Bacula Director Daemon service

     Loaded: loaded (/lib/systemd/system/bacula-director.service; enabled; vendor preset: enabled)

     Active: active (running) since Tue 2020-10-06 09:32:43 UTC; 9s ago

       Docs: man:bacula-dir(8)

    Process: 10667 ExecStartPre=/usr/sbin/bacula-dir -t -c $CONFIG (code=exited, status=0/SUCCESS)

   Main PID: 10683 (bacula-dir)

      Tasks: 3 (limit: 4691)

     Memory: 2.1M

     CGroup: /system.slice/bacula-director.service

             ??10683 /usr/sbin/bacula-dir -fP -c /etc/bacula/bacula-dir.conf

Oct 06 09:32:43 ubuntu2004 systemd[1]: Starting Bacula Director Daemon service...

Oct 06 09:32:43 ubuntu2004 systemd[1]: Started Bacula Director Daemon service.


التحقق من Backup Job


تم تثبيت Bacula وتهيئته للعمل يوميًا في الساعة 6:00.

الآن دعنا نستخدم Bacula Console لتشغيل أول مهمة نسخ احتياطي.


bconsole


بمجرد الاتصال ستحصل على النتيجة التالية:


Connecting to Director localhost:9101

1000 OK: 103 ubuntu2004-dir Version: 9.4.2 (04 February 2019)

Enter a period to cancel a command.


قم بتشغيل الأمر التالي لبدء backup job:


*run


سيُطلب منك تحديد backup job كما هو موضح أدناه:


Automatically selected Catalog: MyCatalog

Using Catalog "MyCatalog"

A job name must be specified.

The defined Job resources are:

     1: BackupClient1

     2: LocalBackup

     3: BackupCatalog

     4: RestoreFiles

Select Job resource (1-4): 2


اكتب 2 لتحديد LocalBackup الذي حددته في ملف الإعداد واضغط على Enter. سترى النتيجة التالية:


Run Backup job

JobName:  LocalBackup

Level:    Full

Client:   ubuntu2004-fd

FileSet:  Local-file

Pool:     File (From Job resource)

Storage:  ubuntu2004-sd (From Job resource)

When:     2020-10-06 09:50:47

Priority: 10

OK to run? (yes/mod/no): yes

Job queued. JobId=3

You have messages.

بدأت الـ backup job.

 يمكنك التحقق من حالةbackup job باستخدام الأمر التالي:



*status


سيُطلب منك تحديد حالة المكونات التالية:


Status available for:

     1: Director

     2: Storage

     3: Client

     4: Scheduled

     5: Network

     6: All

Select daemon type for status (1-6): 1


اكتب 1 واضغط على Enter للتحقق من حالة Director

سترى النتيجة التالية:


ubuntu2004-dir Version: 9.4.2 (04 February 2019) x86_64-pc-linux-gnu ubuntu 20.04

Daemon started 06-Oct-20 09:50, conf reloaded 06-Oct-2020 09:50:27

 Jobs: run=1, running=0 mode=0,0

 Heap: heap=274,432 smbytes=106,782 max_bytes=135,168 bufs=343 max_bufs=377

 Res: njobs=4 nclients=1 nstores=3 npools=3 ncats=1 nfsets=3 nscheds=3

Scheduled Jobs:

Level          Type     Pri  Scheduled          Job Name           Volume

===================================================================================

Full           Backup    10  07-Oct-20 06:00    LocalBackup        Vol-0001

====

Running Jobs:

Console connected at 06-Oct-20 09:50

No Jobs running.

====

Terminated Jobs:

 JobId  Level      Files    Bytes   Status   Finished        Name 

====================================================================

     1  Full       2,262    2.875 M  OK       06-Oct-20 09:50 LocalBackup

====


قم بتشغيل أمر الحالة مرة أخرى وتحقق من حالةBacula storage.


*status


سترى النتيجة التالية:


Status available for:

     1: Director

     2: Storage

     3: Client

     4: Scheduled

     5: Network

     6: All

Select daemon type for status (1-6): 2

The defined Storage resources are:

     1: File1

     2: ubuntu2004-sd

Select Storage resource (1-2): 1

Connecting to Storage daemon File1 at localhost:9103

ubuntu2004-sd Version: 9.4.2 (04 February 2019) x86_64-pc-linux-gnu ubuntu 20.04

Daemon started 06-Oct-20 09:50. Jobs: run=1, running=0.

 Heap: heap=106,496 smbytes=369,301 max_bytes=567,404 bufs=90 max_bufs=110

 Sizes: boffset_t=8 size_t=8 int32_t=4 int64_t=8 mode=0,0 newbsr=0

 Res: ndevices=1 nautochgr=0

Running Jobs:

No Jobs running.

====

Jobs waiting to reserve a drive:

====

Terminated Jobs:

 JobId  Level    Files      Bytes   Status   Finished        Name 

===================================================================

     3  Full      2,262    3.156 M  OK       06-Oct-20 09:50 LocalBackup

====

Device status:

Device File: "Local-device" (/backup) is not open.

   Available Space=93.95 GB

==

====

Used Volume status:

====

Attr spooling: 0 active jobs, 454,546 bytes; 1 total jobs, 454,546 max bytes.

====


اخرج من Bacula console باستخدام الأمر التالي:


*exit


تحقق من مجلد النسخ الاحتياطي باستخدام الأمر التالي:


ls /backup/


سترى أنه تم إنشاء نسخة احتياطية من المجلد 0001:


Vol-0001

google-playkhamsatmostaqltradent