DropboxをUbuntuで完全にコマンドラインだけで使う方法

前の記事で,ssh -Xで無理矢理入れる方法を紹介しましたが,あれダメですw なんかいまいちうまく動かないことが多いです.それで,ふと調べていたら Dropbox Wikiの方にまったくXを使わずにインストールして使うためのTIPSが 載っていたので紹介します.

まずは必要なファイルのDL

Dropbox本体と,インストールに使うPythonスクリプトをwgetで落とします.

$ cd ~
$ wget -O dropbox.tar.gz http://dl.getdropbox.com/u/17/dropbox-lnx.x86-0.6.427.tar.gz
$ wget http://dl.getdropbox.com/u/6995/dbmakefakelib.py
$ wget http://dl.getdropbox.com/u/6995/dbreadconfig.py

そうしたら,Dropboxのアーカイブを解凍しておきます.

$ tar zxof dropbox.tar.gz

ダミーを使いながら無理矢理Dropboxをインストールする

ということを実際にはやっていますが,こちらがやることはありがたい スクリプトを走らせて待つだけw ただしgccが必要なので,入れてなかったら入れる.

$ sudo apt-get install gcc
$ python dbmakefakelib.py
adding library libgtk-x11-2.0.so.0
adding library libgdk-x11-2.0.so.0
adding library libatk-1.0.so.0
adding library libgdk_pixbuf-2.0.so.0
adding library libpango-1.0.so.0
... lots more of this ...
adding function g_datalist_clear
dropboxd ran for 15 seconds without quitting - success?

けっこう時間かかるので,注意しましょう.最後にメッセージが出て,~/.dropboxが できます(多分w).そうしたら,ここからlinkに必要な情報を読み出します.

$ python dbreadconfig.py
host_id = ************************************
last_revision = None
schema_version = 6

これが上手く表示されたら,以下のURLのHOSTIDをhost_idに置き換えて 適当なブラウザでアクセスします.どのマシンでもOK.

https://www.getdropbox.com/register?host_id=HOSTID

表示されたページの左側で既に作成しているアカウントをリンクさせれば完了!

最後にDropbox用のディレクトリを自分で作成.

$ mkdir ~/Dropbox

デーモン操作用のスクリプトを作成し登録する

Ubuntuしかわかりませんw

以下のファイルを/etc/init.d/dropboxとして作成.書き込みは管理者権限.

# dropbox service
DROPBOX_USERS="user1 user2"
start() {
    echo "Starting dropbox..."
    for dbuser in $DROPBOX_USERS; do
        start-stop-daemon -b -o -c $dbuser -S -x /home/$dbuser/.dropbox-dist/dropboxd
    done
}

stop() {
    echo "Stopping dropbox..."
    for dbuser in $DROPBOX_USERS; do
        start-stop-daemon -o -c $dbuser -K -x /home/$dbuser/.dropbox-dist/dropboxd
    done
}

status() {
    for dbuser in $DROPBOX_USERS; do
        dbpid=`pgrep -u $dbuser dropboxd`
        if [ -z $dbpid ] ; then
            echo "dropboxd for USER $dbuser: not running."
        else
            echo "dropboxd for USER $dbuser: running."
        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

最初のユーザ名はDropboxを使いたいユーザにすればいいみたい.そうしたら 次のコマンドを実行.

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

これでDropboxが起動しています.既にDropboxを使っていれば勝手にそのファイルが DLされ始めます.起動しているかどうか確認するなら

$ ps -e | grep dropboxd

なんかでいんじゃないでしょうか.

というわけで今度こそ・・・

サーバともDropboxで同期ができるようになりました>< 今回はUbuntu Serverを ゼロから入れた状態で実行してOKだったので,たぶんかなり上手く使えるんじゃない でしょうか.

ちなみに,前回ので失敗が続いていた主な原因は,ViatualBoxのUbuntuでやっていて, ネットワークがMacのインターネット共有でつなげたEthernetにしていたのですが, ここのDNSが壊れているのか,www.getdropbox.comのアドレス解決が全くできない という原因だったりしました.なんなんでしょこれ?別に他のドメインは繋がるのに 特定のドメインだけダメ.しかもhostsに書いてもダメだったし.

ただし,インターネット共有を一旦切断してからすぐつなぎなおせば治るので とりあえず放置.困ったもんだ.

business printing online 11-04-01 (金) 6:53

I’m really loving the theme/design of your blog. Do you ever run into any browser compatibility issues? A couple of my blog readers have complained about my blog not operating correctly in Explorer but looks great in Safari. Do you have any solutions to help fix this problem?


1349 Words

2009-01-29 10:41 -0800

comments powered by Disqus