헤드리스 우분투 서버 14.04. Dropbox를 설치했습니다(여기에 설명된 대로).http://ubuntuserverguide.com/2012/06/how-to-install-and-configure-dropbox-on-ubuntu-server-12-04.html) 부팅 시 시작되도록 init.d에 스크립트를 추가합니다. ### BEGIN INIT INFO [...] ### END INIT INFO 콘텐츠를 파일에 추가해야 한다는 사실을 알기 전까지 처음에는 몇 가지 문제가 있었습니다. 그래도...
이제 부팅 시 시작됩니다.
myuser@unas14:~$ service dropbox status
dropboxd for USER myuser: running (pid 14108)
하지만 Dropbox 폴더의 파일은 여전히 동기화되지 않습니다. 루트로 서비스 명령을 실행해 보았습니다.
myuser@unas14:~$ sudo service dropbox status
[sudo] password for myuser:
dropboxd for USER myuser: not running.
그런 다음 공식 Python 스크립트를 실행하십시오(여기에서).https://www.dropbox.com/download?dl=packages/dropbox.py)
myuser@unas14:~$ ./dropbox.py status
Dropbox isn't running!
myuser@unas14:~$ ./dropbox.py start
Starting Dropbox...Dropbox isn't running!
Done!
myuser@unas14:~$ ./dropbox.py status
Starting...
myuser@unas14:~$ sudo service dropbox status
dropboxd for USER myuser: running (pid 14272)
그러면 제가 아닌 다른 사용자를 위해 Dropbox가 실행되고 있는 것 같은데, 여전히 내 사용자를 위해 실행 중이라고 나오나요? 정말 혼란스러워요. Dropbox를 수동으로 시작하면 모든 것이 잘 작동합니다. 물론 다음 재부팅 때까지 수동으로 다시 시작해야 합니다.
어떤 피드백이라도 환영합니다. 미리 감사드립니다. :)
John Smith에게 답장: (댓글에 코드 형식을 사용할 수 없기 때문입니다)
myuser@unas14:~$ ps -ef|grep dropbox
myuser 1896 1837 0 12:25 pts/0 00:00:00 grep --color=auto dropbox
myuser@unas14:~$ ./dropbox.py start
Starting Dropbox...Dropbox isn't running!
Done!
myuser@unas14:~$ ps -ef|grep dropbox
myuser 2246 1 82 12:49 ? 00:00:04 /home/myuser/.dropbox-dist/dropbox-lnx.x86-2.10.52/dropbox
myuser 2276 1837 0 12:49 pts/0 00:00:00 grep --color=auto dropbox
이것은 내 초기화 스크립트입니다.
#! /bin/sh
#
# init script for the dynamic DNS service update utility: dropbox
### BEGIN INIT INFO
# Provides: dropbox
# Required-Start: $local_fs $remote_fs $network $syslog
# Required-Stop: $local_fs $remote_fs $network $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: sync dropbox files
### END INIT INFO
# dropbox service
# Replace with linux users you want to run Dropbox clients for
DROPBOX_USERS="myuser"
DAEMON=/home/myuser/.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