ฉันจะตั้งค่า Ubuntu บนเซิร์ฟเวอร์ได้อย่างไร


10

ฉันต้องการติดตั้ง Ubuntu One บนเซิร์ฟเวอร์ 11.10 ของฉัน แต่ดูเหมือนว่าจะพบข้อผิดพลาดทุกครั้งที่ฉันพยายามเรียกใช้คำสั่งจากhttp://manpages.ubuntu.com/manpages/lucid/man1/u1sdtool.1.html

ตัวอย่างเช่นเมื่อฉันพยายามเรียกใช้ u1sdtool --startฉันพบกับข้อผิดพลาดต่อไปนี้:

dbus.exceptions.DBusException: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11

ฉันเพิ่งติดตั้ง Ubuntu One และไม่ได้ทำการเปลี่ยนแปลงใด ๆ

คำตอบ:


11

Ubuntu One ต้องการ X และเซสชัน dbus คุณสามารถทำให้มันเป็นแบบหัวขาดได้โดยทำตามคำแนะนำเหล่านี้: https://wiki.ubuntu.com/UbuntuOne/Headless

ใช้งาน Ubuntu One ในโหมด Headless

  1. ติดตั้งแพ็คเกจ ubuntuone-client:

    sudo apt-get install ubuntuone-client 
    
  2. ตั้งค่าไดเรกทอรีผู้ใช้:

    mkdir -p ~/.config/ubuntuone ~/bin 
    

    หากคุณไม่มี ~ / bin เมื่อคุณเข้าสู่ระบบเส้นทางของคุณจะไม่รวมเพื่อแก้ไขการทำงาน (หรือเพียงออกจากระบบและอีกครั้งและอูบุนตูจะตั้งค่าให้คุณ):

    export PATH=$HOME/bin:$PATH 
    
  3. รับรหัส OAuth สำหรับบัญชีของคุณ:

    cd /tmp
    wget http://people.canonical.com/~roman.yepishev/us/ubuntuone-sso-login.py
    python ubuntuone-sso-login.py
    Ubuntu SSO Login: **your Ubuntu SSO Login**
    Password: **your Ubuntu SSO Password**
    oauth=hPQWPsH:rhOokmNiRuuoiHe... 
    
  4. คัดลอกบรรทัดที่ขึ้นต้นด้วย oauth = ถึง ~ / .config / ubuntuone / syncdaemon.conf เป็นพารามิเตอร์ oauth ภายใต้ส่วนหลัก (นี่คือไฟล์ ini-style):

    [__main__]
    oauth=hPQWPsH:rhOokmNiRuuoiHe... 
    

    (คุณอาจลบสองฟิลด์แรกใน oauth-string เช่น oath = aaa: bbb: ccc: ddd => oath = ccc: ddd)

  5. ดาวน์โหลดตัวห่อหุ้ม u1sdtool ซึ่งจะเริ่ม dbus เมื่อจำเป็น โดยค่าเริ่มต้น Ubuntu เพิ่ม ~ / bin / ในพา ธ ของคุณดังนั้นเมื่อคุณเรียกใช้ u1sdtool คุณจะใช้ wrapper

    wget http://people.canonical.com/~roman.yepishev/us/u1sdtool-wrapper -O ~/bin/u1sdtool
    chmod +x ~/bin/u1sdtool 
    
  6. เริ่ม Ubuntu One ตรวจสอบสถานะ Ubuntu One และเชื่อมต่อ (เริ่มจาก Oneiric Ubuntu One กำลังเชื่อมต่อโดยอัตโนมัติเมื่อเริ่มต้น):

    u1sdtool --start
    u1sdtool --status
    State: READY
      connection: Not User With Network
      description: ready to connect
      is_connected: False
      is_error: False
      is_online: False
      queues: IDLE
    u1sdtool --connect 
    

    หากคุณได้รับการต้อนรับด้วยข้อผิดพลาดเกี่ยวกับตัวจัดการการแสดงผลลองใช้การเตรียม u1sdtool ด้วย ~ / bin / เนื่องจากสาเหตุที่เป็นไปได้มากที่สุดคือปัญหาดังกล่าวกับ PATH ของคุณ

  7. ดูที่สตริงตามด้วย "การเชื่อมต่อ" หากมีข้อความว่า "ไม่ใช่ผู้ใช้" ข้อมูลประจำตัวของคุณยังไม่ได้รับการประมวลผลให้หยุดและเริ่ม syncdaemon:

    u1sdtool --quit
    u1sdtool --start
    

    และลองอีกครั้ง

    ถ้ามันบอกว่า "ไม่มีเครือข่าย" มันอ้างว่าคุณไม่ได้เชื่อมต่อกับอินเทอร์เน็ตและฉันต้องแก้ไขปัญหานี้ด้วยการติดตั้ง nmcli (sudo apt apt-get install network-manager - no-install-Recommendends) และซอกับ nmcli คุณอาจต้องติดตั้ง consolekit ด้วย

  8. เริ่มเพิ่มไฟล์ไปยัง~/Ubuntu Oneไดเรกทอรีและ u1sdtool เพื่อเพิ่ม UDF เผยแพร่ไฟล์ ฯลฯ


หากเป็นไปได้อย่าใช้ลิงก์ แต่คัดลอกเนื้อหาไป :)
Rinzwind

ส่วนที่ทำให้ฉันเป็นขั้นตอนที่ 4 ตามที่ syncdaemon.conf ของฉันมีลักษณะเช่นนี้: [การแจ้งเตือน] show_all_notifications = จริง [แบนด์วิดท์ throttling] บน = จริง read_limit = 2097152 write_limit = 102400 [การแจ้งเตือน] show_all_notifications = จริงตอนนี้เมื่อฉันเพิ่มขั้นตอนที่ 4 ไฟล์ที่ด้านบนฉันยังคงพบกับปัญหาตัวจัดการจอแสดงผล
Switchkick

ฉันหวังว่าสิ่งนี้จะได้ผลสำหรับฉัน แต่ฉันได้รับ 'With User Not Network' และฉันไม่รู้ว่าคุณหมายถึง 'fiddle with nmcli' ฉันมีผู้จัดการเครือข่ายอยู่แล้วและการเชื่อมต่ออินเทอร์เน็ตของฉันก็ใช้ได้
Tamale

1

ฉันเพิ่งมีปัญหานี้

ปรากฎว่าเป็นเพราะฉันกำลังเชื่อมต่อกับหน้าจอ + ssh

http://www.rootninja.com/dbus-session-bus-address-with-applications-using-ssh/

การใช้งานนี้สามารถแก้ไขปัญหาได้สำหรับฉัน:

eval `dbus-launch --sh-syntax`

1
เป็นการดีที่คุณจะติดในไฟล์เข้าสู่ระบบของคุณ (.profile, .bash_login, .bash_profile, .zshrc ไม่ว่าจะด้วยวิธีใด) และใส่ไว้ในบล็อก "if [[-z" $ DBUS_SESSION_BUS_ADDRESS "]]" :)
dannysauer

0

ดูเหมือนว่า ubuntuone-syncdaemon จะทำงานกับอินเตอร์เฟสที่ได้รับการจัดการเท่านั้นดังนั้นคุณต้องตรวจสอบให้แน่ใจว่า NetworkManager กำลังทำงานอยู่และมีการเชื่อมต่อเครือข่ายที่มีการจัดการอย่างน้อยหนึ่งเครือข่าย

$ sudo nmctl con

หากเซิร์ฟเวอร์ของคุณมีการกำหนดค่าที่อยู่ IP แบบคงที่คุณต้องแก้ไข/etc/NetworkManager/NetworkManager.confตามที่อธิบายไว้ที่นี่: http://wiki.debian.org/NetworkManager#Enabling_Interface_Management

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.