از یک دایرکتوری در لینوکس با استفاده از Shell Script پشتیبان تهیه کنید
چندین گزینه برای پشتیبان گیری از اطلاعات شما در لینوکس(Linux) وجود دارد. میتوانید از برخی نرمافزارهای آزادانه در دسترس مانند fwbackups و Sbackup استفاده کنید. با این حال، یک روش ساده برای پشتیبان گیری از یک دایرکتوری بدون نصب نرم افزار اضافی وجود دارد.
ما یک اسکریپت پوسته با استفاده از متغیرها، دستور tar و دستور date ایجاد می کنیم تا یک فایل پشتیبان با تاریخ از یک دایرکتوری با زیر شاخه های آن ایجاد کنیم.
یک اسکریپت پوسته اساساً یک فایل حاوی لیستی از دستورات است که به ترتیب اجرا می شوند. اگر یک سری دستوراتی دارید که مرتباً به ترتیب اجرا می کنید، ایجاد یک پوسته اسکریپت حاوی این دستورات مفید است. سپس، برای اجرای دستورات فقط باید فایل اسکریپت را اجرا کنید.
ایجاد فایل Shell Script
برای این مثال، ما قصد داریم یک پوسته اسکریپت برای پشتیبانگیری از یک فهرست حاوی فایلها برای راهنمای کاربر ایجاد کنیم. ما از محیط Gnome در اوبونتو(Ubuntu) استفاده می کنیم.
ابتدا با انتخاب پوشه Home(Home Folder) از منوی Places ، به فهرست اصلی خود دسترسی پیدا کنید. (Places)مرورگر فایل(File Browser) به فهرست اصلی شما باز می شود.
ما قصد داریم یک فایل خالی جدید ایجاد کنیم که در آن دستورات انجام بک آپ را وارد می کنیم. در قسمت سمت راست کلیک(Right-click) کرده و Create Document | Empty File را از منوی پاپ آپ خالی کنید.
یک فایل به لیست اضافه شده و آماده تغییر نام است. یک نام برای فایل تایپ(Type) کنید و به فایل پسوند .sh بدهید(.sh) .
برای این مثال، نام فایل خود را user_guide_backups.sh گذاشتیم(user_guide_backups.sh) .
حالا باید دستورات را به فایل اضافه کنیم. روی نام فایل کلیک راست کرده و از منوی باز شده Open with 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
شرح خط به خط
جدول زیر توضیح می دهد که هر خط در فایل اسکریپت پوسته چیست.
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(Home Folder) خود را دوباره همانطور که در بالا ذکر شد باز کنید و روی فایل اسکریپت پوسته کلیک راست کنید. از منوی پاپ آپ گزینه Properties را انتخاب کنید.(Properties)
کادر محاوره ای Properties نمایش داده می شود. (Properties)مطمئن(Make) شوید که چک باکس Execute انتخاب شده باشد.(Execute)
روی Close کلیک کنید .
اجرای Shell Script
برای اجرای اسکریپت پوسته، با انتخاب Accessories | Terminal از منوی برنامه ها.(Applications)
هنگامی که پنجره ترمینال(Terminal) باز می شود، به طور پیش فرض باید در پوشه Home(Home Folder) خود باشید . تایپ pwd در خط فرمان و فشردن enter این واقعیت را تایید می کند. در اعلان، ./user_guide_backups.sh را تایپ کنید و Enter را فشار دهید .
شما باید یک فایل tgz . در پوشه (.tgz)Backups در پوشه (Backups)Home(Home Folder) خود داشته باشید . اگر روی نام فایل راست کلیک کنید، چندین گزینه برای باز کردن بایگانی در یکی از برنامه های بایگانی موجود یا استخراج فایل ها به طور مستقیم در پوشه Backups با استفاده از دستور (Backups)Extract Here مشاهده می کنید .
اطلاعات بیشتر
پیوندهای زیر اطلاعات بیشتری در مورد اسکریپت های پوسته، دستورات tar و date و سایر دستورات لینوکس(Linux) ارائه می دهند.
اسکریپت
راهنمای سریع برای نوشتن اسکریپت با استفاده از پوسته bash(A quick guide to writing scripts using the bash shell)
Bash Shell Scripting – 10 Seconds Guide | All about Linux
راهنمای مرجع Bash(Bash Reference Manual)
دستورات لینوکس
صفحه مرد تار(tar MAN Page)
تاریخ صفحه MAN(date MAN Page)
دستورات bash – صفحات MAN لینوکس(bash commands – Linux MAN Pages)
کاوش در این صفحات به شما کمک می کند تا اسکریپت های پوسته bash مفید خود را بسازید.
Related posts
نحوه پیمایش و استفاده از ساختار دایرکتوری لینوکس
دستور FIND لینوکس با مثال
5 دلیل عالی برای حذف ویندوز برای لینوکس
HDG توضیح می دهد: یونیکس چیست؟
9 بهترین توزیع لینوکس برای هک
7 برنامه برتر آنتی ویروس رایگان برای لینوکس
نحوه تنظیم و پیکربندی فایلهای TCP/IP در لینوکس (تنظیمات TCP/IP برای لینوکس)
9 کار مفیدی که لینوکس می تواند انجام دهد و ویندوز نمی تواند انجام دهد
10 دستور برتر Raspberry Pi Linux که باید بدانید
5 روش برای خودکارسازی پشتیبانگیری از فایل در لینوکس
Adobe Digital Editions را در لینوکس اوبونتو نصب کنید
10 بهترین ضبط کننده صفحه برای لینوکس
ترفندهای ترمینال: از ترمینال به عنوان ساعت زنگ دار استفاده کنید
از دستور 'dd' لینوکس با رابط کاربری گرافیکی ساده استفاده کنید
20 بهترین اپلیکیشن لینوکس تا کنون
6 راه آسان برای افزایش سرعت نصب اوبونتو
10 بهترین برنامه لینوکس برای کاربران اوبونتو
فدورا در مقابل اوبونتو: کدام توزیع لینوکس بهتر است؟
سرور پخش زنده ویدیوی خود را با لینوکس ایجاد کنید
اوبونتو را طوری پیکربندی کنید که صفحه نمایش غیرفعال را کم نور یا خاموش کند