Tin tức và phân tích của tất cả các thiết bị di động

Cách sao lưu trang web Drupal trên Linux

Sử dụng Drupal để quản lý nội dung của bạn là một cách tuyệt vời để tận dụng tối đa trang web của bạn. Đặc biệt là vì nó có hàng tá công cụ, plugin và tính năng để cung cấp. Bất chấp tất cả những điều tuyệt vời mà Drupal làm được, sao lưu không phải là một trong số đó. Đây là một rắc rối thực sự đối với phần mềm CMS tuyệt vời. Vì không có công cụ tuyệt vời nào có thể được sử dụng để sao lưu trang web Drupal trên Linux nên bạn phải thực hiện thủ công.

thư mục sao lưu

Để sao lưu trang web Drupal trên Linux, bạn cần tạo một thư mục để lưu trữ các tệp đã xuất. Trong terminal, sử dụng lệnh mkdir để tạo thư mục sao lưu.

Đầu tiên đăng nhập với quyền root bằng su.

su -

Ngoài ra, sử dụng sudo -s để lấy quyền root nếu bạn không biết mật khẩu hệ thống.

sudo -s

Sau đó tạo một thư mục sao lưu trong /.

mkdir -p drupal-backups

Xuất tệp SQL

Sau đó, bạn cần xuất tất cả các tệp cơ sở dữ liệu SQL. Các tệp SQL phải được cung cấp bởi tài khoản gốc. Không thử sao lưu này với người dùng thông thường.

Trong thư mục sao lưu drupal, tạo thư mục con SQL và thư mục cài đặt.

mkdir -p /drupal-backups/sql

mkdir -p /drupal-backups/installation-files

mkdir -p /drupal-backups/apache2-conf

Sử dụng mysqldump để xuất các tệp cơ sở dữ liệu Drupal từ bản cài đặt SQL của máy chủ sang thư mục sao lưu.

Lưu ý: trước khi sử dụng lệnh bên dưới, vui lòng thay đổi “tên người dùng” và “tên cơ sở dữ liệu” thành tên người dùng SQL của bạn và tên cơ sở dữ liệu SQL mà Drupal sử dụng. Trong hầu hết các cài đặt, tên cơ sở dữ liệu SQL mặc định là “drupal”.

cd drupal-backups/sql

mysqldump -u username -p databasename > db.drupal_backup-1.sql

Sao lưu các tập tin cài đặt

Các tệp cơ sở dữ liệu cốt lõi được sao lưu. Bước tiếp theo là sao lưu cài đặt Drupal thực tế của bạn. Để làm điều này, trước tiên bạn phải tạo một bản sao đầy đủ của mọi thứ từ /var/www//html/. Nếu bạn làm theo hướng dẫn của chúng tôi để cài đặt Drupal, thì cốt lõi của trang web Drupal trên Linux của bạn được đặt trực tiếp trong /var/www/html, không có thư mục con nào. Sử dụng lệnh cp, tạo một bản sao hoàn chỉnh của thư mục html và đặt nó vào /drupal-backups/files.

Lưu ý: nếu cài đặt của bạn là /var/www/html/drupal hoặc thứ gì đó tương tự, hãy thay đổi lệnh cp cho phù hợp với nhu cầu của bạn.

cp -rp /var/www/html/*  /drupal-backups/installation-files/

Điều quan trọng là sao lưu cài đặt Drupal của bạn. Các tệp này chứa cấu hình trang web, chủ đề quan trọng, v.v. Tuy nhiên, chúng không phải là tệp duy nhất cần được sao lưu. Tệp khóa tiếp theo là cấu hình Apache2. Tệp cấu hình này cho máy chủ web Apache biết vị trí cài đặt Drupal và cách tải nó. Không có tập tin này, sao lưu là vô ích.

Để sao lưu tệp cấu hình Apache2, hãy chạy lệnh sau:

cp /etc/apache2/sites-available/drupal.conf /drupal-backups/apache2-conf/

Nén tập tin sao lưu

Bây giờ tất cả các tệp máy chủ Drupal cần thiết đã được sao chép và sẵn sàng để sao lưu, đã đến lúc tạo kho lưu trữ Tar. Tính năng nén sẽ giúp việc di chuyển các tệp sao lưu của bạn dễ dàng hơn nhiều. Để tạo kho lưu trữ tar của các tệp sao lưu Drupal, hãy chạy lệnh sau:

tar -zcvpf drupal-website-backup.tar.gz /drupal-backups

Nén các bản sao lưu của bạn là một ý kiến ​​hay, nhưng nó nguy hiểm. Nếu bạn định lưu trang Drupal của mình vào trang lưu trữ đám mây công cộng, tải lên kho lưu trữ Tar, không được mã hóa có nghĩa là bất kỳ ai cũng có thể làm xáo trộn các giá trị trong tệp cơ sở dữ liệu SQL, tệp trang của bạn hoặc tệ hơn.

Tốt nhất là mã hóa kho lưu trữ này trước khi bạn làm bất cứ điều gì khác. Để mã hóa, đảm bảo GnuPG đã được cài đặt. bạn không có nó? Tìm “gpg” trong trình quản lý gói máy chủ Linux của bạn và cài đặt nó. Sau khi cài đặt, hãy chạy lệnh sau để mã hóa hoàn toàn kho lưu trữ sao lưu Drupal.

gpg -c drupal-website-backup.tar.gz

Chạy gpg -c sẽ cho GnuPG biết rằng bạn muốn mã hóa kho lưu trữ Tar và yêu cầu nhập mật khẩu để đặt cho tệp GPG được mã hóa mới. Nhập mật khẩu an toàn và đợi quá trình mã hóa hoàn tất. Sau khi GPG hoàn tất, hãy sao chép drupal-website-backup.tar.gz.gpg và tải nó lên nơi bạn định lưu trữ bản sao lưu.

Khôi phục bản sao lưu

Tải tệp sao lưu Drupal GPG xuống máy chủ nơi bạn muốn khôi phục bản sao lưu. Sau đó làm như sau:

su -

hoặc

sudo -s

Tạo một bộ nhớ dự phòng.

mkdir -p /drupal-restore/

Di chuyển tệp GPG vào thư mục sao lưu mới.

mv /folder/where/drupal-website-backup/is/drupal-website-backup.tar.gz.gpg /drupal-restore/

Giải mã bản sao lưu bằng GPG.

gpg drupal-website-backup.tar.gz.gpg

Trích xuất bản sao lưu.

tar -xvpf drupal-website-backup.tar.gz

Nhập thư mục sao lưu giải nén.

cd drupal-restore/drupal-backups

Đã đến lúc bắt đầu khôi phục. Bắt đầu bằng cách nhập các tệp SQL từ Drupal sang MySQL.

cd sql
mysqldump -u username -p drupal < db.drupal_backup-1.sql

Bây giờ cơ sở dữ liệu đã có trên hệ thống, hãy khôi phục các tệp còn lại.

cp /drupal-restore/drupal-backups/apache2-conf/drupal.conf /etc/apache2/sites-available/
sudo ln -s /etc/apache2/sites-available/drupal.conf /etc/apache2/sites-enabled/drupal.conf

cp -rp /drupal-restore/drupal-backups/installation-files/* /var/www/html/

Di chuyển các tệp vào vị trí là bước quan trọng cuối cùng trong quy trình khôi phục.

Khi mọi thứ đều ổn, hãy khởi động lại máy chủ Linux. Mặc dù việc khởi động lại có thể gây khó chịu, nhưng đó là một ý tưởng hay. Việc khởi động lại sẽ đảm bảo rằng tất cả các dịch vụ cần thiết để Drupal hoạt động bình thường sẽ trực tuyến trở lại. Khi máy chủ trực tuyến trở lại, mọi thứ sẽ như cũ.