Computer >> คอมพิวเตอร์ >  >> ระบบ >> Linux

จะเมานต์ Google Drive หรือ OneDrive ใน Linux ได้อย่างไร

ในบทความนี้ เราจะพิจารณาวิธีเชื่อมต่อที่เก็บข้อมูลบนคลาวด์ฟรี เช่น Google Drive หรือ OneDrive ใน Linux CentOS คุณสามารถใช้เพื่อสำรองข้อมูลหรือเพียงเพื่อแลกเปลี่ยนไฟล์ระหว่างโฮสต์ของคุณ ตัวอย่างเช่น คุณสามารถติดตั้งไคลเอนต์ที่เก็บข้อมูลบนคลาวด์ในเดสก์ท็อป Windows ของคุณ อัปโหลดไฟล์ไปยังมัน และเข้าถึงไฟล์ที่แชร์จาก Linux โดยอัตโนมัติ (หรือกลับกัน)

บ่อยครั้งที่ผู้ดูแลเว็บหรือนักพัฒนาเว็บไม่ทราบว่าสามารถใช้ที่เก็บข้อมูลบนคลาวด์ได้ หากไม่มีพื้นที่ว่างเพียงพอบนเครื่องเสมือนหรือในคอนเทนเนอร์ ในงานของฉัน ฉันแนะนำให้ผู้ใช้เชื่อมต่อที่เก็บข้อมูลบนคลาวด์เพื่อจัดเก็บไฟล์บางไฟล์ที่ไม่ต้องการบ่อย หรือเพื่อสำรองเว็บไซต์หรือฐานข้อมูล MySQL/MariaDB ที่นั่น

จะเมานต์ Google Drive หรือ OneDrive ใน Linux ได้อย่างไร

ในบทความนี้ เราจะพิจารณาวิธีเชื่อมต่อพื้นที่เก็บข้อมูลฟรียอดนิยม (OneDrive และ Google ไดรฟ์) กับโฮสต์ที่ใช้ Linux CentOS 7

จะต่อเชื่อม Google ไดรฟ์เป็นที่เก็บข้อมูลใน Linux ได้อย่างไร

มาดูวิธีเชื่อมต่อ Google ไดรฟ์ บน Linux CentOS 7 การติดตั้งทำได้ง่ายและรวดเร็ว

ดาวน์โหลดไคลเอ็นต์ Google ไดรฟ์โดยใช้คำสั่ง:

# wget -O drive https://drive.google.com/uc?id=0B3X9GlR6EmbnMHBMVWtKaEZXdDg

ย้ายไฟล์ไปที่ /usr/sbin:

# mv drive /usr/sbin/drive

เปลี่ยนการอนุญาตไฟล์:

# chmod +x /usr/sbin/drive

การติดตั้ง Google ไดรฟ์สิ้นสุดลง คุณจะต้องเริ่มต้นไคลเอ็นต์และลงชื่อเข้าใช้:

# drive

ไปที่ลิงก์ต่อไปนี้ในเบราว์เซอร์ของคุณ:

https://accounts.google.com/o/oauth2/auth?client_id=367116221053-7n0vf5akeru7on6o2fjinrecpdoe99eg.apps.googleusercontent.com&redirect_uri=urn%3Aietf%3Awg%3Aoauth%3A2.0%3Aoob&response_type=code&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fdrive&state=state

ป้อนรหัสยืนยัน:

คัดลอกลิงก์และเปิดในเบราว์เซอร์บนพีซีของคุณและอนุญาตให้เข้าถึงบัญชี Google ของคุณ

จะเมานต์ Google Drive หรือ OneDrive ใน Linux ได้อย่างไร

จากนั้นคุณจะได้รับลิงค์เพื่อเข้าสู่คอนโซล Linux ของคุณ:

จะเมานต์ Google Drive หรือ OneDrive ใน Linux ได้อย่างไร
เชื่อมต่อ Google ไดรฟ์แล้ว แต่ไม่ได้ใช้โปรโตคอล WebDav (ไม่รองรับ) . ดังนั้น คุณจะไม่เห็นว่าเป็นระบบไฟล์แยกต่างหากหรือเป็นไดเร็กทอรีในเครื่อง คุณสามารถระบุที่อยู่ Google Drive ผ่าน drive ลูกค้า

คุณสามารถดูไฟล์ใน Google ไดรฟ์ได้โดยใช้คำสั่ง:

# drive list

ไฟล์จะแสดงเป็นตารางที่มีสี่คอลัมน์:

  • Id – รหัสไฟล์ที่ไม่ซ้ำกัน
  • Title – ชื่อไฟล์
  • Size – ขนาดไฟล์
  • Created – วันที่สร้าง

ในการทดสอบ เราสามารถสร้างไฟล์และอัปโหลดไปยัง g.drive:

touch testdrive.txt && drive upload --file testdrive.txt

ไฟล์ถูกสร้างขึ้นแล้ว คุณสามารถดูได้ในคอนโซล ตรวจสอบให้แน่ใจด้วยว่าไฟล์นั้นปรากฏในอินเทอร์เฟซทางเว็บของ Google ไดรฟ์:

โดยค่าเริ่มต้น Google เสนอ 15GB พื้นที่บน Google Drive ฟรี

ดังนั้นเราจึงเชื่อมต่อ Google Drive กับเซิร์ฟเวอร์ Linux ของเรา ฉันชอบ Google Drive เนื่องจากคุณไม่ต้องทำอะไรบนเซิร์ฟเวอร์เพื่อเมานต์ที่เก็บข้อมูลบนคลาวด์หลังจากรีสตาร์ทแต่ละเซิร์ฟเวอร์ คุณสามารถรีสตาร์ทเซิร์ฟเวอร์ได้หลายครั้งตามความจำเป็น และ Google ไดรฟ์จะเชื่อมต่อโดยอัตโนมัติ อย่างไรก็ตาม มีข้อเสียอยู่บ้าง:คุณไม่เห็นที่เก็บข้อมูลบนคลาวด์เป็นไดเร็กทอรีแยกต่างหากบนเซิร์ฟเวอร์ และไม่สามารถจัดการไฟล์ในระดับระบบไฟล์หรือใช้คำสั่งทุบตีตามปกติได้

การติดตั้ง OneDrive ใน Linux

OneDrive เป็นที่เก็บข้อมูลบนคลาวด์โดย Microsoft โดยค่าเริ่มต้น จะพร้อมใช้งานสำหรับผู้ใช้ Windows 10 ทุกคนที่มีบัญชีที่เชื่อมโยง (5GB มีให้ใน OneDrive ฟรี) งานของเราคือเชื่อมต่อ OneDrive ใน CentOS 7 ระหว่างการกำหนดค่า ฉันพบปัญหามากมายที่สามารถแก้ไขได้หลังจากการทดลอง คุณจะต้องอ่านคำแนะนำและทำตามขั้นตอนเหล่านี้บนเซิร์ฟเวอร์ของคุณเท่านั้น

ก่อนอื่น ลงทะเบียนโดยใช้ลิงก์นี้:https://onedrive.live.com

จากนั้นติดตั้งแพ็คเกจที่จำเป็นใน Linux CentOS โดยใช้ yum:

# yum groupinstall 'Development Tools' -y
# yum install libcurl-devel -y
# yum install sqlite-devel -y

จากนั้นติดตั้งภาษาโปรแกรม D(dlang) จะต้องติดตั้งไคลเอ็นต์ OneDrive:

# curl -fsS https://dlang.org/install.sh | bash -s dmd

ในการรัน D(dlang) ให้ป้อนคำสั่งนี้:

source ~/dlang/dmd-2.088.0/activate — ในกรณีของคุณ เวอร์ชัน dmd อาจแตกต่างกัน ดังนั้นโปรดระบุรุ่นที่คุณมี

หลังจากรัน dlang แล้ว ให้ติดตั้งไคลเอ็นต์ OneDrive:

cd /opt
git clone https://github.com/abraunegg/onedrive.git
cd onedrive
./configure
make clean; make;
sudo make install

จะเมานต์ Google Drive หรือ OneDrive ใน Linux ได้อย่างไร

การติดตั้งสิ้นสุดลง จากนั้นคุณต้องเปิดใช้งานไคลเอ็นต์ในเวอร์ชันเว็บ OneDrive รันคำสั่ง:

OneDrive

ระบบจะแสดงลิงค์ที่คุณต้องป้อนในเบราว์เซอร์ของคุณ คลิกอนุญาตในแบบฟอร์มเว็บของคำขอเข้าถึง จากนั้นลิงก์จะเปลี่ยนเป็นลิงก์เฉพาะที่มีรหัสที่คุณต้องป้อนในคอนโซล Linux

Authorize this app visiting:
https://login.microsoftonline.com/common/oauth2/v2.0/authorize?client_id=xxxxxx
Enter the response uri https://login.microsoftonline.com/common/oauth2/nativeclient?code=xxxxxx

หลังจากยืนยันลิงก์แล้ว ฉันสามารถซิงโครไนซ์กับที่เก็บข้อมูลบนคลาวด์ของ OneDrive:

# onedrive --synchronize

Initializing the Synchronization Engine ...
Syncing changes from OneDrive ...
Processing 6 changes
Creating directory: Pictures
Creating directory: Documents
Downloading file Getting started with OneDrive.pdf ... done.
Creating directory: backup
Downloading file backup/test.txt ... done.

ตามค่าเริ่มต้น ไดเร็กทอรี /root/OneDrive ที่มีโฟลเดอร์ทั้งหมดของที่เก็บข้อมูลบนคลาวด์ของฉันจะถูกสร้างขึ้นบนโฮสต์ Linux ของฉัน

# ls -la /root/OneDrive/

เพื่อทดสอบ ฉันได้สร้างไฟล์ test2.txt และซิงโครไนซ์ที่เก็บข้อมูล:

# onedrive --synchronize

Initializing the Synchronization Engine ...
Syncing changes from OneDrive ...
Uploading new file ./backup/test2.txt ... done.

ไฟล์ถูกอัปโหลดไปยังคลาวด์ OneDrive:

จะเมานต์ Google Drive หรือ OneDrive ใน Linux ได้อย่างไร

หากต้องการเปลี่ยนไดเร็กทอรีเริ่มต้น คุณต้องเปลี่ยน sync_dir ในไฟล์คอนฟิกูเรชันและรันคำสั่งนี้:

# onedrive --synchronize --resync

Initializing the Synchronization Engine ...
Syncing changes from OneDrive ...
Processing 12 changes

หลังจากรีสตาร์ทเซิร์ฟเวอร์แล้ว ไคลเอ็นต์ OneDrive จะเริ่มทำงานโดยอัตโนมัติและคุณไม่จำเป็นต้องลงชื่อเข้าใช้อีก

ในบทความถัดไป เราจะพิจารณาวิธีใช้ที่เก็บข้อมูลบนคลาวด์เพื่อสำรองข้อมูลจากเซิร์ฟเวอร์ Linux