Back up یک دایرکتوری در لینوکس با استفاده از Shell Script

چندین گزینه برای پشتیبان گیری از داده های شما در لینوکس وجود دارد. شما می توانید از برنامه های نرم افزاری آزاد مانند fwbackups و Sbackup استفاده کنید. با این وجود، یک روش ساده برای پشتیبان گیری یک پوشه بدون نصب نرم افزار اضافی وجود دارد.

ما یک اسکریپت پوسته با استفاده از متغیرها، دستور tarو تاریخ دستوربرای ایجاد یک فایل پشتیبان از دایرکتوری با پوشه های زیر است.

یک اسکریپت پوسته اساسا یک فایل حاوی لیستی از دستورات است که به ترتیب اجرا می شوند. اگر شما مجموعه ای از دستورات را که مرتبا مرتبا اجرا می کنید، مفید است که یک اسکریپت پوسته حاوی این دستورات ایجاد کنید. سپس شما باید فایل اسکریپت را اجرا کنید تا دستورات اجرا شود.

ایجاد فایل اسکریپت Shell

برای این مثال، ما قصد داریم یک اسکریپت پوسته برای تهیه یک پوشه ایجاد کنیم حاوی فایل ها برای یک راهنمای کاربر. ما از محیط Gnomeدر اوبونتواستفاده می کنیم.

اول، با انتخاب پوشه خانهاز مکانهامنو مرورگر فایلبه دایرکتوری خانگی شما باز می شود.

Opening the home folder

ما قصد داریم یک فایل خالی جدید ایجاد کنیم که در آن ما دستورات برای انجام پشتیبان را وارد کنید. راست کلیک در سمت راست و انتخاب ایجاد سند |

3

یک فایل به لیست اضافه می شود و آماده تغییر نام است. .sh

New file ready to be renamed

برای این مثال، یک نام برای فایل بنویسید. ما user_guide_backups.shرا نامگذاری کردیم.

Shell script file renamed

اکنون ما باید دستورات را به فایل اضافه کنیم.

Opening shell script file with gedit

با کلیک راست بر روی نام فایل، باز کردن با geditرا از منوی پاپ آپ انتخاب کنید. این فایل در geditباز می شود. خطوط زیر را در فایل وارد کنید و روی ذخیرهکلیک کنید. هدف هر خط زیر است:

توجه:شما همچنین می توانید متن زیر را کپی کنید و آن را به geditبچسبانید. مطمئن شوید که & lt؛ username & gt؛را به نام کاربری خود تغییر دهید.

#!/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

Editing shell script file in gedit

line #

ویرایش مجوزها در فایل اسکریپت Shell

قبل از اجرای اسکریپت شما باید مطمئن شوید که پرونده دارای مجوزهای صحیح است برای انجام این کار، پوشه اصلیخود را باز کنید، همانطور که در بالا ذکر شد، و راست کلیک بر روی فایل اسکریپت پوسته.

Getting the properties of the shell script file

پنجره Propertiesرا نمایش می دهد Propertiesرا از منوی پاپ آپ انتخاب کنید. .

بستنp>

اجرای Shell Script

برای اجرای اسکریپت پوسته، یک پنجره ترمینال را با انتخاب Accessories |

Opening a Terminal window

هنگامی که پنجره ترمینالباز می شود، شما باید به طور پیش فرض پوشه اصلیخود داشته باشید. تایپ pwdدر خط فرمان و فشار دادن تایید این واقعیت را تایید می کند. ./ user_guide_backups.shرا تایپ کنید و Enterرا فشار دهید

Running the shell script

شما باید یک فایل .tgzدر پوشه پشتیبان در پوشه اصلیخود داشته باشید. اگر شما بر روی نام فایل کلیک راست کرده اید، چندین گزینه برای باز کردن آرشیو در یکی از برنامه های آرشیو در دسترس را مشاهده می کنید یا از فایل استخراج اینجاcommand

Pop-up menu options for .tgz file

اطلاعات بیشتر

لینک زیر اطلاعات بیشتری درباره اسکریپت های پوسته tarو تاریخو سایر دستورات لینوکس

اسکریپت

راهنمای سریع برای نوشتن اسکریپت ها با استفاده از پوسته bash

اسکریپت Bash Shell - راهنمای 10 ثانیه | همه چیز در مورد لینوکس

راهنما کتاب راهنما

دستورات لینوکس

tar MAN Page

تاریخ مرد صفحه

دستورات bash - لینوکس MAN صفحات

بررسی این صفحات به شما کمک می کند تا اسکریپت های پوسته پوسته پوسته خود را بسازید.

How to delete backup from your server using Linux rm command

پست های مرتبط:


16.02.2010

کپی رایت © Tips & Tricks • Tech 2024

توضیحات
1این خط باید خط اول در اسکریپت پوسته bash باشد، که نوع پیش فرض اسکریپت است.
2این خط یک متغیر به نام SRCDIRرا تنظیم می کند و مقدار آن را به پوشه پشتیبان می کند.
توجه:مطمئن شوید که & lt؛ username & gt؛را با usernameخود جایگزین کنید.
3این خط یک متغیر به نام DESTDIRرا تنظیم می کند و مقدار آن را به پوشه ای که فایل پشتیبان آن نوشته می شود تعیین می کند.
توجه:مطمئن شوید که & lt؛ username & gt؛را با نام کاربریجایگزین کنید.
width = "58">4این خط یک متغیر به نام FILENAMEایجاد می کند و مقدار را با استفاده از متن و متغیرهای حاوی دستور تاریخبرای اضافه کردن تاریخ و زمان فعلی به نام فایل. برای مثال، نام فایل ممکن است ug-20100212-13: 03: 45.tgzباشد.
توجه:هنگام استفاده از یک متغیر، همیشه آن را با علامت دلار شروع کنید ($). اگر از فرمان به عنوان بخشی از متغیر استفاده می کنید، دستور و گزینه های دستور را در پرانتز قرار دهید.
5این خط دستور tarبا عملکرد و گزینه های زیر است
این تابع ایجاد می کند
<یک فایل آرشیو جدید (یا اگر یکی از نامهای قبلی قبلا وجود داشته باشد) یک فایل قدیمی را حذف می کند و فایل ها یا پوشه ها را به آن می نویسد.
-gzipاین گزینه tar را برای فشرده سازی فایل ها در آرشیو با استفاده از ابزار gzip
- fileاین گزینه برای نام کاربری استفاده می کند. در این مورد، نام فایل را با استفاده از متغیرهای DESTDIR، FILENAMEو SRCDIRمونتاژ کردیم.