قم بعمل نسخة احتياطية من دليل في Linux باستخدام برنامج Shell Script
هناك عدة خيارات لنسخ بياناتك احتياطيًا في Linux . يمكنك استخدام بعض البرامج المتاحة مجانًا ، مثل fwbackups و Sbackup . ومع ذلك ، هناك طريقة بسيطة لعمل نسخة احتياطية من دليل دون تثبيت أي برامج إضافية.
سننشئ برنامج نصي شل باستخدام المتغيرات ، والأمر tar والأمر date لإنشاء ملف نسخ احتياطي مؤرخ للدليل ، مع الدلائل الفرعية الخاصة به.
البرنامج النصي للقذيفة هو في الأساس ملف يحتوي على قائمة بالأوامر التي يتم تشغيلها بالتسلسل. إذا كانت لديك سلسلة من الأوامر تقوم بتشغيلها بانتظام بالترتيب ، فمن المفيد إنشاء نص برمجي يحتوي على هذه الأوامر. بعد ذلك ، ما عليك سوى تشغيل ملف البرنامج النصي لتشغيل الأوامر.
إنشاء ملف البرنامج النصي شل
في هذا المثال ، سنقوم بإنشاء برنامج نصي شل لعمل نسخة احتياطية من دليل يحتوي على ملفات من أجل دليل المستخدم. نحن نستخدم بيئة جنوم(Gnome) في أوبونتو(Ubuntu) .
أولاً ، قم بالوصول إلى الدليل الرئيسي الخاص بك ، عن طريق تحديد مجلد الصفحة الرئيسية(Home Folder) من قائمة الأماكن(Places) . يفتح متصفح الملفات(File Browser) على الدليل الرئيسي الخاص بك.
سننشئ ملفًا فارغًا جديدًا ندخل فيه أوامر إجراء النسخ الاحتياطي. انقر بزر الماوس الأيمن(Right-click) في الجزء الأيمن وحدد Create Document | Empty File من القائمة المنبثقة.
تمت إضافة ملف إلى القائمة ويكون جاهزًا لإعادة تسميته. اكتب(Type) اسمًا للملف ، مع إعطاء الملف امتدادًا لـ .sh .
في هذا المثال ، قمنا بتسمية ملفنا user_guide_backups.sh(user_guide_backups.sh) .
الآن نحن بحاجة إلى إضافة الأوامر إلى الملف. انقر بزر الماوس الأيمن على اسم الملف وحدد فتح باستخدام gedit(Open with gedit) من القائمة المنبثقة.
يفتح الملف في gedit . أدخل الأسطر التالية في الملف وانقر فوق حفظ(Save) . الغرض من كل سطر مدرج أدناه.
ملاحظة:(NOTE:) يمكنك أيضًا نسخ النص التالي ولصقه في gedit . تأكد من تغيير <username> إلى اسم المستخدم الخاص بك.
#!/bin/bash SRCDIR="/home/<username>/Documents/my_work/" DESTDIR="/home/<username>/Backups/" FILENAME=ug-$(date +%-Y%-m%-d)-$(date +%-T).tgz tar – create – gzip – file=$DESTDIR$FILENAME $SRCDIR
وصف سطر بسطر
يصف الجدول التالي ماهية كل سطر في ملف البرنامج النصي shell.
Line # | Description | ||||||
1 | This line must be the first line in a bash shell script, which is the default type of script. | ||||||
2 | This line sets up a variable called SRCDIR and sets the value of it to the directory to be backed up. NOTE: Be sure to replace <username> with your username. |
||||||
3 | This line sets up a variable called DESTDIR and sets the value of it to the directory into which the backup file will be written. NOTE: Be sure to replace <username> with your username. |
||||||
4 | This line sets up a variable called FILENAME and sets the value using text and variables containing the date command to add the current date and time to the filename. For example, the filename might be ug-20100212-13:03:45.tgz. NOTE: When using a variable, always start it with the dollar sign ($). If you use a command as part of a variable, enclose the command and the options for the command in parentheses. |
||||||
5 | This line is the tar command with the following function and options added.
|
تحرير الأذونات(Permissions) في ملف البرنامج النصي شل(Shell Script File)
قبل تشغيل البرنامج النصي ، تحتاج إلى التأكد من أن الملف لديه الأذونات الصحيحة. للقيام بذلك ، افتح Home Folder مرة أخرى كما هو مذكور أعلاه وانقر بزر الماوس الأيمن على ملف البرنامج النصي shell. حدد خصائص(Properties) من القائمة المنبثقة.
يظهر مربع الحوار " خصائص ". (Properties)تأكد(Make) من تحديد خانة الاختيار التنفيذ .(Execute)
انقر فوق إغلاق(Close) .
تشغيل البرنامج النصي شل
لتشغيل البرنامج النصي shell ، افتح نافذة طرفية عن طريق تحديد البرامج Accessories | Terminal من قائمة التطبيقات(Applications) .
عندما تفتح نافذة Terminal ، يجب أن تكون في المجلد الرئيسي(Home Folder) بشكل افتراضي. تؤكد كتابة pwd في سطر الأوامر والضغط على Enter هذه الحقيقة. في موجه الأوامر ، اكتب ./user_guide_backups.sh واضغط على Enter .
يجب أن يكون لديك ملف .tgz في مجلد النسخ الاحتياطية(Backups) في المجلد(Home Folder) الرئيسي . إذا نقرت بزر الماوس الأيمن على اسم الملف ، فسترى عدة خيارات لفتح الأرشيف في أحد برامج الأرشفة المتاحة ، أو استخراج الملفات مباشرة إلى مجلد النسخ الاحتياطية باستخدام الأمر (Backups)Extract Here .
معلومات اكثر
توفر الروابط أدناه مزيدًا من المعلومات حول برامج shell النصية وأوامر tar والتاريخ وأوامر (date)Linux الأخرى .
البرمجة
دليل سريع لكتابة البرامج النصية باستخدام غلاف bash(A quick guide to writing scripts using the bash shell)
Bash Shell Scripting – 10 Seconds Guide | All about Linux
دليل مرجعي باش(Bash Reference Manual)
أوامر لينكس
صفحة tar MAN(tar MAN Page)
تاريخ صفحة MAN(date MAN Page)
أوامر bash - صفحات Linux MAN(bash commands – Linux MAN Pages)
سيساعدك استكشاف هذه الصفحات على إنشاء سكربتات bash shell مفيدة خاصة بك.
Related posts
كيفية التنقل واستخدام بنية دليل Linux
Linux FIND Command مع أمثلة
5 أسباب كبيرة للتخلي عن نظام التشغيل Windows لنظام التشغيل Linux
HDG يوضح: ما هو نظام UNIX؟
9 أفضل توزيعات Linux للقرصنة
كيفية تثبيت وتشغيل تطبيقات Linux على جهاز Chromebook
الأسباب الشائعة لأعطال Ubuntu وكيفية التعافي
أفضل 5 توزيعات لينكس يجب أن تستخدمها
قم بإنشاء خادم بث الفيديو المباشر الخاص بك باستخدام Linux
قم بإنشاء توزيعة Live Linux مخصصة مع Linux Live Kit
كيفية إنشاء قسم على قرص Linux
5 طرق لأتمتة النسخ الاحتياطي للملفات في Linux
9 أشياء مفيدة يمكن أن يفعلها Linux ولا يستطيع Windows القيام بها
أذونات ملف Linux - ما هو Chmod 777 وكيفية استخدامه
ابحث عن اسم المضيف الخاص بك وقم بتغييره في أوبونتو
أضف اختصارات إلى قائمة سياق النقر بزر الماوس الأيمن في أوبونتو
أفضل 10 مسجلات شاشة لنظام التشغيل Linux
كيفية تثبيت وإعداد Kali Linux
10 اختصارات لوحة مفاتيح Ubuntu لتسريع سير عملك
أفضل 7 برامج مجانية لمكافحة الفيروسات لنظام التشغيل Linux