پشتیبان بگیر! گاهی زود دیر میشود

هک شدن وبلاگ دوست خوبمان ۱فتحی زنگی را برای همه ما به صدا در آورد که باعث شد فکر کنیم شاید نفر بعدی ما هستیم. هک شدن به گفته ۱فتحی عزیز شاید بدترین حادثه‌ای باشد که برای یک بلاگر یا وبمستر پیش می‌آید. تصورش سخت نیست که در یک لحظه ببینید آنچه مدتها در پی گرد آوردنش زحمت کشیدید و وقت گذاشتید به یکباره از بین رفته و شما را در بهت اطلاعات از دست رفته خود میگذارد.

اما چاره کار چیست؟ پشتیبان یا بک آپ میتواند در چنین مواقعی ناجی شما باشد. دیروز شعار جالبی را دیدم که شاید یاد آوری اش خالی از لطف نیست. “با پشتیبان با خیال راحت فایلهایتان را گم کنید.” دقیقا همین است! وقتی پشتیبان داشته باشید, از دست رفتن فایلهایتان آنچنان بر شما سخت نخواهد بود.

و اما چگونه؟ چند ماه پیش بنده یک آموزش کوتاه و کاربردی برای دوستان وبمستر نوشتم که در آن زمان در سایت نیوک لرن قرار دادم و الان بهتر دیدم در اینجا هم ذکر کنم تا دوستانی که اونجا رو ندیدن هم از دستش ندن. در این آموزش روش استفاده از اسکریپتی آموزش داده شده که به صورت خودکار از بانک اطلاعاتی شما پشتیبان میگیره.

تذکر: این ترفند فقط مخصوص سرورهای لینوکس میباشد و بر روی cPanel و Plesk جوابگوست.

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

ابتدا حوالی خط ۲۸ باید نام کاربری دیتابیس خودتون رو قرار بدید به صورت زیر به این صورت که در عبارت زیر به جای DATABASE_USERNAME  نام کاربریخودتون رو قرار بدید.(از کوتیشن استفاده نکنید.))

1
USERNAME=DATABASE_USERNAME

در مرحله بعد باید حوالی خط ۳۱ رمز عبور یوزری که در مرحله قبل وارد کردید رو قرار بدید به جای DATABSE_PASSWORD و دوباره بدون کوتیشن.)

1
PASSWORD=DATABASE_PASSWORD

در این مرحله در خط ۳۷ باید نام دیتابیس هاتون رو قرار بدید.(به اینصورت که داخل کوتیشن نام هر دیتابیس با یک فاصله بینشون.)(اگر میخواید کهاز همه دیتابیسهاتون عمل پشتیبان گیری صورت بگیره میتونید کلمه all رو بهجای اسم بانک اطلاعاتی قرار بدید.)

1
DBNAMES="DB1 DB2 DB3"

اینبار باید آدرس ایمیلی که میخواید گزارش بهش فرستاده بشه در خط ۵۴ قرار بگیره:

1
MAILADDR="<a href="mailto:me@somewhere.com">me@somewhere.com</a>"

و در مرحله آخر در خط ۶۲ هم مانند دو مرحله قبل باید نام دیتابیس هاتون رو قرار بدید:

1
MDBNAMES="DB1 DB2 ..."

ویرایش مهم: با تشکر از دوست خوبمون آقا سنا که یاد آور شدن. این اسکریپ در حالت پیشفرض فقط یک گزارش از بک آپ ایجاد شده به ایمیل میفرسته. اما اگر در حدود خط 48 عبارت زیر رو جایگزین کنید یک نسخه از بک آپ همراه با گزارش به ایمیل شما میاد.

1
MAILCONTENT="files"

حالا فایل رو ذخیره کنید و ببندید.
نوبت به آپلود کردن میرسه.
باید این فایل رو در اصلی ترین پوشه هاستتون آپلود کنید.(دقت کنید منظور public_html نیست.پوشه قبل از اون.)
و باید در همون پوشه اصلی یک پوشه به نام backups بسازید. و درون این پوشهbackups سه پوشه دیگه به نامهای daily و weekly و monthly رو بسازید. اینپوشه ها حتما باید ساخته بشن.

حالا نوبت میرسه به عملیات داخل cPanel.
بخشی به نام crontabs توی پنل شما هست که باید واردش بشید.
در این قسمت دو حالت وجود داره یکی ساده (standard) و یکی پیشرفته (Advanced(Unix Style که ما وارد قسمت
پیشرفته میشیم.
در این بخش باید با دستورات لینوکس آشنا باشید.(من کمکتون میکنم)
در قسمت command باید دستور زیر رو وارد کنید.

1
sh ./automysqlbackup

و در قسمتهای دیگه هم مثل تصویر زیر عمل کنید:

cpanel cron tabs

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

دریافت اسکریپت

لینک دوم برای دریافت اسکریپت

برای دیدن آموزش استفاده در پنل Plesk به ادامه طلب رجوع کنید.

برای تنظیمات در پنل Plesk به صورت زیر عمل کنید.

وارد پنل پلسک که میشید قسمتی وجود داره با نام Scheduled Tasks که باید واردش بشید.
سپس روی نام کاربری پنل کلیک کنید. در مرحله بعد باید روی Scheduled New Task کلیک کنید تا مرحله تنظیمات بشید.
میتونید برای قرار دادن تنظیمات از تصویر زیر استفاده کنید:

Plesk scheduled tasks

19 پاسخ به پشتیبان بگیر! گاهی زود دیر میشود

  1. مرسی. خیلی خوب بود. ولی من فکر می کنم مشکل اینجاست که وقتی اطلاعات سرور پاک می شه، اون فولدر backup هم از بین میره.

    • برای اون هم راه حل وجود داره. در همون اسکریپت امکانی وجود داره که میشه فایل بک آپ رو به ایمیل هم فرستاد.

  2. رو آیکون فایرفاکس تو نظر قبلی، نگه داشتم و ورژن رو نشون داد ! شما هم نگاه کنید :دی
    موزیلا به داشتن کاربرانِ آپ تو دیتی مثل ما افتخار می کنه ;)

    • مسلما” افتخار میکنه! نظرتون در مورد ورژن فایرفاکس بنده چیه؟

  3. سلام

    لینک پاک شده
    بی زحمت دوباره بزارین

    مرسی

    • ممنون از لطفتون. لینک جدید اضافه شد. البته لینک قبلی هم درست بود.

  4. مرسی خیلی خوب بود. ولی نکته اینکه گاهی فایلهای بک آپ که رو هاست شما قرار گرفته هم پاک میشه. در نتیجه بهترین راه استفاده از پلاگین wp-backup البته برای وردپرس هست و اینکه اون رو تنظیم کنیم که بک آپ ها رو به ایمیل هم بفرسته. مثلا من خودم تنظیم کدرم در روز دوبار بکاپ بگیره و بفرسته به ایمیلم . اگر سایت من هک بشه. قول میدم کمتر از نیم ساعت همه چیز رو راست و ریست کنم

    • درسته حق با شما است. اما خوب اگر ویرایشی که بنده در پست نوشتم رو بخونید این مشکل هم رفع شده.
      البته بله استفاده از اون افزونه هم خیلی خوبه ولی خوب فقط برای وردپرسه.

  5. مردشور خودتو با *******
    احمقو ببرن که میرید هاست ایرانی با اوون همه قیمت میگیرین هک که خوبه باید یوزر پسوردو ازتون بگیرن دیگه نتونین هیچ غلطی کنین
    آخه تو این زمونه کدوم خری میره هاست ایرانی میگیره؟
    والا هیچکی غیر از خود شما خراااااااااا

    • ممنون از ابراز لطفتون نسبت به بنده. به امید روزی که همه به خیال راحت هاست ایرانی بخرن.

  6. از این که خوانندگان ارزشمندی چون شما دارم به خودم می‌بالم. متاسفانه همان طور که گفتید بسیار زود دیر می‌شود و همانطور که تجربه کنونی من می‌گوید حتی ممکن است بک‌آپ‌ها هم پاسخ‌گو نباشند پس توصیه می‌کنم حتما از چند روش بک‌اپ گرفته شود. روش ارائه شده توسط شما نیز یکی از روش‌های بسیار عالی است.

    • شروین جان باعث افتخاره که شما در وبلاگ این حقیر کامنت گذاشتید.
      بله همونطور که گفتید کار از محکم کاری عیب نمیکنه.

  7. ok

  8. back up چیز خوبیه هم وب و هم هارد

  9. هی : من از اوپرا ۱۰ استفاده میکنم ۹٫۸۰ دیگه چه صیغه ای است که نوشتید ؟

    • بله این اشکال از افزونه است. سعی میکنم در اسرع وقت درستش کنم.

  10. من همه کارهارو کردم ولی متن زیر به ایمیلم میاد
    ./automysqlbackup: line 56:
    : command not found
    ./automysqlbackup: line 60:
    : command not found
    ./automysqlbackup: line 63:
    : command not found
    ./automysqlbackup: line 66:
    : command not found
    ./automysqlbackup: line 69:
    : command not found
    ./automysqlbackup: line 72:
    : command not found
    ./automysqlbackup: line 75:
    : command not found
    ./automysqlbackup: line 78:
    : command not found
    ./automysqlbackup: line 81:
    : command not found
    ./automysqlbackup: line 84:
    : command not found
    ./automysqlbackup: line 87:
    : command not found
    ./automysqlbackup: line 90:
    : command not found
    ./automysqlbackup: line 93:
    : command not found
    ./automysqlbackup: line 96:
    : command not found
    ./automysqlbackup: line 338:
    : command not found
    ./automysqlbackup: line 350:
    : command not found
    ./automysqlbackup: line 407: syntax error near unexpected token `{

    ./automysqlbackup: line 407: `dbdump () {

    • سلام مهدی دادا
      به احتمال زیاد یه جایی یه اشتباهی کردی. چون من خیلی وقته دارم از این اسکریپت استفاده میکنم و مشکلی نداشته و نداره.
      یکبار دیگه چک کن. ببین تمام کوتیشن ها رو درست بستی. چیزی رو جابجا ننوشتی.

  11. نمی دونم چی شد درست شد ولی یه مشکل دیگه هست بک آپ رو هاست ذخیره میشه ولی به ایمیل ارسال نمیشه تمام گزینه های مربوط به ایمیل رو امتحان کردم log فرستاده میشه ولی خود فایل بک آپ ارسال نمیشه!!