लिनक्स पर OneDrive Business / Office 365 को कैसे सिंक करें?


24

Microsoft OneDrive Business / Office 365 Pro 1 टीबी क्लाउड स्टोरेज प्रदान करता है, लेकिन दुर्भाग्य से लिनक्स पर इसे सिंक करने का कोई तरीका नहीं है।


2
उबंटू पूछने के लिए आपका स्वागत है ! हम एक सवाल और जवाब साइट हैं, एक मंच नहीं। वर्तमान में आपके पास निर्दिष्ट प्रश्न अनुभाग में प्रश्न और उत्तर दोनों हैं। कृपया उत्तर निकालने के लिए अपनी पोस्ट को संपादित करें और पोस्ट करें कि उत्तर अनुभाग में नीचे (पृष्ठ के नीचे एक बटन होना चाहिए)। धन्यवाद!
सेठ

जवाबों:


7

वर्तमान में प्रयोगात्मक onedrive-d एक ओपन-सोर्स प्रोग्राम है जो केवल व्यक्तिगत OneDrive खातों को सिंक कर सकता है क्योंकि यह Microsoft Sharepoint लिंक को स्वीकार नहीं करता है। यहां लिनक्स के लिए गुडसंक का उपयोग करके OneDrive Business / Office 365 को सिंक करने की एक विधि है , जो व्यक्तिगत उपयोग के लिए मुफ्त है।

  1. अपने लिनक्स मशीन के लिए उपयुक्त संस्करण स्थापित करें जैसे:

    ./goodsync-linux-x86_64-release.run
    

    GoodSync कनेक्ट सेटअप और GsServer वेब UI दोनों के लिए n o द्वारा उत्तर ।

  2. वेब ब्राउज़र में OneDrive खोलें। दाईं ओर निचले हिस्से में "क्लासिक वनड्राइव पर लौटें" का चयन करें।
  3. आपके ब्राउज़र का वेब पता अब दिखेगा: https://xxxxxxx.sharepoint.com/xxxxxxxxxxx/Documents/Forms/All.aspxऔर उसके आधार पर आपका सिंकिंग लिंक मिलेगा जो होगा office365://xxxxxxx.sharepoint.com/xxxxxxxxxxx/Documents
  4. अपने घर में .goodsync सबफ़ोल्डर में एक नई फ़ाइल बनाएँ:

    gedit ~/.goodsync/jobs.tix
    
  5. फ़ाइल में निम्न कोड दर्ज करें और इसे सहेजें:

    <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>
    
  6. समन्‍वयन प्रक्रिया प्रारंभ करें:

    gsync sync "OneDrive_Sync"
    
  7. इस कदम पर आपका वेब ब्राउज़र OneDrive / Office 365 पेज खोलेगा और आपके प्राधिकरण से आपके खाते तक पहुँच के लिए Goodsync को अनुमति देने के लिए कहेगा। आपके क्रेडेंशियल दर्ज करने के बाद सिंकिंग शुरू हो जाएगी।

सीमाएं: Microsoft 270 से अधिक वर्णों की लंबाई के साथ URL अनुरोधों की अनुमति नहीं देता है और इसलिए GoodSync लंबे पथनाम के साथ फ़ाइलों को सिंक नहीं कर सकता है।

का आनंद लें!


3
मेरा वेब ब्राउज़र चरण 7 पर प्राधिकरण पृष्ठ नहीं खोलता है। किसी भी विचार को मैन्युअल रूप से कैसे करना है?
pat-s

3
मेरा वेब ब्राउज़र लॉगिन करने के लिए भी नहीं खुला
Haha TTpro

2
Office365 में फ़ाइल सिस्टम: /.../ दस्तावेज़ों को नई OneDrive V2 API द्वारा बदल दिया गया है। अपने OneDrive सिंक फ़ोल्डर में पुनः ब्राउज़ करने के लिए ब्राउज़ बटन पर क्लिक करें, क्योंकि नए OneDrive को ब्राउज़र-आधारित प्रमाणीकरण (OAuth2) की आवश्यकता है
फेरोओ

6

Ubuntu 18.04 और बाद में

Ubuntu 18.04 और बाद में डिफ़ॉल्ट Ubuntu रिपॉजिटरी में वनड्राइव क्लाइंट है। OneDrive Microsoft का क्लाउड स्टोरेज सिस्टम है। यह पैकेज OneDrive क्लाउड स्टोरेज के साथ सिंक्रोनाइज़ करने में विशेषज्ञता वाली कमांड लाइन क्लाइंट प्रदान करता है।

इसे स्थापित करें:

sudo apt install onedrive

पहली बार में, यह आपको एक लिंक के साथ प्रमाणित करने के लिए कहता है। प्रमाणीकरण के बाद आप बहरीन को systemctl --user enable onedriveफिर से सक्षम कर सकते हैं systemctl --user start onedrive। आगे की व्याख्या मैनपेज में पाई जा सकती है man onedrive। इसे सेटअप करना बहुत आसान है, और इसमें केवल पाँच मिनट लगते हैं।


4
यह व्यवसाय के लिए OneDrive के लिए काम नहीं करता है
tricasse

1
@tricasse यह ऑफिस 365 प्रो के लिए काम करता है
मटिया_98

2

जबकि onedrivedxybu द्वारा मूल और आमतौर पर इस्तेमाल किया जाने वाला उपकरण अभी भी व्यवसाय के लिए OneDrive का समर्थन नहीं करता है, लेकिन केवल व्यक्तिगत OneDrives है। हालाँकि, GrixHub पर derrix060 द्वारा इस परियोजना का एक कांटा है, जो किसी तरह काम कर रहा है (लेकिन अभी भी छोटी गाड़ी) बिजनेस क्लाइंट के लिए लागू है।

चेतावनी: जब आप इस पद्धति का उपयोग करते हैं, तो मैं हमेशा यह सत्यापित करने की सलाह देता हूं कि फ़ाइलों को https://www.office.com पर ऑनलाइन चेक करके सही ढंग से सिंक्रनाइज़ किया गया है , और / या इस पृष्ठ के अंत में दिखाई गई मेरी आवरण स्क्रिप्ट का उपयोग करें कम से कम डेस्कटॉप सूचनाओं का उपयोग करके किसी भी त्रुटि के बारे में सूचित करें!

कभी-कभी वंचित कुछ बदलाव उठाते हुए या उन्हें सही तरीके से अपलोड करने में विफल लगता है, जिससे आपका OneDrive एक (आंशिक रूप से) अनइंस्टॉल स्थिति में चला जाता है। यह भी हो सकता है कि यह किसी कारण से खुद के साथ मर्ज संघर्ष उत्पन्न करता है और कोष्ठकों में अपने होस्ट नाम और वैकल्पिक रूप से एक नंबर को जोड़कर आपकी फ़ाइलों का स्थानीय रूप से नाम बदल देता है। दुर्भाग्य से त्रुटियों के बारे में कोई सूचना नहीं है, लेकिन आप अपने लॉगफ़ाइल में प्रविष्टियों को देख सकते हैं।

यदि ऐसा होता है, तो आप इसे संबंधित फ़ाइलों को फिर से सिंक्रनाइज़ करने की कोशिश कर सकते हैं जैसे कि उन्हें छूकर या उनका नाम बदलकर या वे जिस फ़ोल्डर में हैं उसका नाम बदल सकते हैं।

युक्ति: ऐसा लगता है कि ऑन्ड्रीवेड लाइब्रेरी में अक्सर ऐसी समस्याएं होती हैं जो सीधे OneDrive रूट में सहेजी गई फ़ाइलों के साथ होती हैं। संभवत: सभी फ़ाइलों को सीधे OneDrive फ़ोल्डर में डंप करने के बजाय उपनिर्देशिकाओं में रखना बेहतर है।

यद्यपि यह बेवकूफी भरा लगता है, मैंने यह भी देखा कि OneDrive वेब क्लाइंट के माध्यम से फ़ाइलों को अपलोड करने के लिए कम समस्याओं का कारण बनता है और प्रतीक्षा करें जब तक कि वे आपके स्थानीय फ़ोल्डर (जो कि कई मिनट लग सकते हैं) को वापस बनाने या कॉपी / स्थानांतरित करने की तुलना में सिंक्रनाइज़ होने तक प्रतीक्षा करें। स्थानीय स्तर पर। चाहे यह व्यावहारिक हो या पूरी तरह से OneDrive का उद्देश्य आपके अपने निर्णय पर निर्भर करता है ...

पूर्ण इंस्टॉलेशन निर्देशों के लिए प्रोजेक्ट की रीडमी फ़ाइल देखें, लेकिन यहाँ एक संक्षिप्त सारांश है:

स्थापना

  1. सुनिश्चित करें कि आपके पास onedrived(या onedrive-d) का कोई अन्य संस्करण स्थापित नहीं है।

  2. निर्भरता पैकेज स्थापित करें:

    sudo apt install build-essential python3-dev libssl-dev inotify-tools python3-dbus libdbus-1-dev libdbus-glib-1-dev
    
  3. ngrokलिनक्स के लिए नवीनतम ग्राहक को https://ngrok.com/download पर आधिकारिक वेबसाइट से डाउनलोड करेंngrok-clientउबंटू खजाने से पैकेज बहुत पुराना है और आवश्यकताओं को पूरा नहीं करता है।
    डाउनलोड किए गए ngrok-stable-linux-amd64.zipसंग्रह को अनपैक करें । इसमें एक एकल ngrokबाइनरी होता है, जिसे आपको अपने स्थान पर रखना चाहिए $PATH, जैसे /usr/local/bin/
    एनक्रोक तक साइन अप करना आवश्यक नहीं है।

  4. onedrivedGitHub से Python3 एप्लिकेशन का उपयोग करके इंस्टॉल करें pip3:

    sudo -H pip3 install git+https://github.com/derrix060/onedriveClient.git
    
  5. वैकल्पिक रूप से के लिए एक लॉगफ़ाइल स्थान कॉन्फ़िगर करें onedrived, जहां आप समस्याओं के लिए जांच कर सकते हैं यदि कुछ भी सही ढंग से काम नहीं करना चाहिए, जैसे:

    onedrived-pref config set logfile_path ~/.config/onedrived/onedrived.log
    

खाता सेटअप और ड्राइव कॉन्फ़िगरेशन

स्थापना सफल होने के बाद, आपको अपना खाता और ड्राइव कॉन्फ़िगर करना होगा:

  1. चलाकर इंटरएक्टिव मोड का उपयोग करके अपने OneDrive को व्यवसाय खाते में जोड़ें:

    onedrived-pref account add -b
    

    इंटरैक्टिव विज़ार्ड आपको अपने ब्राउज़र में एक लिंक खोलने के लिए दो बार पूछेगा, जहां आपको अपने Microsoft व्यवसाय खाते के साथ आवेदन को अधिकृत करना होगा।
    यह आपको उस URL को चिपकाने के लिए कहेगा जिसे आप इंटरएक्टिव विज़ार्ड में वापस प्राधिकरण की पुष्टि करने के बाद पुनर्निर्देशित करते हैं। कृपया बताए अनुसार करें और निर्देश का पालन करें जो आपको देता है।

  2. नीचे दिए गए कमांड के आउटपुट की जांच करके खाते को सफलतापूर्वक जोड़ा गया सत्यापित करें। यह समान दिखना चाहिए और आपके द्वारा लॉग इन किए गए खाते को सूचीबद्ध करना चाहिए:

    $ 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
    
  3. चलाकर अपने ड्राइव को इंटरेक्टिव कमांड मोड में कॉन्फ़िगर करें:

    onedrived-pref drive set
    

    आपको अपने सभी ड्राइव की एक सूची दिखाई देगी और उस ड्राइव की पंक्ति संख्या दर्ज करने के लिए कहा जाएगा जिसे आप अपने स्थानीय कॉन्फ़िगरेशन में जोड़ना चाहते हैं।
    फिर आपको एक स्थानीय निर्देशिका निर्दिष्ट करनी होगी जिसे आप अपने ड्राइव के साथ सिंक्रनाइज़ करने के लिए रूट फ़ोल्डर के रूप में उपयोग करना चाहते हैं। आप बस हिट कर सकते हैं Enterऔर यह डिफ़ॉल्ट का उपयोग करेगा ~/OneDrive। यदि पथ मौजूद नहीं है, तो इसे बनाया जाएगा। जिस फ़ाइल को आप उपयोग करना चाहते हैं, उसे अनदेखा करने के लिए पथ के लिए समान बात, आप बस हिट कर सकते हैं Enterऔर यह डिफ़ॉल्ट का उपयोग करेगा ~/.config/onedrived/ignore_v2.txtऔर यदि आवश्यक हो, तो इसे बना सकता है।

  4. सभी उपलब्ध और कॉन्फ़िगर किए गए ड्राइव के बारे में जानकारी प्रदर्शित करने के लिए नीचे दिए गए कमांड के आउटपुट की जांच करें। यह आपको उस ड्राइव को दिखाना चाहिए जिसे आपने हेडलाइन के तहत सही सेटिंग्स के साथ सेट किया है Drives that have been set up:

    onedrived-pref drive list
    

डेमॉन का शुभारंभ

अब जब आपका ड्राइव कॉन्फ़िगर किया गया है, तो आपको onedrivedडेमॉन को शुरू करने और प्रयास करने की आवश्यकता है । मैं इसे पहले डिबग मोड में लॉन्च करने की सलाह देता हूं, यदि कोई समस्या है तो आप अन्यथा याद करेंगे। यह onedrivedअग्रभूमि में शुरू होगा :

onedrived start --debug

यदि सब कुछ ठीक है और कमांड क्रैश नहीं करता है और बाहर नहीं निकलता है, तो अपने स्थानीय वनड्राइव फ़ोल्डर पर कुछ फाइलें डालने का प्रयास करें और देखें कि क्या यह सिंक्रनाइज़ हो जाता है। आपको संभवतः यह सत्यापित करने में सक्षम होना चाहिए कि https://Doffice.com पर OneDrive वेब एप्लिकेशन पर जाकर और स्थानीय स्तर पर आपके द्वारा जोड़ी गई फ़ाइलों की जाँच की जा रही है।

आप + को onedrivedफिर से दबाकर अपने टर्मिनल में प्रक्रिया छोड़ सकते हैं ।CtrlC

onedrivedपृष्ठभूमि डेमॉन के रूप में सामान्य रूप से लॉन्च करने के लिए , इसे इसके साथ चलाएं:

onedrived start

आपको संभवतः अपने स्टार्टअप एप्लिकेशन में इस कमांड को जोड़ना चाहिए, ताकि आपके द्वारा लॉग इन करने पर यह हर बार ऑटो-स्टार्ट हो। कृपया देखें कि मैं लॉगिन पर स्वचालित रूप से एप्लिकेशन कैसे शुरू करूं? उसके लिए।

त्रुटि सूचनाओं के लिए आवरण

यदि आप onedrivedकिसी त्रुटि को लॉग करते समय डेस्कटॉप सूचनाएं प्राप्त करना चाहते हैं (उदाहरण के लिए फ़ाइल सिंक्रनाइज़ेशन विफल), तो यहां एक आवरण स्क्रिप्ट है जो लॉग फ़ाइल को वास्तविक समय में पार्स करता है और उन्हें आपको प्रदर्शित करने के लिए नोटिफ़िकेशन भेजता है।

आप onedrived startकमांड के बजाय तर्कों के बिना रैपर स्क्रिप्ट शुरू कर सकते हैं (या इसे अपने ऑटो-स्टार्ट एप्लिकेशन में डाल सकते हैं) ।

#!/bin/bash
LOGFILE=~/.config/onedrived/onedrived.log
ICON_START=weather-overcast
ICON_STOP=weather-few-clouds
ICON_ERROR=weather-severe-alert

onexit () {
    onedrived stop
    notify-send -i "$ICON_STOP" "OneDrive" "Wrapper stopped"
    echo "onedrived-wrapper stopped"
}

trap onexit EXIT

onedrived stop
echo "---" >> "$LOGFILE"

onedrived start || {
    echo "Failed to start onedrived!"
    exit 1
}
notify-send -i "$ICON_START" "OneDrive" "Wrapper started"

echo "Monitoring onedrived.log for error messages..."
tail -n 1 -F --pid="$(pgrep -f "onedrived start")" "$LOGFILE" |
    while read LINE ; do
        echo "$LINE"
        if MESSAGE="$(grep -Pio '(?<=ERROR: ).*' <<< "$LINE")" ; then
            notify-send -i "$ICON_ERROR" "OneDrive Error" "$MESSAGE"
        fi
    done

मुझे अब भी यह संदेश मिलता है कि "विफल होने पर अधिकृत करने में विफल: इंटरैक्शन_सेक्स्ड।" ओडीएफबी खाते को प्रमाणित करने के लिए दूसरे लिंक को दर्ज करने के बाद। किसी भी विचार क्यों ऐसा हो सकता है?
जिमकोस

@Jimakos क्षमा करें, मैंने उस संदेश का कभी सामना नहीं किया। दुर्भाग्य से कोई विचार नहीं।
बाइट कमांडर

1

Rclone व्यवसाय के लिए OneDrive का समर्थन करता है। Rclone का उपयोग करके लिनक्स में वनड्राइव कैसे माउंट करें एक लेख देखें (व्यापार और व्यक्तिगत खातों का समर्थन करता है) - उपयोग के लिए लिनक्स विद्रोही ब्लॉग

यहाँ onedrive11.48.0 (फेडोरा 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

ड्राइव 0 का URL समाप्त होता है /ElementinnerHTMLऔर इसमें मेरे मामले में फाइलें नहीं होती हैं।

फिर इसे v1.49 के बाद से कमांड लाइन, आरक्लोन-ब्राउज़र या वेब जीयूआई के माध्यम से स्थानीय निर्देशिका पर माउंट करें ।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.