یکی از نرم‌افزارهای محبوب مدیریت سایت، Drupal است که هزاران ابزار، پلاگین و قابلیت مفید دارد. یکی از نقاط ضعف دروپال، موضوع بکاپ است که ابزار جامع و عالی برای آن وجود ندارد.

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

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

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

می‌توانید از دستور sudo -s نیز برای دریافت دسترسی روت استفاده کنید که در این صورت نیازی به دانستن پسورد نیست.

برای ایجاد فولدر بکاپ در روت، از دستور زیر استفاده کنید:

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

دیتابیس یا بانک داده بخش بسیار مهمی از سایت‌های وردپرسی یا دروپالی و غیره است. برای بکاپ گرفتن از SQL Database می‌بایست از حساب روت استفاده کنید چرا که در حساب کاربری معمولی، سطح دسترسی لازم وجود ندارد. به علاوه بهتر است در فولدر بکاپ Drupal یک فولدر دیگر برای ذخیره کردن بکاپ دیتابیس ایجاد کنید. بنابراین دستورات زیر را اجرا کنید:

برای اکسپورت کردن دیتابیس از دستور mysqldump استفاده می‌شود. بنابراین دستور زیر را با تغییر دادن نام کاربری یا username و نام دیتابیس یا databasename به نام کاربری و دیتابیس سایت دروپالی اجرا کنید. البته در اغلب سایت‌ها، نام پیش‌فرض دیتابیس دروپال، drupal است.

بکاپ گرفتن از فایل‌های Drupal در لینوکس

برای بکاپ گرفتن از فایل‌های اسکریپت Drupal نیز بهتر است فولدر جداگانه‌ای ایجاد کنید و هر چه در مسیر var/www//html/ قرار گرفته را داخل آن کپی کنید. برای کپی کردن کامل از دستور cp استفاده می‌شود. بنابراین می‌توانید با دستور زیر، محتویات فولدر html‌ یا هر فولدری که روت سایت دروپالی است را در فولدر installation-files کپی کنید:

دقت کنید که به جز فایل‌هایی مثل تم‌ها و پیکربندی سایت و غیره، می‌بایست فایل پیکربندی وب‌سرور آپاچی را نیز کپی کنید در صورت نیاز به ری‌استور کردن بکاپ، از آن استفاده کنید. در این فایل مشخص می‌شود که مسیر نصب Drupal چیست و لذا فایل بسیار مهمی است. با دستور زیر از این فایل بکاپ تهیه کنید:

فشرده‌سازی بکاپ سایت در لینوکس

پس از بکاپ‌گیری بهتر است فایل‌ها را یکپارچه و فشرده کنید تا جابجا کردن آن سریع‌تر انجام شود و حجم کلی نیز کاهش پیدا کند. برای این کار می‌توانید از روش آرشیو با فرمت Tar استفاده کنید. بنابراین دستور زیر را اجرا کنید:

اگر قرار است فایل بکاپ سایت دروپالی را در سرویس‌های ابری یا وسایل ذخیره‌سازی جانبی مثل هارد اکسترنال و فلش‌درایو USB کپی کنید، بهتر است آن را رمزگذاری یا Encrypt کنید تا کسی بدون داشتن پسورد از آن استفاده نکند. برای این مهم اگر بسته‌ی GnuPG را نصب کرده باشید، می‌توانید از دستور زیر استفاده کنید:

پس از اجرا کردن این دستور، رمز عبور از شما پرسیده می‌شود و سپس رمزگذاری آغاز می‌شود و بسته به حجم بکاپ، مدتی طول می‌کشد. در نهایت می‌توانید فایلی به اسم drupal-website-backup.tar.gz.gpg که رمزگذاری شده است را در وسایل ذخیره‌سازی یا روی فضای ابری آپلود کنید.

ری‌استور کردن بکاپ سایت Drupal در لینوکس

برای ری‌استور کردن بکاپ، ابتدا باید فایل GPG که حاصل رمزگذاری بکاپ تمام فایل‌های لازم است را در سرور موردنظر دانلود کنید. برای ری‌استور کردن ابتدا دسترسی روت را فعال کنید:

یا

و سپس فولدری برای نگهداری فایل بکاپ ایجاد کنید:

و حال می‌توانید فایل GPG‌ را به این فولدر منتقل کنید:

قبل از استخراج فایل فشرده و رمزگذاری شده، آن را رمزگشایی کنید:

و سپس با دستور زیر آن را باز کنید:

و حالا سراغ فولدری که بکاپ را در آن اکسترکت کرده‌اید بروید:

با دستورات زیر می‌توانید بانک داده SQL را در MYSQL ایمپورت کنید:

و سپس سایر فایل‌ها را کپی کنید:

به این ترتیب بکاپ سایت دروپالی را ری‌استور کرده‌اید و بانک داده و پیکربندی Apache2 را به حالت سابق بازگردانی کرده‌اید.