CLI用のインストール方法が書かれた日本語のブログ記事もあったのですが、インストール方法が変わったようなのでメモとして残しておきます。GUIで使ってる人はdebパッケージが用意されているのでポチポチとインストールすることが出来ると思います。
まずDropboxって何よ
Dropboxは複数のマシン間のファイルを共有することが出来るアプリケーション/サービスです。無料で2GBの容量が使うことが出来ます。クライアントアプリケーションはWin/Mac/Linux用のインストーラが用意されており、またiPhone/iPadやAndroidからも使用することが出来ます。Webインターフェースから履歴の管理や削除したファイルを復活させることも出来ます。一度開発中のアプリケーションを間違えてリポジトリごと消してしまい、しかしDropboxでバックアップしていたために復活させて事無きを得たこともありました。他にもデータ共有/バックアップのサービスはいくつかあります。が、シンプルで使いやすく、かつ同期速度も一番速いDropboxを、僕は愛用しています。
Invite your friends to Dropbox!
Dropboxを使っていない人は是非使い始めてみてはいかがでしょうか。上記リンクから登録すると、僕と登録した人2人に250MB増量されて使うことが出来ます。なので、良ければこちらから登録して頂けると嬉しいです。
※登録した人は僕にメールアドレスが分かるようになっています。メールアドレスを知られたくない場合はダミーのアドレスで登録し登録後にメールアドレスを変更するか、または新規登録をお願いします。
環境
Ubuntu 10.04.1 LTS
Python 2.6.5
インストール
Dropboxから圧縮ファイルをダウンロードして展開。
(64bitの場合は http://www.dropbox.com/download/?plat=lnx.x86_64 に読み替えてください。)
cd ~ wget -O dropbox.tar.gz http://www.dropbox.com/download/?plat=lnx.x86 tar -zxof dropbox.tar.gz
はい、これでインストール完了です。
起動は~/.dropbox-dit/dropboxdを叩くだけです。
どうやらユーザーごとに実行ファイルを持つみたいですね。
それでは、起動しましょう。
~/.dropbox-dist/dropboxd &
起動してしばらくするとこんな感じのメッセージが表示されます。
This client is not linked to any account... Please visit https://www.dropbox.com/cli_link?host_id=xxxxx to link this machine.
ここに表示されたURLにブラウザからアクセスするとマシンの認証が完了します。
(ブラウザからアクセスするマシンはどのマシンからでも構いません。)
認証が完了すると~/Dropboxが作成され自動的に同期が始まります。
起動スクリプトを配置
これだけだと起動や停止が面倒なので起動スクリプトを置きましょう。
sudo vim /etc/init.d/dropbox
下記を丸々っとコピペして、DROPBOX_USERSに使用ユーザーを半角スペース区切りで入れてください。
# 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
保存したら、実行権限を付けて、自動起動に登録。
sudo chmod +x /etc/init.d/dropbox sudo update-rc.d dropbox defaults
こんな感じで使います。使用ユーザーが自分だけならsudoは要りません。
$ /etc/init.d/dropbox start Starting dropbox... $ /etc/init.d/dropbox restart Stopping dropbox... Starting dropbox... $ /etc/init.d/dropbox stop Stopping dropbox...
操作用のスクリプトを配置
これで大体は完了しました。ただ、これだけだとファイルが同期済/同期中/未同期なのかよく分かりません。しかし、流石Dropboxさん。操作用のPyhtonスクリプトまで用意してくれてます。早速これを使えるようにしましょう。Pythonが入ってない場合はインストールしてください。
cd ~ mkdir bin cd bin wget -O dropbox.py http://www.dropbox.com/download?dl=packages/dropbox.py chmod +x dropbox.py
Ubuntuなら~/binにパスが通ってると思います。通ってなければ追加してください。
使い方はこんな感じです。
$ cd ~/Dropbox $ dropbox.py help Dropbox command-line interface commands: status get current status of the dropboxd help provide help puburl get public url of a file in your dropbox stop stop dropboxd start start dropboxd filestatus get current sync status of one or more files ls list directory contents with current sync status $ dropbox.py status Idle $ dropbox.py filestatus music: up to date lib: up to date bin: up to date etc: up to date doc: up to date .dropbox: unwatched photo: up to date log: up to date movie: up to date
同期済みのものは「up to date」、同期中のものは「syncing」となるようです。
まとめ
以上、お疲れ様でした。
dropbox.pyがあれば何か便利な定期処理出来そうですね!ლ(>ω<ლ)
この記事に書いた事は、大体下記参考リンク先に載ってることの翻訳ですが、何かお役に立てれば嬉しいです。
困ったことがあればDropboxの公式のWikiを見れば大体解決すると思います。
参考リンク
TipsAndTricks/TextBasedLinuxInstall – Dropbox Wiki
One Trackback/Pingback
[...] インストール部分はほぼこちらのままの方法で行いました。 [...]
Post a Comment