2009年06月25日

GDMでもsynergyを使う

Synergy超便利だけど、最初に実機からログインしてGnome立ち上げないと使えないから結局クライアント側にもキーボードとマウスが必要なんだよね…と思ってたら、全然そんな事はありませんでした。ちゃんと本家にやり方書いてありましたね。(ちゃんと読め>自分)

Synergy Autostart Guide
http://synergy2.sourceforge.net/autostart.html

というわけで、手元のubuntu 9.04の環境で検証してみました。

まずはGDM起動時にsynergyが立ち上がるように、/etc/gdm/Init/Default のファイルの最後の方(最終行の exit 0 の直前ですね)に以下の記述を追加します。
/usr/bin/killall synergyc
sleep 0.1
/usr/bin/synergyc synergy-server-hostname

続いてGDM終了時(=Gnomeの起動が始まる直前)にsynergyが停止するように、/etc/gdm/PostLogin/Default のファイルの最後の方(最終行の exit 0 の直前ですね)に以下の記述を追加します。
/usr/bin/killall synergyc
sleep 0.1

最後にログイン後のGnome上でsynergyが使えるように、/etc/gdm/Xsession に以下の記述を…と書きたいところなのですが、私の環境ではうまく行きませんでした。プロセスは上がるんですが、サーバ側と通信してくれないんですよね。なのでGDMの設定としては何もせず、Gnomeの自動起動するアプリとしてsynergycを登録しています。(これで問題なく動きます)

これで非常に快適になりました。逆も出来るのかな…と調べてはみたのですが、Windows側をクライアントにすると画面ロックかけたときにsynergy経由でロック解除が出来ないらしく、ちょっと実用に耐えそうにありません。素直にWindowsを親にしときますか…。

sleepを0.1にするアイディアはこちらのサイトから拝借させていただきました。(ありがとうございます!)

Ubuntu/Install/Synergy - やましーウィキ - livedoor Wiki(ウィキ)
http://wiki.livedoor.jp/yamashitatakuya/d/Ubuntu/Install/Synergy

あと、全角/半角キーが効かない問題はこちらのサイトでパッチ適用版が配布されています。(便利に使わせていただいております…ありがとうございます!!)

Synergy - 斜に
http://naname.jp/index.php?Synergy
posted by 月水和尚 (とも) at 15:01 | Comment(0) | TrackBack(0) | Linux(UNIX)全般

2009年06月24日

オフラインでWikipedia検索 Returns!

今さらかもですが、AppStoreでEBPocket free for iPhone/iPod touchを発見!
小躍りしながらインストール。おぉ、動く動く!!

大喜びした勢いで、以前作ったオフラインWikipediaを再作成することにしました。基本的な手順は以前書いた

オフラインでWikiPedia検索
http://bird-memo.seesaa.net/article/88022281.html

と大きく変わりませんが、私の使ってるディストリビューションがGentooからubuntuに代わり、使用させていただくツール類もバージョンが上がっていたので、未来の自分のために改めてメモ。以前の記事で触れた部分は適当に端折って書いてしまうのでご注意下さい>未来の自分。

−重要な追記:2009/06/25−

ubuntu 9.04のperlは64bit整数型(USE_64_BIT_INT)がサポートされていないため、変換作業の最後の方で処理が異常終了してしまいます。perlをセルフビルドしない限り解決策はなさそうです…残念。

ウィキペディアの辞書化 その2 - はけの徒然日記
http://d.hatena.ne.jp/hake/20090516/p1

−重要な追記:ここまで−

まずは下準備として必要なパッケージを導入しておきましょう。今現在の私の環境で追加が必要だったのは zlib1g-dev / perlmagick / mimetex の3つ(とその関連パッケージ)でした。後者2つは数式を含めない設定にすれば必要ないはずです。
sudo apt-get install zlib1g-dev perlmagick mimetex

ビルド環境が整ってない場合はそれも整えておきましょう。(導入するのって build-essential でしたっけ?)

続いてツールの準備。まずは変換ツールであるwikipedia-fpwを導入します。現時点で最新版のファイル名はwikipedia-fpw-20090428-src.tar.gzでした。ダウンロードして、適当な場所に展開します。(私は/workにしました)
cd /work
wget http://ikazuhiro.g.ribbon.to/dic/files/wikipedia-fpw-20090428-src.tar.gz
tar zxvf wikipedia-fpw-20090428-src.tar.gz

ツールのディレクトリとしてwikipedia-fpw-20090428が出来上がります。中に wikipedia-fpw.conf という設定ファイルがあるので、必要に応じて修正します。私が変えたのは以下の2箇所です。
'mimetex' => 'mimetex',
'math_black' => 0,

それ以外の場所はお好みでどうぞ。

続いてJIS X 4081 形式の書籍データ生成ツールであるFreePWINGを導入します。現時点での最新バージョンは1.6でした。以前の手順ではwikipedia-fpwの作者様が作成したパッチ適用版を使用させていただいておりましたが、該当パッチは全て本家FreePWINGにマージされたそうです。
導入は普通のビルド手順どおりなので一気に行きます。
cd /work
wget ftp://ftp.sra.co.jp/pub/misc/freepwing/freepwing-1.6.tar.bz2
tar jxvf freepwing-1.6.tar.bz2
cd freepwing-1.6
./configure
make
sudo make install

最後に辞書の圧縮ツールとしてEB Libraryを導入します。現時点での最新バージョンは4.4.1でした。
導入はこれまたお作法通り。
cd /work
wget ftp://ftp.sra.co.jp/pub/misc/eb/eb-4.4.1.tar.lzma
tar xvf eb-4.4.1.tar.lzma --lzma
cd eb-4.4.1
./configure
make
sudo make install

これで準備完了。いよいよデータの入手と変換に入ります。

まずはデータベースダウンロードのページから最新版のデータを入手します。必要なのはjawiki-latest-pages-articles.xml.bz2というファイルになります。

これを書いている時点でのファイルサイズは938.3MBととっても巨大です。覚悟してダウンロードしましょう。あとダウンロードするファイル、変換するための中間ファイル、最後に出来る辞書ファイルで10GB前後のディスクを消費します。それなりの空きスペースを確保しておきましょう。

ダウンロードして展開し、先ほど準備したwikipedia-fpwのディレクトリに移動します。その際ファイル名は wikipedia.xml に変更しておく必要があります。
cd /work
wget http://download.wikimedia.org/jawiki/latest/jawiki-latest-pages-articles.xml.bz2
bzip2 -d jawiki-latest-pages-articles.xml.bz2
mv jawiki-latest-pages-articles.xml wikipedia-fpw-20090428/wikipedia.xml

では変換作業に入ります。wikipedia-fpwのディレクトリに移動し、以下のコマンドを実行します。
cd /work/wikipedia-fpw-20090428
fpwmake
fpwmake catalogs
fpwmake package

変換にはかなりの時間がかかります。環境にもよりますが、4時間とか5時間とか。慌てず騒がずのんびり待ちましょう。カタログ作成は一瞬、パッケージの作成は最後のZIP圧縮に結構時間がかかります。ただZIP書庫はどうせあとで解凍するので、ZIP書庫作成の段階に入ったらCtrl+cで処理を止めちゃってもOKです。

さて、辞書ファイルが完成したら辞書の圧縮を行います。ZIP書庫が完成してしまった方はあらかじめ解凍しておいてください。ここまでの作業でカレントディレクトリにWIKIPというディレクトリが出来ていると思いますが、これが辞書ファイルの格納先です。ここに移動して、辞書の圧縮を実施します。
mkdir /work/wiki-ebzip
cd WIKIP
ebzip --level 5 --output-directory /work/wiki-ebzip

これでお終い。

作業自体は簡単ですが、とにかく待ち時間が長いです。出来るだけ時間に余裕があるときに実施されることをお勧めします。変換作業などは夜にスタートしてそのまま寝ちゃうくらいでいいかもしれません。

ツール作者の方々に感謝いたします。ありがとうございました。
posted by 月水和尚 (とも) at 16:05 | Comment(0) | TrackBack(0) | iPod Touch

2009年06月22日

iPod Touchで電子辞書 - もし専用機と戦わば -

iPod Touch関係の情報源としていつもお世話になっているAppBankさんに、キャンペーンで「ウィズダム和英・英和」の購入資金を援助していただきました。(ありがとうございます!)

早速購入していろいろと使ってみたのですが、AppBankさん他いろいろな方々が絶賛している理由がよく分かりました。検索のしやすさ、結果の見やすさ、なぞり検索によるジャンプなど、使っていて本当に「便利だぁ」と思わせられる事ばかり。各所での高評価も頷けます。

iPhoneユーザによるiPhoneアプリとしてのレビューはAppBankさんを始め秀逸なものがたくさんありますので、私はちょっと見方を変えて、非iPhoneユーザが新規に電子辞書を購入する事を想定して「iPod Touch + ウィズダム和英・英和」vs「電子辞書専用機」という形でレビューを書いてみたいと思います。勝ち負けを決めると言うよりは、両者のいいところ、得手不得手を洗い出せたらいいなと思ってます。使えるコンテンツ数は今回評価対象にはしない事にしました。最近の専用機は辞書が100入ってるとかちょっと尋常じゃないので。あくまで英語の辞書としての勝負という事でよろしくお願いします。(一部国語辞典だけは触れますが)

(長いので続きは折り込みます)
posted by 月水和尚 (とも) at 02:47 | Comment(0) | TrackBack(0) | iPod Touch

2009年05月05日

FirefoxでBackspaceの挙動を調整する

FirefoxでのBackspaceはどんな環境でも「履歴を戻る」だと思い込んでました…。
実はubuntu 9.04Firefox 3.0.10の環境だと「何もしない」のがデフォルトみたいです。

Backspaceの挙動を変えるためには about:configbrowser.backspace_action の値を変更します。
0 - ページの履歴を戻る
1 - ページをスクロールアップ
2 - 何もしない

私の場合は履歴を戻ってほしいので 0 をセットします。

以下のサイトを参考にさせていただきました。(ありがとうございます!)

Firefox: バックスペースの動作 - えむもじら
http://level.s69.xrea.com/mozilla/index.cgi?id=20070620_BackSpace
posted by 月水和尚 (とも) at 21:34 | Comment(0) | TrackBack(0) | Firefox

2009年05月02日

DebugHacks&Tシャツ欲しい

『Debug Hacks』の書籍とTシャツがもらえると聞いてすっ飛んできました。

『Debug Hacks』とTシャツが当たるプレゼント
http://d.hatena.ne.jp/hyoshiok/20090430#p1

Debug Hacks Nightは5/28ですか。
6/5まで地獄のスケジュールだから行けそうにないなぁ…残念。
posted by 月水和尚 (とも) at 16:46 | Comment(0) | TrackBack(0) | その他もろもろ

PrismでGoogle Gears

Gmailのオフライン機能がPrismでも使いたい!
ということで、Google GearsをPrismに組み込む方法について。
たぶんWindowsでも出来ると思いますが、とりあえずLinux用の手順です。
(WindowsではGoogle系のサービズはChromeを使ってるもんで)

まずはFirefox用のGoogleGears拡張ファイルを以下のリンクから入手します。
http://dl.google.com/gears/current/gears-linux-opt.xpi

ダウンロードしたxpiファイルを適当な書庫マネージャ(私はGNOME環境だったのでFile Rollerでした)で開き、中から install.rdf ファイルを取り出します。

これまた適当なエディタ(私の場合はgedit)でファイルを開き、em:targetApplicationタグで囲まれている部分を以下のように修正します。
<em:targetApplication>
<Description>
<em:id>prism@developer.mozilla.org</em:id>
<em:minVersion>0.8</em:minVersion>
<em:maxVersion>1.0.0.*</em:maxVersion>
</Description>
</em:targetApplication>

修正が完了したら、修正したファイルをxpiファイルの中に戻します。(つまりオリジナルを上書きします)

あとはPrismのメニューから「Tools -> Add-ons」と選び、アドオン画面から「Install...」をクリックして先ほどのxpiファイルを指定すれば完了です。

Prismの再起動時に「このバージョンには対応してないから動かないぜ!」と警告が出ますが、無視して使うと使えます。(笑) 実際アドオン画面にGoogleGears拡張は表示されないので、Prism的にはうまく組み込めてないんでしょう。ただその状態でもGmailのオフライン機能はきちんと動くので、私は気にしないことにしています。

Prismも早くMozilla Labsを卒業して正式版になってくれるといいんですけどねぇ。これだけブラウザからいろんなサービスが使えると、PrismとかChromeのアプリケーションショートカットみたいな機能ってすごく便利だと思うんです。データはクラウドの中に溶け込んでいて、使う側はハードウェアとかプラットフォームに依存せずにいつでも自分のデータにアクセスできるってのはものすごく魅力を感じます。(セキュリティの問題とかはあるにしろ)

個人的には、以下のサービスを使って可能な限り特定の環境(特定のPCと言うべきですかね)に依存しない事を目指してます。

・Google系サービス(Gmail、カレンダー、ノートブック、Docs)
Dropbox (紹介記事はこちら)
Instapaper
Xmarks

便利な世の中になったもんです。(しみじみ)

元ネタは以下のサイトより。(感謝!)

Brain Dump: Google Gears in Prism
http://douglasjmeyer.blogspot.com/2008/09/google-gears-in-prism.html
posted by 月水和尚 (とも) at 16:29 | Comment(0) | TrackBack(0) | Firefox

2009年04月01日

BluetoothキーボードでCtrlとCapsを入れ替え

果たしてこんな需要あるのかどうか…。
N810に接続したBluetoothキーボードでCtrlとCapsを入れ替える方法。
(ちなみに私が入手したのはリュウドのRBK-2000BTII。N810と組み合わせると非常に快適なモバイル物書き環境が!)

方法は至って簡単。
/usr/share/X11/xkb/symbols/pc に以下の1行を付け加えるだけ。(root権限が必要になりますのでご注意を!)
include "ctrl(swapcaps)"

ただし追加する場所はどこでもいいわけではなくて、上記のinclude文でCAPSLCTLの既存定義を上書きするので、CAPSLCTLが定義された後に書いておく必要があります。key <MENU>の後、modifier_mapの前くらいがちょうどいいのではないでしょうか。

変更が完了したらコントロールパネルからBluetooth Keyboardを選択し、そのままOKを押して終了すれば定義が反映されるはずです。

たぶんBluetooth接続じゃなくてUSB接続でも大丈夫と思われます。
あと頑張ってjpの定義ファイルも作れば日本語キーボードも配列どおりに使えるようになると思われます。
(どっちも試してません…)

ちなみにNokia純正のSU-W8をカスタマイズする場合は /usr/share/X11/xkb/symbols/nokia_vndr/su-8w が、内蔵キーボードの場合は /usr/share/X11/xkb/symbols/nokia_vndr/rx-44 がカスタマイズ対象になります。

もうちょっと使い込んでみて、さらに使いやすいカスタマイズをしたいところ。余ってるSuperキーをZenkaku_Hankakuにしたら幸せになれるのかな?

毎度おなじみmoyashiさんのひとりぶろぐにある以下のエントリを参考にさせていただきました。いつもありがとうございます!!

ひとりぶろぐ: [N810]NOKIA N810のキーボードカスタマイズ
http://moyashi.air-nifty.com/hitori/2008/01/n810nokia_n810_0cc3.html


−追記:2009/04/02−

どうやら原因はxbindkeysかukeyboardだったみたいです。
両方ともアンインストールしたら問題なく動くようになりました。
(どっちが本当の原因かは検証してないです…すいません)


−追記:2009/04/01−

BT接続が切れると設定が毎回リセットされてしまうことが判明。
接続するたびにコントロールパネルを開くのはあまりにも面倒。
何か良い回避策はないものでしょうか…。
posted by 月水和尚 (とも) at 14:36 | Comment(7) | TrackBack(0) | N810

2009年03月19日

ルートファイルシステムにInternal memory cardを使う

N810の内蔵メモリは256MB。
色々インストールすると、結構すぐに一杯になってしまいます。
Internal Memory Cardは2GBもあるのに…と悔しがっていたら、KimitakeさんがInternal Memory Cardをルートファイルシステムにする方法を教えてくださいました。(感謝!)

以下の3つのサイトを参考にしつつ、実際に試してみます。

Boot from MMC for N800 - Kimitake's blog
http://kimitakeblog.net/item/500

Booting from a flash card - maemo.org wiki
http://wiki.maemo.org/Booting_from_a_flash_card

Partitioning a flash card - maemo.org wiki
http://wiki.maemo.org/Partitioning_a_flash_card

この先の手順で使用するいくつかのパッケージはデフォルトで設定されているリポジトリには入っていないものがあります。なので以下のリポジトリをパッケージマネージャから追加しておいてください。
Catalogue name : Maemo Chinook
Web address : http://repository.maemo.org/
Distribution : chinook
Components : free non-free

ついでにmaemo ExtrasDisabledのチェックを外しておきましょう。

ここから先、全ての作業はrootで実施してください。
rootの取得はopensshをインストールするのが一番簡単だと思います。
(作業もみんなリモートから出来ますし)

まずはパーティショニングのためにe2fsprogsをインストールします。
apt-get install e2fsprogs

パーティショニングの対象となるInternal Memory Cardをumountします。中身はきれいさっぱり消してしまうので、必要なファイルがあれば別の場所にコピーしておくのをお忘れなく。
umount /dev/mmcblk0p1

ではパーティションを切りましょう。
sfdisk /dev/mmcblk0

するとディスクの現状態が表示され、最後に
/dev/mmcblk0p1 :

と表示されていると思います。これが第1パーティションの設定プロンプトになります。第1パーティションは512MBのVFATにしたいので、以下のとおり入力します。
/dev/mmcblk0p1 :1,16384,6
/dev/mmcblk0p1 1 16384 16384 524288 6 FAT16
太字の部分が入力した内容です。
同様に第2パーティションも設定します。こちらは残り(約1.5GB)のext2です。
/dev/mmcblk0p2 :16385,,
/dev/mmcblk0p2 16385 61439 45055 1441760 83 Linux
第3、第4パーティションは設定しないので何も入力せずにEnterを押してください。私の環境だと何故か第3パーティションが出来てしまうんですが、気にしないことにしています。
最後にディスクに書いていいか聞かれますので、yを入力します。
Do you want to write this to disk? [ynq] y

これでパーティショニングは完了したので、一度再起動します。
reboot

第1パーティションは自動でマウントされている(はず)ので、umountします。
umount /dev/mmcblk0p1

先ほど作成したパーティションをフォーマットします。
mkdosfs /dev/mmcblk0p1
mke2fs /dev/mmcblk0p2

続いてbootmenuをインストールします。
まずはインストールで必要になるwgettarをインストールしましょう。(tarは標準で入っているbusyboxのものだとうまく行かないのでこちらのバイナリを使用します)
apt-get -y --force-yes install wget
mkdir -p /home/user/bin
cd /home/user/bin
wget http://www.nmacleod.com/nokia/bin/tar
chmod +x tar

bootmenuをダウンロードし、ファイルを展開します。
cd /home/user/bin
wget http://fanoush.wz.cz/maemo/initfs_flasher.tgz
tar zxvf initfs_flasher.tgz
cd /home/user/bin/initfs_flasher/

bootmenuをカスタマイズするために、設定ファイルを記述します。
cp bootmenu.conf.n8x0.example bootmenu.conf
vi bootmenu.conf

内容はこんな感じにしました。
(先々を考えてExternal memory cardからもboot出来るようにしてます)
# bootmenu customisation file

# timeout for automatic selection when no key is pressed
MENU_TIMEOUT=3

# menu items
MENU_MIN=1 # first item index

#no need to redefine
#MENU_1_NAME="Internal flash"
#MENU_1_ID="flash"

MENU_2_NAME="Internal MMC card, partition 2, ext2"
MENU_2_ID="mmc2"
MENU_2_DEVICE="${INT_CARD}p2"
MENU_2_MODULES="mbcache ext2"
MENU_2_FSTYPE="ext2"
MENU_2_FSOPTIONS="noatime"
[ -d "/sys/block/${INT_CARD}/${MENU_2_DEVICE}" ] || MENU_2_NAME="(${MENU_2_NAME}) N/A"

MENU_3_NAME="External MMC card, partition 2, ext3"
MENU_3_ID="mmc1"
MENU_3_DEVICE="${EXT_CARD}p2"
MENU_3_MODULES="mbcache jbd ext3"
MENU_3_FSTYPE="ext3"
MENU_3_FSOPTIONS="noatime" #",data=writeback"
[ -d "/sys/block/${EXT_CARD}/${MENU_4_DEVICE}" ] || MENU_4_NAME="(${MENU_4_NAME}) N/A"

MENU_4_NAME="Power off (when not on charger)"
MENU_4_ID="off"

#last item index, change if you add/remove items
MENU_MAX=4

initfsを作成します。
./initfs_flash

途中で色々聞かれますが、全部yesと答えてしまってOKです。
作成にはそこそこ時間がかかります。のんびり待ちましょう。
最後にrebootを求められるので、素直に従いましょう。

再起動したら、デフォルトのブートデバイスを設定します。
chroot /mnt/initfs cal-tool --set-root-device ask:mmc2

内蔵メモリにある現在のシステムを全てInternal memory cardにコピーします。
mkdir /mnt/mmc2
mkdir /mnt/internal
mount /dev/mmcblk0p2 /mnt/mmc2
mount -t jffs2 /dev/mtdblock4 /mnt/internal
/home/user/bin/tar cf - -C /mnt/internal . | /home/user/bin/tar xvf - -C /mnt/mmc2

コピーが終わったらumountして再起動しましょう。
umount /mnt/mmc2
umount /mnt/internal
rmdir /mnt/mmc2 /mnt/internal
reboot

うまく行っていれば再起動後にbootmenuが出てくるはずです。
Internal MMC card, partition 2, ext2を選択してEnterを押してください。
(押さなくても3秒でタイムアウトして起動してくるはずですが)

さて、ルートファイルシステムが大きくなったか確認してみましょう。
df -h
/dev/mmcblk1p2 1.4G 245.6M 1.0G 19% /
こんな感じに表示されればOKです。(他にもいろいろ出ますが)

ちょっと気になる事が1つ。内蔵→Internal Memory Cardとシステムを移動すると、ディスクの使用量が倍くらいに跳ね上がってしまうんです。これってファイルシステムのブロックサイズの問題とか、そういう理由なんですかね?まぁそれを補って余りあるくらいパーティションサイズは大きくなるのでいいんですけど。

上記の作業中、もし運悪くN810が起動しなくなってしまった場合(私も一度なりました)は、慌てず騒がず本体の初期化をしましょう。初期化用のツール(本来の用途はSoftware Updater)は以下で提供されています。

Nokia USA - Software update - Nokia N810 support
http://www.nokiausa.com/A4686323

ツールをダウンロードしてインストールしたら、

1.N810の電源を切る(切れなければ電池抜く)
2.十分に充電したらACアダプタを外す
3.Software Update Wizardを導入したPCにUSBケーブルで接続する
4.Swapキー(左側の四角が2つ重なったアイコンのヤツ)を押しながら電源ON
5.PC側でSoftware Update Wizardを起動する
6.指示に従ってアップデート開始

とすれば元に戻ります。Don't panic!
ちなみに戻しの手順はいつもこちらのページを参考にさせていただいております。(感謝!)

サルにもわかるN810(OSアップデート) - 一口! - Yahoo!ブログ
http://blogs.yahoo.co.jp/hinoe_uma66/12835323.html

Enjoy! ;-)
posted by 月水和尚 (とも) at 16:29 | Comment(3) | TrackBack(0) | N810

2009年03月10日

Dropboxが超便利!

オンライン同期サービスのDropboxが超便利!
個人的にずっとオンラインストレージに対して不満に思っていた、

・ネットワークに繋がってないと使えない
・都度ファイルをダウンロードすることになるので重い
・サービスが消滅したらファイルは全滅?


という部分が見事に解消されています。素晴らしい。

所謂オンラインストレージの場合、データはネットワーク上に持ちます。それをドライブとしてマウントしたり、専用のソフトで扱ったり、ブラウザからアクセスしたりすることになると思います。常にネットワークを利用し、常に最新のファイルがサーバ上にしか存在しないため、上に書いたような不満を感じてました。(ローカルキャッシュするとか色々工夫しているサービスもありますが、あまり根本的な解決策にはなっていない)

これがDropboxの場合、データは基本的にローカルに持ちます。そのためネットワークに繋がってなくてもファイルは利用可能ですし、アクセス速度もローカルHDDと同等。(当たり前ですなね)

では何がオンラインなのかというと、Dropboxではある特定のディレクトリ配下を監視して、ファイルに変更があった場合に変更内容をサーバにアップロードする、という動作をします。アップロードは自動で行われますし、ネットワークに繋がっていない場合はアップロードを待機して、あとでネットワークに繋がったときに溜まっていた変更分をまとめてアップロードしてくれます。

アップロードされたファイルはサーバに保管されるだけではなく、他の同期対象のPCに対して自動的に配信されます。もちろん、ネットワークに繋がってない(電源すら立ち上がってない)場合でも全然問題なくて、ネットワークに繋がった(電源が立ち上がった)あとで最終更新からの変更分をまとめてダウンロードしてくれます。同期対象のPCが全て同じ状態に保たれてくれるため、隔地バックアップみたいな効果も生まれると思います。

もちろん、普通のオンラインストレージのようにブラウザ経由でファイルを取り出すことも可能ですし、自動でバージョン管理もしてくれているので過去日付のファイルを取り出すことも可能です。そしてブラウザ経由ならiPhone/iPod Touchからでもアクセスできます。(実はやったことないんですが)

同期用のクライアントもWindows、Mac、Linuxと対応されているので、マルチプラットフォーム環境でのファイル同期も思いのままです。

…と、ここまでいいことずくめで書いてきたDropboxですが、1つだけ注意点。それは、所謂オンラインストレージと違い、利用可能なストレージが増えることはないという点。データは全部ローカルにあり、サーバではその最新版を保管、複数拠点での同期、バージョン管理をしているだけなので、追加ディスク的な使い方は出来ません。個人的には全然問題ないんですが、例えばNetbookを使っていてローカルストレージが16GBしかないのでオンラインで増量を!と言うようなニーズには残念ながら向きません。ご注意下さい。

個人的には使用頻度の高いファイル(例えばメモ書きとか)はDropbox、それほど使わないけどどこからでも利用できると便利なファイル(例えばマニュアルとか)はオンラインストレージと、それぞれのサービスの利点を理解してうまく使い分けるのが一番いいのではないかなと思ってます。

Dropboxのサービスは2GBまでは無料で使えます。有料版は50GBまで。私は持ち歩きたいデータはそんなにないので、無料版のまま使わせてもらってます。今だと紹介キャンペーンをやっていて、以下のリンクからユーザ登録していただけると+250MBのスペースがもらえます。(つまり2.25GB使えることになる)

https://www.getdropbox.com/referrals/NTQ4NzM3Mzk

ちなみに登録していただけると、私にも+250MBのスペースがいただけます。自分だけもらえるんだと紹介リンクもやらしいかな…と思ったんですが、お互い幸せになれるのであえてご紹介。アフェリエイトっぽいのは嫌い!という方は、もちろん普通に登録していただいても問題ないですよ。

最後に念のための注意点を1つ。

通信はSSLで暗号化されていますし、サーバ側もそれなりのセキュリティ対策をしているとは思いますが、インターネットを介したサービスである以上情報漏洩のリスクがないとは言い切れません。それこそシステム的にものすごい強固であっても、自分が設定したパスワードの強度が低ければ不正ログインされる可能性だってありますし。

なのでDropboxでどんなファイルを同期するかについては、ご自身でしっかりと考えていただきますようお願いいたします。インターネットは怖いところなので、最後に自分を守るのは自分自身です。(これは自戒の意味も込めて)

…とは言え、私はある程度名の知れたサービスは基本的に信じることにしているので、それなりに重要なファイルでもあまり気にせず同期対象にしてしまっていますが。カード番号を書いたテキストファイルはさすがにやめとこうかな、とかその程度ですね。(全然自戒してない>自分)

単独PC上にあるデータのオンラインバックアップとして、会社と自宅のPCの同期用として、他にもいろんな使い方が考えられると思います。個人的には一押しのサービスなので、興味がある方は是非とも使ってみてください。何と言っても、無料ですしね!
posted by 月水和尚 (とも) at 11:24 | Comment(0) | TrackBack(0) | Webサービス

2009年03月09日

VMware Infrastructure Clientをubuntuで動かす

最近VMware ESXiがすごくお気に入りです。

それまではずっと仮想化=Xenの人だったのですが、各ディストリビューションでのXenのサポートがあまり進んでない(むしろ最近後退すらしているような気が…)のと、ESXiがあまりにもさくさく使えるのと相まって、すっかり浮気気味です。(もちろんXenの方が便利なシーンもたくさんあるのですが)

ただESXiのネックは、専用の管理クライアントが必要なこと。Xenのように実機のコンソールからログインしてCUIレベルでさくさく管理というわけにはいきません。(コンソールからログインも出来るらしいのですが、unsupportedな手順になってしまうので)

さらに困った事には、管理クライアントであるVMware Infrastructure ClientはWindowsでしか動きません。ESXi上のサーバにLinuxしか使わない環境でもWindowsが必須なんてあんまりだ…。

というわけで、VMware Infrastructure ClientをLinuxで動かしてみました。こちらで検証した環境はubuntu 8.04ですが、特にubuntuに特化した事はしてないと思うので他のディストリビューションでも似たような手順で実現可能だと思われます。

基本的な手順はこちらの内容を参考にさせていただきました。

vmware infrastructure client on ubuntu … an update
http://www.virtualinsanity.com/index.php/2009/02/02/vmware-infrastructure-client-on-ubuntu-an-update/

まずはWineをインストールするのですが、公式リポジトリにある1.0ではうまく動いてくれないため、WineHQにある最新の開発版(2009/03/09時点で1.1.16)をインストールするために、以下の2つのコマンドを実行します。
wget -q http://wine.budgetdedicated.com/apt/387EE263.gpg -O- | sudo apt-key add -
sudo wget http://wine.budgetdedicated.com/apt/sources.list.d/hardy.list -O /etc/apt/sources.list.d/winehq.list

これで最新の開発版が使えるようになりました。
いつものようにWineをインストールします。
sudo apt-get install wine

続いてWineの導入補助スクリプト(という表現でいいのかな?)であるwinetricksを導入します。導入と言っても、スクリプトをダウンロードしてくるだけなので以下のコマンド1つだけでOKです。
wget http://www.kegel.com/wine/winetricks

保存する場所はたぶんどこでも大丈夫です。
そうしたらwinetricksが利用するcabextractも導入します。
sudo apt-get install cabextract

winetricksを使って必要なWindowsコンポーネントを導入します。
sh winetricks dotnet20 ie6 winxp

途中で(Windowsユーザには)見慣れたダイアログボックスが出てくると思うので、普通にインストールを進めちゃってください。

以上でクライアントを導入する環境は整いました。ESXiが稼働しているサーバから、クライアントアプリをダウンロードしてインストールします。(普通にexeファイルをダブルクリックすればWineが良きに計らってくれます)

これで準備万端…と言いたいところなのですが、どうもWineの通信関連に問題があるらしく、クライアント−サーバ間の通信にSSL(HTTPS)を使うとクライアント側が落ちてしまうとの事。HTTPで通信しようとしてもデフォルトではHTTPSにリダイレクトされてしまいます。そこでHTTPでのアクセスを可能にするためにサーバ側の設定を変更します。これは正規の手順ではないので、本番稼働中のサーバなど、ダウンが許されないサーバでは絶対に行わないでください

まずはESXiにコマンドレベルでログインします。そのために、ESXiが稼働している実機のコンソールにてAlt+F1を押します。するとコマンドっぽい画面(表現下手でスミマセン…)に変わるので、キーボードからunsupportedと打ち込んでEnterを押します。打ち込んだ文字は画面には表示されませんが、気にしないでください。するとパスワード入力のプロンプトが表示されるので、サーバ導入時に設定したパスワードを入力してEnterを押します。無事に完了すると、見慣れたLinuxのコマンドプロンプトが現れます。

ここで修正すべきファイルは /etc/vmware/hostd/proxy.xml で、ファイルに記述されている httpsWithRedirecthttpAndHttps に変更します。viなどで普通に変更されてもいいですが、たぶん以下のコマンドを実行すれば意図したとおりに変更されると思います。
cd /etc/vmware/hostd
cp proxy.xml proxy.xml.org
sed 's/httpsWithRedirect/httpAndHttps/' proxy.xml.org > proxy.xml

修正が完了したらESXiを再起動しましょう。
reboot

再起動が完了したら、いよいよクライアントから接続します。
IP Address / Nameの部分は通常IPアドレスだけ記述すればOKなのですが、それだとHTTPSで通信を始めてしまうため、明示的に http://xxx.xxx.xxx.xxx とプロトコル名込みで記述してください。ここまで全ての手順が正しく完了していれば、VMware Infrastructure Clientが無事に起動してくれると思います。

まだざっとしか使っていませんが、現時点で分かっている不具合は以下のとおりです。

・Consoleが使えない
・右クリックが軒並み全滅
・Getting Startedの表示がおかしい

Getting Startedは設定で消せちゃうようなタブなので特に影響はなく、右クリックに関してもメニュー等別の方法で目的の処理までたどり着けるようなのですが、Consoleが使えないのはちょっと致命的。Linuxクライアントから新しいVMを作るのはちょっと無理のようです。トラブルシューティングなども最後はコンソールからの操作が頼りなので何とか解決してくれるといいんですが、今のところどうしようもないみたいです。ひょっとしたらWineのバージョンが上がったら解決するかも…と淡い期待。(それよりも本家VMwareからLinuxクライアントが出てほしいところですが)

とは言え、とりあえずVMの操作やリソース状態の確認、データストアの操作などは問題なくできるので、それなりに利用価値はありそうです。通常の運用端末はLinuxにしておき、いざという時は別途WindowsPCを持ち込んで対処するとか。(少なくともWindowsのライセンス数の削減には貢献できそう)

ワッサーで助言を下さった@kimitakeさん、@umqさん、@naru01さん、ありがとうございました!
posted by 月水和尚 (とも) at 15:20 | Comment(0) | TrackBack(0) | ubuntu