我在 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