Bagaimana cara menyinkronkan OneDrive Business / Office 365 di Linux?
24
Microsoft OneDrive Business / Office 365 Pro menawarkan 1 TB penyimpanan cloud tetapi sayangnya tidak pernah ada metode untuk menyinkronkannya di Linux.
Selamat Datang di Tanya Ubuntu ! Kami adalah situs tanya jawab, bukan forum. Saat ini Anda memiliki pertanyaan dan jawaban di bagian pertanyaan yang ditunjuk. Harap edit posting Anda untuk menghapus jawaban dan posting di bagian jawaban di bawah ini (harus ada tombol di dekat bagian bawah halaman). Terima kasih!
Saat ini onedrive-d eksperimental adalah program sumber terbuka yang hanya dapat menyinkronkan akun OneDrive pribadi karena tidak menerima tautan Microsoft Sharepoint. Berikut adalah metode untuk menyinkronkan OneDrive Business / Office 365 menggunakan GoodSync untuk Linux , yang gratis untuk penggunaan pribadi.
Instal versi yang sesuai untuk mesin Linux Anda mis:
./goodsync-linux-x86_64-release.run
Jawab oleh n untuk pengaturan GoodSync Connect dan GsServer Web UI.
Buka OneDrive di browser web. pilih "Kembali ke Classic OneDrive" di sisi kanan bawah.
Alamat web di browser Anda sekarang akan terlihat seperti:
https://xxxxxxx.sharepoint.com/xxxxxxxxxxx/Documents/Forms/All.aspxdan berdasarkan itu dapatkan tautan sinkronisasi Anda nantinya office365://xxxxxxx.sharepoint.com/xxxxxxxxxxx/Documents.
Buat file baru di subfolder .goodsync di rumah Anda:
gedit ~/.goodsync/jobs.tix
Masukkan kode berikut dalam file dan simpan:
<Job>
Name = "OneDrive_Sync"
Side1 = <SideOptions>
Dir = <Connect>
Url = "put_your_syncing_link_here"
UserID = "put_your_OneDrive/Office365_Bussiness_email_here"
</Connect>
</SideOptions>
Side2 = <SideOptions>
Dir = <Connect>
Url = "file:///your_home_folder/one_drive_folder"
</Connect>
</SideOptions>
Direction = 0
ExcludeHidden = No
ExcludeSystem = No
DetectMovesAndRenames = Yes
LinksOption = 1
ExcludeEmptyFolders = No
LimitChangesPercent = 100
AutoResolveConflicts = 3
DetectMovesAndRenames = Yes
</Job>
Mulai proses sinkronisasi:
gsync sync "OneDrive_Sync"
Pada langkah ini Browser web Anda akan membuka halaman OneDrive / Office 365 dan meminta otorisasi Anda untuk memungkinkan goodsync mengakses akun Anda. Setelah memasukkan kredensial Anda, sinkronisasi akan dimulai.
Keterbatasan: Microsoft tidak mengizinkan Permintaan URL dengan panjang lebih dari 270 karakter dan karenanya GoodSync TIDAK BISA menyinkronkan file dengan nama path panjang.
Browser web saya tidak membuka halaman otorisasi pada langkah 7. Adakah yang tahu bagaimana melakukannya secara manual?
pat-s
3
Peramban web saya tidak terbuka untuk masuk juga
Haha TTpro
2
Sistem file di office365: /.../ Dokumen telah digantikan oleh API OneDrive V2 Baru. Klik tombol Browse untuk Re-Browse ke folder sinkronisasi OneDrive Anda, karena New OneDrive memerlukan otentikasi berbasis browser (OAuth2)
Ferroao
6
Ubuntu 18.04 dan yang lebih baru
Ada klien OneDrive di repositori default Ubuntu di Ubuntu 18.04 dan yang lebih baru. OneDrive adalah sistem penyimpanan cloud dari Microsoft. Paket ini menyediakan klien baris perintah yang berspesialisasi dalam menyinkronkan dengan penyimpanan cloud OneDrive.
Instal dengan:
sudo apt install onedrive
Saat pertama kali dijalankan, ia meminta Anda untuk mengautentikasi dengan tautan. Setelah otentikasi, Anda dapat mengaktifkan deamon dengan systemctl --user enable onedrivedan kemudian systemctl --user start onedrive. Penjelasan lebih lanjut dapat ditemukan di halaman manual man onedrive. Pengaturannya sangat mudah, dan hanya membutuhkan waktu sekitar lima menit.
Meskipun alat asli dan yang umum digunakan onedrivedoleh xybu masih tidak mendukung OneDrive for Business, tetapi hanya OneDrives pribadi. namun, ada fork proyek ini di GitHub oleh derrix060 yang entah bagaimana bisa berfungsi (tetapi masih bermasalah) untuk klien Bisnis.
Peringatan: Ketika Anda menggunakan metode ini, saya sangat menyarankan untuk selalu memverifikasi bahwa file-file tersebut disinkronkan dengan benar dengan memeriksa secara online di https://www.office.com , dan / atau menggunakan skrip pembungkus saya yang diperlihatkan di akhir halaman ini. untuk setidaknya mengetahui kesalahan apa pun menggunakan notifikasi desktop!
Terkadang onedrived tampaknya gagal mengambil beberapa perubahan atau mengunggahnya dengan benar, membuat OneDrive Anda dalam keadaan (sebagian) tidak tersinkronisasi. Itu juga dapat terjadi bahwa itu menghasilkan menggabungkan konflik dengan dirinya sendiri untuk beberapa alasan dan mengganti nama file Anda secara lokal dengan menambahkan nama host Anda dalam tanda kurung dan opsional nomor. Sayangnya tidak ada pemberitahuan tentang kesalahan, tetapi Anda dapat melihat entri di logfile Anda.
Jika ini terjadi, Anda dapat membuatnya mencoba menyinkronkan file masing-masing lagi dengan misalnya menyentuhnya atau mengganti nama mereka atau folder tempat mereka berada.
Tip: Sepertinya pustaka onedrived sering memiliki masalah terutama dengan file yang disimpan langsung di root OneDrive. Mungkin lebih baik untuk meletakkan semua file di subdirektori daripada membuangnya langsung ke folder OneDrive.
Meskipun kedengarannya bodoh, saya juga memperhatikan bahwa tampaknya lebih sedikit masalah untuk mengunggah file melalui klien Web OneDrive dan menunggu sampai mereka disinkronkan kembali ke folder lokal Anda (yang dapat memakan waktu beberapa menit) daripada membuat atau menyalin / memindahkannya. secara lokal. Apakah ini praktis atau benar-benar mengosongkan tujuan OneDrive tergantung pada keputusan Anda sendiri ...
Lihat file readme proyek untuk instruksi instalasi lengkap, tapi di sini adalah ringkasan singkat:
Instalasi
Pastikan Anda tidak menginstal versi lain onedrived(atau onedrive-d).
Unduh ngrokklien terbaru untuk Linux dari situs web resmi di https://ngrok.com/download . The ngrok-clientpaket dari repositori Ubuntu terlalu tua dan tidak memenuhi persyaratan.
Buka paket ngrok-stable-linux-amd64.ziparsip yang diunduh . Ini berisi ngrokbiner tunggal , yang harus Anda tempatkan di lokasi Anda $PATH, misalnya ke /usr/local/bin/.
Mendaftar untuk ngrok mungkin tidak perlu.
Instal onedrivedaplikasi Python3 dari GitHub menggunakan pip3:
Secara opsional konfigurasikan lokasi logfile untuk onedrived, di mana Anda dapat memeriksa masalah jika ada yang tidak berfungsi dengan benar, misalnya:
onedrived-pref config set logfile_path ~/.config/onedrived/onedrived.log
Pengaturan akun dan konfigurasi drive
Setelah instalasi berhasil, Anda harus mengonfigurasi akun dan drive Anda:
Tambahkan akun OneDrive for Business Anda menggunakan mode interaktif dengan menjalankan:
onedrived-pref account add -b
Wizard interaktif akan meminta Anda dua kali untuk membuka tautan di browser Anda, tempat Anda harus mengotorisasi aplikasi dengan akun Microsoft Business Anda.
Ini akan meminta Anda untuk menempelkan URL yang Anda arahkan ke setelah mengkonfirmasi otorisasi kembali ke wizard interaktif. Silakan lakukan seperti yang diperintahkan dan ikuti instruksi yang diberikan perintah kepada Anda.
Verifikasi akun berhasil ditambahkan dengan memeriksa output dari perintah di bawah ini. Seharusnya terlihat serupa dan daftarkan akun tempat Anda masuk:
$ onedrived-pref account list
All OneDrive accounts associated with user "YOUR_UBUNTU_USERNAME":
# Account ID Owner Name Email Address Profile Type
--- ------------------------- ------------- -------------------- --------------
0 YOUR_PERSONAL_ACCOUNT_ID YOUR_NAME YOUR_BUSINESS_EMAIL Business
Konfigurasikan drive Anda dalam mode perintah interaktif dengan menjalankan:
onedrived-pref drive set
Anda akan melihat daftar semua drive Anda dan diminta untuk memasukkan nomor baris drive yang ingin Anda tambahkan ke konfigurasi lokal Anda.
Anda kemudian harus menentukan direktori lokal yang ingin Anda gunakan sebagai folder root untuk menyinkronkan dengan drive Anda. Anda bisa menekan Enterdan itu akan menggunakan default ~/OneDrive. Jika jalan tidak ada, itu akan dibuat. Hal yang sama untuk jalur ke file abaikan yang ingin Anda gunakan, Anda bisa menekan Enterdan itu akan menggunakan default ~/.config/onedrived/ignore_v2.txtdan membuatnya, jika perlu.
Periksa output dari perintah di bawah ini untuk menampilkan informasi tentang semua drive yang tersedia dan dikonfigurasi. Seharusnya menunjukkan drive yang baru saja Anda atur dengan pengaturan yang benar di bawah judul Drives that have been set up:
onedrived-pref drive list
Meluncurkan daemon
Sekarang drive Anda sudah dikonfigurasi, Anda perlu mencoba dan memulai onedriveddaemon. Saya sarankan untuk meluncurkannya dalam mode debug terlebih dahulu, jika ada masalah yang Anda akan lewatkan. Ini akan mulai onedriveddi latar depan:
onedrived start --debug
Jika semuanya baik-baik saja dan perintahnya tidak macet dan keluar, coba letakkan beberapa file di folder OneDrive lokal Anda dan lihat apakah itu disinkronkan. Anda mungkin harus dapat memverifikasi bahwa dengan mengunjungi aplikasi web OneDrive di https://www.office.com dan memeriksa apakah file yang Anda tambahkan secara lokal muncul di sana.
Anda dapat keluar dari onedrivedproses di terminal lagi dengan menekan Ctrl+ C.
Untuk meluncurkan secara onedrivednormal, sebagai daemon latar belakang, jalankan dengan:
Jika Anda ingin mendapatkan pemberitahuan desktop setiap kali onedrivedmencatat kesalahan (mis. Sinkronisasi file gagal), berikut ini adalah skrip wrapper yang mem-parsing file log secara waktu nyata dan menggunakan notify-send untuk menampilkannya kepada Anda.
Anda dapat memulai skrip wrapper tanpa argumen (atau memasukkannya ke aplikasi auto-start Anda) alih-alih onedrived startperintah.
Saya masih mendapatkan pesan "Gagal mengotorisasi onedrived: interaksi_required." setelah saya memasukkan tautan kedua untuk mengautentikasi akun ODfB. Adakah ide mengapa ini bisa terjadi?
Jimakos
@ Jimakos Maaf, saya tidak pernah menemukan pesan itu. Sayangnya tidak ada ide.
Ini adalah contoh saya untuk mengatur remote baru onedrive1dengan rclone 1.48.0 (pada Fedora 30):
$ rclone config
2019/10/10 06:35:56 NOTICE: Config file ".config/rclone/rclone.conf" not found - using defaults
No remotes found - make a new one
n) New remote
s) Set configuration password
q) Quit config
n/s/q> n
name> onedrive1
Type of storage to configure.
Enter a string value. Press Enter for the default ("").
Choose a number from below, or type in your own value
⋮
19 / Microsoft OneDrive
\ "onedrive"
⋮
Storage> 19
** See help for onedrive backend at: https://rclone.org/onedrive/ **
Microsoft App Client Id
Leave blank normally.
Enter a string value. Press Enter for the default ("").
client_id>
Microsoft App Client Secret
Leave blank normally.
Enter a string value. Press Enter for the default ("").
client_secret>
Edit advanced config? (y/n)
y) Yes
n) No
y/n> n
Remote config
Use auto config?
* Say Y if not sure
* Say N if you are working on a remote or headless machine
y) Yes
n) No
y/n> y
If your browser doesn't open automatically go to the following link: http://127.0.0.1:53682/auth
Log in and authorize rclone for access
Waiting for code...
Got code
Choose a number from below, or type in an existing value
1 / OneDrive Personal or Business
\ "onedrive"
2 / Root Sharepoint site
\ "sharepoint"
3 / Type in driveID
\ "driveid"
4 / Type in SiteID
\ "siteid"
5 / Search a Sharepoint site
\ "search"
Your choice> 1
Found 2 drives, please select the one you want to use:
0: OneDrive - Example Inc (business) id=b!gFLg-RRe****-T9B****
1: OneDrive - Example Inc (business) id=b!gFLg-RRe****-T-H****
Chose drive to use:> 1
Found drive 'root' of type 'business', URL: https://example-my.sharepoint.com/personal/myname_example_com/Documents
Is that okay?
y) Yes
n) No
y/n> y
Current remotes:
Name Type
==== ====
onedrive1 onedrive
e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q> q
URL drive 0 diakhiri dengan /ElementinnerHTMLdan tidak berisi file dalam kasus saya.
Jawaban:
Saat ini onedrive-d eksperimental adalah program sumber terbuka yang hanya dapat menyinkronkan akun OneDrive pribadi karena tidak menerima tautan Microsoft Sharepoint. Berikut adalah metode untuk menyinkronkan OneDrive Business / Office 365 menggunakan GoodSync untuk Linux , yang gratis untuk penggunaan pribadi.
Instal versi yang sesuai untuk mesin Linux Anda mis:
Jawab oleh n untuk pengaturan GoodSync Connect dan GsServer Web UI.
https://xxxxxxx.sharepoint.com/xxxxxxxxxxx/Documents/Forms/All.aspx
dan berdasarkan itu dapatkan tautan sinkronisasi Anda nantinyaoffice365://xxxxxxx.sharepoint.com/xxxxxxxxxxx/Documents
.Buat file baru di subfolder .goodsync di rumah Anda:
Masukkan kode berikut dalam file dan simpan:
Mulai proses sinkronisasi:
Pada langkah ini Browser web Anda akan membuka halaman OneDrive / Office 365 dan meminta otorisasi Anda untuk memungkinkan goodsync mengakses akun Anda. Setelah memasukkan kredensial Anda, sinkronisasi akan dimulai.
Keterbatasan: Microsoft tidak mengizinkan Permintaan URL dengan panjang lebih dari 270 karakter dan karenanya GoodSync TIDAK BISA menyinkronkan file dengan nama path panjang.
Nikmati!
sumber
Ubuntu 18.04 dan yang lebih baru
Ada klien OneDrive di repositori default Ubuntu di Ubuntu 18.04 dan yang lebih baru. OneDrive adalah sistem penyimpanan cloud dari Microsoft. Paket ini menyediakan klien baris perintah yang berspesialisasi dalam menyinkronkan dengan penyimpanan cloud OneDrive.
Instal dengan:
Saat pertama kali dijalankan, ia meminta Anda untuk mengautentikasi dengan tautan. Setelah otentikasi, Anda dapat mengaktifkan deamon dengan
systemctl --user enable onedrive
dan kemudiansystemctl --user start onedrive
. Penjelasan lebih lanjut dapat ditemukan di halaman manualman onedrive
. Pengaturannya sangat mudah, dan hanya membutuhkan waktu sekitar lima menit.sumber
Meskipun alat asli dan yang umum digunakan
onedrived
oleh xybu masih tidak mendukung OneDrive for Business, tetapi hanya OneDrives pribadi. namun, ada fork proyek ini di GitHub oleh derrix060 yang entah bagaimana bisa berfungsi (tetapi masih bermasalah) untuk klien Bisnis.Lihat file readme proyek untuk instruksi instalasi lengkap, tapi di sini adalah ringkasan singkat:
Instalasi
Pastikan Anda tidak menginstal versi lain
onedrived
(atauonedrive-d
).Instal paket ketergantungan:
Unduh
ngrok
klien terbaru untuk Linux dari situs web resmi di https://ngrok.com/download . Thengrok-client
paket dari repositori Ubuntu terlalu tua dan tidak memenuhi persyaratan.Buka paket
ngrok-stable-linux-amd64.zip
arsip yang diunduh . Ini berisingrok
biner tunggal , yang harus Anda tempatkan di lokasi Anda$PATH
, misalnya ke/usr/local/bin/
.Mendaftar untuk ngrok mungkin tidak perlu.
Instal
onedrived
aplikasi Python3 dari GitHub menggunakanpip3
:Secara opsional konfigurasikan lokasi logfile untuk
onedrived
, di mana Anda dapat memeriksa masalah jika ada yang tidak berfungsi dengan benar, misalnya:Pengaturan akun dan konfigurasi drive
Setelah instalasi berhasil, Anda harus mengonfigurasi akun dan drive Anda:
Tambahkan akun OneDrive for Business Anda menggunakan mode interaktif dengan menjalankan:
Wizard interaktif akan meminta Anda dua kali untuk membuka tautan di browser Anda, tempat Anda harus mengotorisasi aplikasi dengan akun Microsoft Business Anda.
Ini akan meminta Anda untuk menempelkan URL yang Anda arahkan ke setelah mengkonfirmasi otorisasi kembali ke wizard interaktif. Silakan lakukan seperti yang diperintahkan dan ikuti instruksi yang diberikan perintah kepada Anda.
Verifikasi akun berhasil ditambahkan dengan memeriksa output dari perintah di bawah ini. Seharusnya terlihat serupa dan daftarkan akun tempat Anda masuk:
Konfigurasikan drive Anda dalam mode perintah interaktif dengan menjalankan:
Anda akan melihat daftar semua drive Anda dan diminta untuk memasukkan nomor baris drive yang ingin Anda tambahkan ke konfigurasi lokal Anda.
Anda kemudian harus menentukan direktori lokal yang ingin Anda gunakan sebagai folder root untuk menyinkronkan dengan drive Anda. Anda bisa menekan Enterdan itu akan menggunakan default
~/OneDrive
. Jika jalan tidak ada, itu akan dibuat. Hal yang sama untuk jalur ke file abaikan yang ingin Anda gunakan, Anda bisa menekan Enterdan itu akan menggunakan default~/.config/onedrived/ignore_v2.txt
dan membuatnya, jika perlu.Periksa output dari perintah di bawah ini untuk menampilkan informasi tentang semua drive yang tersedia dan dikonfigurasi. Seharusnya menunjukkan drive yang baru saja Anda atur dengan pengaturan yang benar di bawah judul
Drives that have been set up
:Meluncurkan daemon
Sekarang drive Anda sudah dikonfigurasi, Anda perlu mencoba dan memulai
onedrived
daemon. Saya sarankan untuk meluncurkannya dalam mode debug terlebih dahulu, jika ada masalah yang Anda akan lewatkan. Ini akan mulaionedrived
di latar depan:Jika semuanya baik-baik saja dan perintahnya tidak macet dan keluar, coba letakkan beberapa file di folder OneDrive lokal Anda dan lihat apakah itu disinkronkan. Anda mungkin harus dapat memverifikasi bahwa dengan mengunjungi aplikasi web OneDrive di https://www.office.com dan memeriksa apakah file yang Anda tambahkan secara lokal muncul di sana.
Anda dapat keluar dari
onedrived
proses di terminal lagi dengan menekan Ctrl+ C.Untuk meluncurkan secara
onedrived
normal, sebagai daemon latar belakang, jalankan dengan:Anda mungkin harus menambahkan perintah ini ke Aplikasi Startup Anda, sehingga perintah ini mulai otomatis setiap kali Anda masuk. Lihat Bagaimana cara memulai aplikasi secara otomatis saat login? untuk itu.
Wrapper untuk pemberitahuan kesalahan
Jika Anda ingin mendapatkan pemberitahuan desktop setiap kali
onedrived
mencatat kesalahan (mis. Sinkronisasi file gagal), berikut ini adalah skrip wrapper yang mem-parsing file log secara waktu nyata dan menggunakan notify-send untuk menampilkannya kepada Anda.Anda dapat memulai skrip wrapper tanpa argumen (atau memasukkannya ke aplikasi auto-start Anda) alih-alih
onedrived start
perintah.sumber
rclone mendukung OneDrive for Business. Lihat artikel Cara Memasang OneDrive Di Linux Menggunakan Rclone (Mendukung Akun Bisnis Dan Pribadi) - Blog Pemberontakan Linux untuk penggunaan.
Ini adalah contoh saya untuk mengatur remote baru
onedrive1
dengan rclone 1.48.0 (pada Fedora 30):URL drive 0 diakhiri dengan
/ElementinnerHTML
dan tidak berisi file dalam kasus saya.Kemudian pasang di direktori lokal melalui baris perintah, rclone-browser atau web GUI sejak v1.49 .
sumber