النتائج 1 إلى 2 من 2

الموضوع: مساعدة في حل تمرين

  1. #1
    عضو
    تاريخ التسجيل
    Aug 2007
    المشاركات
    13
    الدولة: Turkey
    معدل تقييم المستوى
    0

    مساعدة في حل تمرين

    السلام عليكم

    اخواني محترفي نظام التشغيل لينكس

    لدي تمرين عن shell script و اريد المساعدة كوني لا زالت مبتدئ بنظام لينكس

    و جزاكم الله خير على المساعدة

    هذا نص التمرين :


    Write a shell script named daily-backup.sh that does the following:
    -Discovers all users defined on the system excluding system and services users.
    -For each of these users, locates the home directory and create an compressed archive for this directory (.tar.gz).
    -Creates a global archive that contains all archived users home directories and save it in /var/backup.
    -The script should be daily run at 1AM and for each execution, the global archive name should reflect the date of the archive creation.
    -The shell script should produce a log file under /var/log/daily-backup.log to which will be added each day the following information: date of script execution, result of each user home directory archiving (archive name, size, and archive process result code) and same information about the global archive file.
    -The script should send a summary report in email to root@localhost at the end of each execution containing date, total time of execution, encountered problems


  2. #2
    عضو الصورة الرمزية andalus
    تاريخ التسجيل
    Mar 2006
    المشاركات
    251
    الدولة: Jordan
    معدل تقييم المستوى
    0

    رد: مساعدة في حل تمرين

    أخي الكريم،
    انا خبرتي متواضعة في الـ Shell Scripting حيث أنّني لا أعرف كيفيّة تنفيذ الأوامر بالضّبط ولكنني أعرف الصورة العامّة والتي يظهر لي من قراءتي للتمرين أنّ التمرين سهل وبسيط وليس معقّد ويمكنك تعلّم كل خطوة منه بكل يُسر وسهولة.

    يمكنك تقسيم كل مطلوب من المطاليب كأمر منفصل وتعلّم كيفية تطبيقه، ثمّ جمع جميع المطاليب في ملفّ واحد.

    أولاً يجب عليك إنشاء ملف تسميه كما هو مذكور في التمرين daily-backup.sh. وحرفي الـ sh بعد النقطة في نهاية الإسم يدلان على أنّ هذا هو Shell Script. لاحظ أنّه بعد إنشاء الملف يجب أن يكون لديك كمستخدم صلاحيات Execute للملف. إذا لم يكن لديك صلاحيّة Execute فقط بإعطاء الملف هذه الصلاحيّة لتتمكّن من تنفيذه.


    -Discovers all users defined on the system excluding system and services users.

    هناك أكثر من طريقة لذلك. فيمكنك إحصاء عدد المجلدات داخل المجلد /home حيث يشير كل مجلد إلى مستخدم.
    ويمكنك كذلك الاستعانة بالمجلد /etc/passwd لمعرفة عدد المستخدمين الذين لديهم home directory.

    راجع الرابط : https://www.linuxquestions.org/linux...all_your_USERs

    بعد ذلك لكل home directory للمستخدمين قم بعمل ضغط لكل home directory في مجلد منفصل من نوع .tar.gz.

    بعد ذلك اضغط الملفات التي قمتَ بضغطها آنفاً في مجلد مضغوط واحد وخزنه في المجلد /var/backup.

    قم بعمل توقيت لهذه العملية بحيث تتم كل يوم الساعة 1 صباحاً. ( المقصود بهذه العملية هو ضغط كل Home directory للمستخدمين في ملف مضغوط ثمّ ضغط الملفات المضغوطة هذه جميعها في ملف مضغوط واحد ويتم تخزينه في /var/backup ).

    تسمية الملف الذي تقوم بتخزينه يجب أن تراعي فيها أن يكون الاسم يحتوي على تاريخ إنشاء هذا الملف المضغوط.

    بعد عمليّة الضغط والتخزين في المكان المذكور أعلاه يجب أن يتم التعديل على الملف /var/log/daily-backup.log ( قم بإنشاءه إن لم يكن موجوداً ). وفي كل مرة نأخذ باك أب فإننا نكتب في هذا الملف معلومات عن الباك أب وهي ( كما هو مطلوب ) :

    date of script execution, result of each user home directory archiving (archive name, size, and archive process result code) and same information about the global archive file

    أي، نكتب تاريخ تنفيذ السكريبت، ونتيجة ضغط كل Home directory للمستخدمين ( اسم المجلد، حجمه، والكود الذي يعكس نتيجة الضغط [ فعند تمام العملية بنجاح ينتج رقم، وفي حال فشلها ينتج رقم آخر. هذا هو المقصود بالكود ].
    وكذلك كتابة نفس المعلومات للمجلد المضغوط الرئيسي الذي سنضع فيه كل المجلدات المضغوطة الفرعيّة.

    والمطلوب التّالي هو :

    The script should send a summary report in email to root@localhost at the end of each execution containing date, total time of execution, encountered problems

    أي أنّه بعد تمام عمليّة تنفيذ السكريبت فإنّه يجب أن يُرسل تلقائياً إيميل ملخّص لعملية الـ باك أب إلى العنوان : root@localhost. يحتوي هذا الإيميل الملخّص على التاريخ، والوقت الذي استغرقته عمليّة الباك أب. وأي مشاكل ظهرت أثناء عملية الباك أب [ إن كان هناك مشاكل].



    هذا هو أخي العزيز ملخّص للمطلوب. وهو سهل وليس بصعب. كل ما عليكَ هو اتّباع كل خطوة وإتمامها ثمّ الإنتقال للخطوة التّالية.
    إذا لم تستطع او لم تعرف كيفيّة حل إحدى الخطوات فيمكنك البحث في الانترنت أو سؤال الأخوة هنا ( السؤال عن خطوة واحدة فقط لتكون أكثر دقّة ). وبعد إتمامك لهذه الخطوة بنجاح يمكنك الانتقال للخطوة التي تليها.


    أتمنى لك التوفيق أخي الكريم واعذرني إن لم أمتلك من الخبرة ما أجيبُ بهِ سؤالكَ كاملاً.

المواضيع المتشابهه

  1. تمرين لفهم انواع شبكات بروتوكول OSPF
    بواسطة westwind في المنتدى الأرشيف
    مشاركات: 5
    آخر مشاركة: 18-09-2012, 23:52
  2. سلى صيامك مع تمرين عملى على 2274 الكتاب الأول لـ 290-70
    بواسطة mahmoud_kung في المنتدى منتدى الشهادات العام
    مشاركات: 11
    آخر مشاركة: 29-08-2010, 18:09
  3. مطلوب المساعدة في حل تمرين برمجة ..
    بواسطة rezoufda في المنتدى البرمجه والتصميمات الفنيه ( الجرافيكس )
    مشاركات: 3
    آخر مشاركة: 11-01-2010, 20:19
  4. مشاركات: 5
    آخر مشاركة: 05-10-2009, 22:08
  5. مساعدة: كارت الشاشة درجة حرارته 80 وبيفصل الجهاز كله ممكن مساعدة ؟
    بواسطة Kpanii في المنتدى البطاقات الرّسوميّة - Graphics Cards
    مشاركات: 4
    آخر مشاركة: 05-10-2009, 21:57

المفضلات

ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •