Dropbox, не бегущий за тем, чтобы выходить из системы: init.d по сравнению с dropbox.py

Я наследовался, административный контроль по серверу раньше обрабатывал и обменивался данными между следователями. Мы пытались использовать Dropbox для совместного использования некоторых файлов. Dropbox был установлен, когда я принял сервер, таким образом, он походил на легкий метод. Однако я не могу заставить Dropbox оставаться под управлением последовательно.

Я первоначально связал свою учетную запись с Dropbox с помощью GUI на X сессиях. Я добавил интерфейс cli Dropbox (dropbox.py) и init.d запись для запуска его как демон, с помощью одного из многих примеров, которые я нашел онлайн (в настоящее время init.d, сценарий смоделирован после этого, посмотрите ниже для фактического сценария).

Когда я перезагружаю вызов сервера service dropbox status возвраты, которые это выполняет, но dropbox.py указывает это, не, и ничто не синхронизирует. Если я вручную начинаю использовать dropbox.py, все синхронизирует - но сервис Dropbox сообщает об этом как о не выполнении. Если я вручную запускаю через service dropbox start, сервис сообщает о себе как не выполнение, но dropbox.py сообщает об этом как о синхронизации. Каждый раз, когда я вхожу в систему и фиксирую его, все, кажется, хорошо работает в течение дня или два, но затем это прекращает синхронизировать снова.

Я попытался уничтожить init.d сценарий, удалив все записи и переустановку. Я попытался переустановить Dropbox через командную строку. Я, может казаться, не выясняю то, что проблема, и примеры, которые я нахожу в другом месте, что все предполагают, что сервер работает бездисплейный только (который это не - несколько пользователей, прежде всего, получают доступ к нему через удаленный рабочий стол).

Я не забочусь, запускается ли Dropbox на входе в систему GUI или нет, я просто хочу его работающий в фоновом режиме в любом случае, зарегистрирован ли я или нет. И я определенно не хочу, чтобы это остановилось, если я вхожу в систему (или CLI или X сессий), который я считал, может произойти в зависимости от того, как это запускается первоначально.

(Dropbox 2.10.3, x64, на Ubuntu 12.04.5 LTS)

Какие-либо предложения?

используемый сценарий init.d/dropbox (пример здесь использует фиктивное имя пользователя):

#!/bin/sh
### BEGIN INIT INFO
# Provides: dropbox
# Required-Start: $local_fs $remote_fs $network $syslog $named
# Required-Stop: $local_fs $remote_fs $network $syslog $named
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# X-Interactive: false
# Short-Description: dropbox service
### END INIT INFO

# Replace with linux users you want to run Dropbox clients for
DROPBOX_USERS="my_user_name"

start() {
  echo "Starting dropbox..."
  for dbuser in $DROPBOX_USERS; do
    HOMEDIR=$(getent passwd $dbuser | cut -d: -f6)

    DAEMON=$(find $HOMEDIR/.dropbox-dist/dropbox-lnx.* -name dropboxd)

    if [ -x $DAEMON ]; then
      HOME="$HOMEDIR" start-stop-daemon -b -o -c $dbuser -S -u $dbuser -x $DAEMON -p "$HOMEDIR/.dropbox/dropbox.pid"
    fi
  done
}

stop() {
  echo "Stopping dropbox..."
    for dbuser in $DROPBOX_USERS; do
      HOMEDIR=$(getent passwd $dbuser | cut -d: -f6)

      DAEMON=$(find $HOMEDIR/.dropbox-dist/dropbox-lnx.* -name dropbox)

      if [ -x $DAEMON ]; then
        start-stop-daemon -o -c $dbuser -K -u $dbuser -x $DAEMON
      fi
  done
}

status() {
  for dbuser in $DROPBOX_USERS; do
    dbpid=`ps -u $dbuser -o pid,cmd | grep "$HOMEDIR"/"$DAEMON"\$ | awk '{ print \$1 }'`
    if [ -z $dbpid ] ; then
      echo "dropboxd for USER $dbuser: not running."
    else
      echo "dropboxd for USER $dbuser: running (pid $dbpid)"
    fi
 done
}

case "$1" in

start)
start
;;

stop)
stop
;;

restart|reload|force-reload)

stop
start
;;

status)
status
;;

*)
echo "Usage: /etc/init.d/dropbox {start|stop|reload|force-reload|restart|status}"
exit 1

esac

exit 0
3
задан 11 August 2014 в 20:48

1 ответ

Я использовал сценарий в http://www.dropboxwiki.com/tips-and-tricks/install-dropbox-in-an-entirely-text-based-linux-environment , который работал ранее, но когда я проверяю сегодня, что он не работал.

В конечном счете я нашел что строка

ДЕМОН =. dropbox-dist/dropbox

было нужно изменение на ДЕМОНА =. dropbox-dist/dropboxd

Теперь это работает.

1
ответ дан 18 November 2019 в 05:41

Другие вопросы по тегам:

Похожие вопросы: