Как настроить Ubuntu One на сервере?

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 и до сих пор не внес в него никаких изменений.

Switchkick
источник

Ответы:

11

Ubuntu One требует X и сессию dbus. Вы можете заставить его работать без головы, следуя этим инструкциям: https://wiki.ubuntu.com/UbuntuOne/Headless

Запуск Ubuntu One в режиме без головы

  1. Установите пакет ubuntuone-client:

    sudo apt-get install ubuntuone-client 
    
  2. Настройте пользовательские каталоги:

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

    Если у вас не было ~ / bin при входе в систему, ваш путь не включает его, чтобы исправить запуск (или просто выйти и войти снова, и Ubuntu настроит его для вас):

    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):

    [__main__]
    oauth=hPQWPsH:rhOokmNiRuuoiHe... 
    

    (вы также можете удалить первые два поля в oauth-строке, например, oath = aaa: bbb: ccc: ddd => oath = ccc: ddd)

  5. Загрузите упаковщик u1sdtool, который при необходимости запустит dbus. По умолчанию Ubuntu добавляет ~ / bin / к вашему пути, поэтому, когда вы запустите u1sdtool, вы будете запускать оболочку.

    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-get install network-manager --no-install-Recommended) и поиграв с nmcli. Вам также может понадобиться установить consolekit.

  8. Начните добавлять файлы в ~/Ubuntu Oneкаталог и u1sdtool для добавления UDF, публиковать файлы и т. Д.

Роберто Альсина
источник
Если возможно, не используйте ссылки, но скопируйте содержимое :)
Rinzwind
Часть, которая получает меня, это шаг 4. так как мой syncdaemon.conf выглядит следующим образом: [уведомления] show_all_notifications = True [пропускная способность_throttling] on = True read_limit = 2097152 write_limit = 102400 [уведомления] show_all_notifications = True Теперь, когда я добавляю шаг 4 в Файл в верхней части, я все еще сталкиваюсь с проблемой диспетчера отображения.
Switchkick
Хотелось бы, чтобы это сработало для меня, но я получаю «С пользователем, а не с сетью», и я понятия не имею, что вы подразумеваете под «скрипкой с nmcli». У меня уже есть менеджер сети, и мое интернет-соединение в порядке.
Тамале
1

У меня только что была эта проблема.

Оказывается, это потому, что я подключался с помощью screen + 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

Оливер Хулетт
источник