尽管在启动应用程序中输入了 Dropbox,但它并未自动启动

尽管在启动应用程序中输入了 Dropbox,但它并未自动启动

我在 Dropbox 的启动应用程序中添加了一个条目来运行此命令:
dropbox start -i

登录后,Dropbox 没有启动。不过,当我从终端
运行此命令时, Dropbox 成功启动。dropbox start -i

有没有日志可以查看它无法启动的原因?

答案1

单击屏幕顶部的 Dropbox 图标,点击“首选项”,然后在“常规”选项卡中勾选“系统启动时启动 Dropbox”按钮。

如果这不起作用,请通过命令行方式执行:)

创建 /etc/init.d/dropbox

#!/bin/sh
#dropbox service
DROPBOX_USERS="user1 user2"

DAEMON=.dropbox-dist/dropbox

start() {
   echo "Starting dropbox..."
   for dbuser in $DROPBOX_USERS; do
       HOMEDIR=`getent passwd $dbuser | cut -d: -f6`
       if [ -x $HOMEDIR/$DAEMON ]; then
           HOME="$HOMEDIR" start-stop-daemon -b -o -c $dbuser -S -u $dbuser -x $HOMEDIR/$DAEMON
       fi
   done
}

stop() {
   echo "Stopping dropbox..."
   for dbuser in $DROPBOX_USERS; do
       HOMEDIR=`getent passwd $dbuser | cut -d: -f6`
       if [ -x $HOMEDIR/$DAEMON ]; then
           start-stop-daemon -o -c $dbuser -K -u $dbuser -x $HOMEDIR/$DAEMON
       fi
   done
}

status() {
   for dbuser in $DROPBOX_USERS; do
       dbpid=`pgrep -u $dbuser dropbox`
       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 行更改为你的计算机用户名,而不是 dropbox 用户 DROPBOX_USERS="user1 user2"

在第 5 行确保你在 dropbox-dist 中获得了正确的执行文件

‘DAEMON=.dropbox-dist/dropbox’

我的必须是 DAEMON=.dropbox-dist/dropboxd

然后使脚本可执行并将其添加到系统启动中:

sudo chmod +x /etc/init.d/dropbox 
sudo update-rc.d dropbox defaults

你可以通过以下方式测试脚本

sudo /etc/init.d/dropbox start

相关内容