Hướng dẫn chuyển dữ liệu từ Google Drive về Email Pro

Bạn gặp khó khăn khi phải chuyển một số lượng lớn files, thư mục, hình ảnh… trên Google Drive mà phải thực hiện mở máy tính 24/7, theo dõi quá trình chuyển đổi liên tục, không thể dành thời gian cho các việc khác trong quá trình chuyển dữ liệu hoặc môi trường thực hiện chuyển dữ liêu không được đảm bảo liên tục.

Trong bài viết này vHost sẽ hướng dẫn bạn cách để thực hiện việc chuyển dữ liệu từ Google Drive về Email Pro của vHost đơn giản nhất.

Cấu hình chuyển đổi dữ liệu từ Google Drive về Email Pro

Cài đặt rclone và screen

Chuẩn bị một máy chủ Cloud VPS / VPS / Dedicated Server sử dụng Linux có thể hoạt động liên tục để phục vụ cho việc chuyển dữ liệu.

Để có thể thực hiện cài đặt rclone với phiên bản mới nhất trên hệ thống, bạn thực hiện tham khảo chạy câu lệnh sau để cài đặt. Thông tin chi tiết hơn về các gói cài đặt này bạn có thể theo dõi tại link: https://rclone.org/install/

curl https://rclone.org/install.sh | sudo bash

Để cài đặt và chạy screen trên máy chủ Linux, bạn có thể tham khảo theo hướng dẫn sau

Bước 1: Cài đặt screen

Cài đặt screen Linux trên Ubuntu, Debian,… OS sử dụng cấu trúc Apt

sudo apt install screen

Cài đặt screen Linux trên CentOS, Redhat, Fedora,… OS sử dụng cấu trúc using y

sudo yum install screen

Bước 2: Khởi tạo một screen session

screen -S session_name

Bước 3: Bạn sẽ thực hiện khởi tạo các kết nối và chuyển dữ liệu theo hướng dẫn bên dưới để chuyển dữ liệu từ Google Drive về hệ thống Email Pro rồi sau đó sẽ quay lại bước 4.

Bước 4: Detach screen đang chạy ra khỏi session SSH đang sử dụng bằn cách sử dụng tổ hợp phím CTRL + A + D. Chương trình đang chạy trong screen sẽ tiếp tục chạy sau khi bạn detach screen

Bước 5: Để quay lại session screen đang chạy, bạn nhập lệnh sau

Để list các session đang có bạn chạy lệnh:

screen -ls
Output:
There are screens on:   
 1083.pts-0.session_name   (Detached)   
 1036.pts-0.session_name   (Detached)
2 Sockets in /run/screens/session_name.

Để restore lại screen 1083 bạn chạy lệnh sau:

screen -r 1083

Với hướng dẫn chạy screen, bạn có thể chuyển dữ liệu trong detach screen mà không cần phải online 24/7 với máy tính của bạn

Cấu hình tạo remote trên vDrive và Google Drive

Cấu hình tạo remote đến hệ thống vDrive của Email Pro

Bước 1: Sau khi cài đặt xong vDrive, bạn chạy câu lệnh sau để tiến hành khởi tạo một máy chủ remote đến hệ thống vDrive

rclone config

Sau đó chọn nhập nút n để khởi tạo một kết nối mới rồi bạn thực hiện khai báo phần cấu hình trên vDrive như sau:

  • Phần Storage bạn chọn webdav
  • Phần đường dẫn URL kết nối đến máy chủ: https://storage.vdrive.vn/remote.php/webdav
  • Phần lựa chọn vendor, bạn lựa chọn vào Nextcloud

Bước 2: Bạn đăng nhập vào hệ thống vDrive theo link https://storage.vdrive.vn/index.php/apps/dashboard/ để lấy môt vài thông tin xác thực để kêt nối đến hệ thống như username, password và bearer code như sau:

Truy cập vào link avatar của bạn, chọn Settings rồi chọn tiếp vào tab Personal, chọn Security

Nhập App Name và chọn tiếp vào mục Create new app password

Hệ thống sẽ hiển thị thông tin app password, Bạn sẽ sử dung thông tin này để làm Bearer token khi khai báo trên rclone config cho vDrive

Bước 3: Quay lại phần cấu hình rclone đang thực hiện để khai báo username, password và bear token đã thực hiện ở bước 2. Chọn y (Yes this is OK) để hoàn tất phần cấu hình.

Bước 4: Sau khi đã khai báo hoàn tất, bạn sẽ thấy thông tin tên remote hiển thị ở rclone config. bạn cũng có thể kiểm tra phần đã cấu hình ở thư muc ~/.config/rclone/rclone.conf

Cấu hình tạo remote đến hệ thống Google Drive

Kích hoạt Google Drive API và khởi tạo xác thực trên Google Drive

Bước 1:Bạn thực hiện tạo một ProJect App trên https://console.cloud.google.com/. Ở trên góc cùng bên trái Menu chọn IAM & Admin > Create a Project

Nhập tên và thông tin Project ID của bạn, bảng điều khiển điều hướng đến trang Dashboard chính và project của bạn sẽ được tạo trong vòng vài phút.

Bước 2: Enable API Google Drive bằng cách chọn vào thanh Menu -> APIs and Services -> Libary

Bước 3: Tìm đến tab Google Workspace rồi click chuột vào Google Drive API rồi chọn Enable API này lên

Bước 4: Quay trở lại menu, rồi bạn chọn vào APIs and Services -> OAuth consent screen. Nhập thông tin App information

Sau đó bạn nhập tiếp vào Developer Contact Information rồi chọn Save and Continue để sang bước tiếp theo.

Scope, Optional Info thì không bắt buộc nên bạn có thể skip qua phần này. Trong trường hợp bạn cần hiểu rõ về phần cấu hình này thêm có thể tham khảo tại https://developers.google.com/workspace/guides/configure-oauth-consent

Bước 5: Sau khi đã khai báo xong ở phần Oauth Consent, bạn quay trở lại trang chính của OAuth consent screen để chuyển trạng thái từ Testing sang Production

Bước 6: Khởi tạo Credentials cho Google Drive API đã kích hoạt. Bạn vào thanh menu bên góc trái, chọn Enabled APIs & Services -> CREATE CREDENTIALS -> OAuth Client ID

Sau khi bạn thực hiện khai báo Name [1] và URIs [2] (*) như bên dưới, bạn sẽ nhận được thông tin Client ID và Client Secret như ổ mục số [3]

Phần Authorized redirect URLs, bạn nhập kết quả sau:

http://127.0.0.1:53682

http://127.0.0.1:8888

(*): Ở phần URIs bạn nhập URIs như trên để thực hiện kết nối đến Google Drive API quá rclone trên một máy chủ Linux remote. Trong trường hợp bạn sử dụng một port khác, vui lòng thay đổi lại đúng port ở bước 7.

Cấu hình với Rclone

Bước 7: Khởi tạo Tunnel để kết nối trên Putty. Sau khi đã nhập thông tin SSH username, port, ssh key. Bạn chọn tiếp vào mục Connection -> SSH -> Tunnels để khai báo SSH Port Forwarding rồi chọn Open để kết nối

Lưu ý: Trong trường hợp bạn sử dụng một source port khác, vui lòng update lại source port trên URIs đã khai báo ở Credentials ổ bước 2.

Bước 8: Sử dụng câu lệnh rclone config để tiếp tục thực hiện khai báo kết nối đến máy chủ Google Drive

rclone config
  • [1] Storage chọn drive để lựa chọn kiểu lưu trữ là Google Drive
  • [2] Client_ID: Sử dụng client_id đã lấy ở bước 6
  • [3] Secret_ID: Sử dụng client_secret đã lấy ở bước 6
  • [4] Scope: Chọn 1

Ở phần root_folder_idsevice_account_file bạn có thể bỏ trống ở phần này, chọn n vào mục Edit Advanced Config và chọn y ở phần Auto Config

Bạn sẽ copy theo đường dẫn trên và thay port 53682 bằng port 8888 đã khai báo ở bước 6,7

Example: http://127.0.0.1:8888/auth?state=cKQMR0v7ZxyHkKG955-Oaw

Lựa chọn Account đã cấu hình trên Console của Google và chọn Allow để cho phép kết nối từ rclone đến Google Drive

Lưu ý: Trong trường hợp bạn gặp lỗi This site cannot be reach do đường dẫn của Google đã chuyển hướng sang đường dẫn http://127.0.0.1:53682/…., lúc này bạn cần hay đổi lại port cho chính xác như bên dưới.

Chuyển dữ liệu từ Google Drive sang hệ thống vDrive

Sau khi đã khởi tạo 2 máy củ remote hoàn tất, bạn sử dụng câu lệnh sau để chuyển dữ liệu từ Google Drive về vDrive

rclone copy <name-remote-google-drive> <name-remote-vdrive> -P

Để xóa email ở source remote (Google Drive) thi bạn có thể sử dụng câu lệnh sau để move thay vì copy

rclone move <name-remote-google-drive> <name-remote-vdrive> -P

Quá trình chuyển đổi sẽ như sau:

Ở bài viết trên vHost.vn đã hướng dẫn cho bạn cách để chuyển dữ liệu từ Google Drive về hệ thống Email Pro, nếu bạn có bất kì câu hỏi nào liên quan đến chuyên mục Email Pro vui lòng phản hồi qua bình luận bên dưới.

Leave a Comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Scroll to Top