2009/10/24

IdeaPad S9e へ Windows7 をインストールしました

10月22日、Windows7 リリース版が発売されました。

β、RC と VMware Fusion 上で試用してみましたが、なかなか良い感触を得たので、Windows XP Home のインストールされている IdeaPad S9e へ、Windows 7 Home Premium(32bit) をインストールしてみることにしました。



XP 環境を復活させる可能性を考慮し、今回はディスク自体を換装した上で新規インストールすることにしました。なお、XPから7へのアップグレードでは、必ず新規インストールが必要になります

換装したディスクは SSD で Intel X25-M の SSDSA2MH080G2C1。Intel MLC版SSDのバルク品で、「茶箱」と呼ばれているモデルです。



 また、インストールにはUSB接続の DVD ドライブを使いました。モデルはBUFFALO の DVSM-P58U2/B-WHです。

Windows 7 のインストールは非常に簡単で、一番始めに「インストールする言語」、「時刻と通貨の形式」、「キーボードまたは入力方式」、「キーボードとその種類」を選べば、後は僅かな「次へ」の選択だけですすみます。インストール形態を選ぶ箇所では「新規インストール(カスタム)」を選択しました。インストールにかかった時間は、概ね30分弱です。

インストール後、Windows Update が行われたので、終了後、念のために Reboot。

ここまで完了した時点で、デバイスマネージャ上には、不明なデバイスが一つ。概ね良好に使えます。

一方、全てのドライバがインストールされているわけではありませんので、タッチパッドの右端で指を滑らせても、スクロールしない、などの問題があります。そこで、コモノ堂さんの「Lenove IdeaPad S9e へ Windows 7 製品版をインストール」を参考にさせて頂き必要なドライバをインストールしました(コモノ堂さん、ありがとうございました)。


まず、「Lenovo 電源管理ドライバー Windows XP - IdeaPad S9e, S10e, S10 3G (4329)」をインストールしました。コモノ堂さんの記事を参考に、インストールするファイルは「utility」だけ選択を残し「Energy Management」は外しました。このドライバのインストールにより、デバイスマネージャから不明なデバイスが消えました。

その後は、Realtek の Audio、ならびに Card Reader ドライバをインストールし、あわせてタッチパッド用の Synaptics ドライバをインストールしました。

Synaptics ドライバは、Windows7用のドライバが公開されていましたので、それをインストールすることにしました。これにより、タッチパッドの右端を使ったスクロール機能なども復活します。

これらを全てインストールした時点で、ディスクの使用量は10Gbyteくらいです。

最後に、私は CTRL キーが「A」キーの左にあるキーボード配列を好むので、CAPS キーを CTRL キーとして使う為の設定を行いました。

いろいろな Tool がありますが、今回はWindows Server 2003 Resource Kitへ含まれている remapkey を使いました。実行には、管理者権限が必要であることに注意してください。最も簡単な方法は、remapkey.exe を Explorer 上で選択し、右クリックで表れるコンテキストメニューから、「管理者として実行」を選ぶ事だと思います。

上記インストールが済んだ素の状態のデスクトップはこんな感じです。



さて、暫く使った感想ですが、非力なマシンでも重いといった印象はなく、Windows XPを使用していた時と同等の感覚で使う事が出来ました。XPに比べ、各 Widget が多少修飾過多議未なので、画面が狭いかな、とも感じられますが、この点は個々にチューニングを行うことになるのでしょう。今後のアプリケーションでのOSサポート状況などを考慮すれば、今回の入れ替えは正解だな、と感じました。

Windows エクスペリインデックス値はこのようなスコアになっています。



また、CrystalDiskMark の結果は次の通りです。



IdeaPad へ Windows7 インストール考えている方は参考にしてみてください。

2009/10/20

ssh で HostBased 認証を行うには ssh-keysign に setuid する必要がある

ssh で特定ホストからの login を、ユーザに依存せずに許可する場合には、HostBased 認証を使うと便利です。

例えば「他のマシンへ root ユーザとして ssh で login し、rsync でバックアップを取る」などの場合に利用したりします。

HostBased 認証の設定ですが、ssh プロトコルバージョン2を利用する場合、基本的には、「login される側(サーバ)」では、
  • /etc/ssh/sshd_config で HostbasedAuthentication yes に設定
  • /etc/ssh/ssh_known_hosts へクライアントホストの公開鍵を登録
  • /etc/ssh/shosts.equiv へクライアントのホスト名(またはIPAddress)を記載
と設定し、一方「login する側(クライアント)」では、「/etc/ssh/ssh_config」へ該当サーバ限定用の設定として、
EnableSSHKeysign yes
Host foo.example.com
 HostbasedAuthentication yes
 PreferredAuthentications hostbased,publickey,password
と書きます(2011/05/02: 上記EnableSSHKeysignの位置を修正しました)。

ssh プロトコルバージョン2 を使った HostBased 認証を有効にする場合、クライアント側 ssh_config の EnableSSHKeysign が1つのポイントです。この指示により、ssh コマンドが ssh-keysign コマンド経由でローカルホストキーへアクセスすることが可能になります。

ただし、ssh-keysign が適切にホストキーを読み込むためには、ssh-keysign が root へ setuid されている必要があります。ここが第2のポイントです。

少なくとも FreeBSD 6.4 ならびに 7.2 では、デフォルトでは、このコマンドは setuid されていません。すなわち、sshd/ssh 側の設定を適切に行っても、上記 FreeBSD をクライアントにした場合、デフォルトのままでは、HostBased 認証を使って login 出来ない、ということになります。

対応は簡単で、該当コマンドを setuid するだけです。
# chmod u+s /usr/libexec/ssh-keysign
# ls -l /usr/libexec/ssh-keysign 
-r-sr-xr-x  1 root  wheel  23308 Nov 26  2008 /usr/libexec/ssh-keysign
これで上記FreeBSD でも HostBased 認証で login 出来るようになります。

このあたりは、ssh(1)FILES や、ssh-keysign(8)DESCRIPTIONで丁寧に言及されているのですが、一部 Linux では ssh-keysign がデフォルトで root へ setuid されていたため、今まで気がつきませんでした。

もし FreeBSD で HostBased認証がうまくいかない、とハマった場合には、/usr/libexec/ssh-keysign の permission を確認してみてください。

2009/10/12

Language Switcher は Snow Leopard では特に便利

私は MacOS X を原則英語モードで利用していますが、特定アプリケーションだけは日本語モードで利用したい、と思う事があります。

MacOS X 10.5(Leopard)では、Finder から該当アプリケーションを選択し「Get Info」で Info を表示させた後「Languages」で希望言語を選択する事で、該当アプリケーションを特定言語モードで起動させることが出来ていました。

残念ながら、この「Info」内の「Languages」は、MacOS X 10.6(Snow Leopard)には存在せず、言語変更を行う事が出来なくなってしまっていました(resource などを書き換えれば可能なのかもしれませんが分かりません)。

そんなとき、偶然「わかばマークのMacの備忘録」さんの紹介記事から、Language Switcherを知りました。

Language SwitcherはTJ-HD Softwareさんによって作成されている、アプリケーションの言語設定をグラフィカルに変更可能な Tool です。

この Tool は Snow Leopard でも動作しますので、この Tool により Leopard 以前同様、アプリケーションの言語を変更できるようになりました。

なお、「わかばマークのMacの備忘録」さんの記事では、
「常にこの言語で起動」の項目にチェックを入れていても機能しませんでした。
との紹介がありますが、私の環境では正しく機能しました。

恐らく「わかばマークのMacの備忘録」さんが、v.1.1 を御紹介してくださった後、2009/09/20 に Snow Leopard への対応が明記された v.1.1.1 がリリースされていますので、その際に対応が行われたのかな、と思います。

便利なソフトウェアの御提供、ならびに、御紹介、どうも有り難うございました。

2009/10/11

iPhone の Voice Memos アプリケーションは OS 3.1.2 でも30分以上記録できない

iPhone では OS 3.0 から、標準アプリケーションとして、音声を記録できる Voice Memos アプリケーションが付属しています。

機能自体は通話口や、ヘッドフォン付属のマイクを通して音声を記録できるシンプルなものですが、iTunes Sync 時、記録したデータを iTunes へ自動保存してくれる点が大変に便利です。

この Voice Memos ですが、OS 3.1 から、30分を超える記録ができなくなってしまいました。特にきっちりときまった制限時間がある、というわけではありませんが、概ね35分程度で録音が自動的に止まってしまいます。この現象は、例えば、Apple Discussionsの該当スレッドでも報告されています。

この時間制限は、OS 3.0 には存在しませんでした。一方、今日時点での最新版である OS 3.1.2 でもこの問題は解決していません。

iPhone User's Guide には、記録時間制限に関する記述は存在しません。

音声記録アプリケーションは、iTunes Store 上で幾つか公開されており、それを利用すれば今回の制限時間を超えて録音を行う事は可能ですが、標準アプリケーションの持つ iTunes への自動保存機能は便利であるため、ぜひとも、この記録時間制限が撤去されてくれれば、と思います。

2009/10/08

CEATEC JAPAN 2009 はヤマハが凄い

CEATEC JAPAN 2009を見学へ行ってきました。今年で10周年だそうです。

さて、今年のCEATEC、目玉ブースは何処でしょう? こぞって3Dテレビを展示している大手メーカ? いえいえ、違います。

今年は、Life Contents Frontierコーナーへ出展しているヤマハへ注目です(会場コマ番号は3A61)。



ヤマハの展示では、産総研の開発したロボット、「HRP-4C」が、MIDI制御されたピアノ「disklavier」の生音演奏にあわせ、表情豊かに、また、リップシンクも見事に、VOCALOID技術を用いて歌いあげる姿を見る事ができます。

しかも歌う楽曲は、指定された楽曲群の中から、その場にいるユーザが「セカイカメラ」で投稿することにより決定されるのです。なんというバーチャルとリアルの融合...。

更に素晴らしいおまけ(?)として、このロボット、音声データ提供ソフトキャラのコスプレまでしちゃっているのです!



こんな展示、日本のCE展でなければ、なかなか見る事はできないのでしょうか?

今回私が見た展示では Megpoid の音声データを用いていましたので GUMI の衣装を着ていましたが、IT mediaによれば日によって、初音ミクと交互に出てくるようですが、ミクの動画を見る限りは GUMI の方が多少は自然に見える気がしないでも...。

今回、ヤマハ全体の出展テーマは「PLAY iT」で「少し先の世界での音楽の楽しみ方をご提案」が趣旨です。VOCALOIDの展示は、この中の「ソウゾウを超える」というテーマで扱われていました。「無機質な機械のはずなのに、奏でる音には感動があります」との説明通り、デジタルとアナログがぶつかり合うのではなく、相互に溶け合う世界です。

ヤマハの展示は他のテーマも面白く、例えば「空間を超える」というコーナーでは、YouTubeの動画再生に同期して、手元の生ピアノが自動演奏されたり、「演奏の枠を超える」コーナーでは iPhone アプリである「Finger Piano Share」を用いて、生ピアノ演奏と同期したり。また、その演奏を「セカイカメラ」で記録して「Finger Piano Share」連携させてみたりもします。

更に隣のステージでは、TENORI-ONの生演奏も行われていました。はじめて生演奏を見たのですが、ネット上の動画で見るよりも、光と音のコラボレーションをより新鮮に感じられ、新しい楽器の概念をより強く感じられます。

このような展示を「最先端IT・エレクトロニクス総合展」と銘打った、ある意味「おぢさん」方をターゲットにしたCEATECで行うという英断をし、それを実現したヤマハならびに関連会社・団体の方々へ心からの賞賛をお送りしたいと思います。

ちなみに CEATEC 全体としては、最近の景気動向に加え台風の影響もあるのでしょうか、例年よりも人の出がだいぶ少なめに感じました。展示をゆっくり見るには良い環境なのでは、と思います。

ぜひ、CEATEC JAPAN 2009へ足を運び、ヤマハブースで素敵な未来のひとときを!

2009/10/04

HTML5 Tech Talk へ参加してきました

10月2日、HTML5-Developers-jp主催のHTML5 Tech Talkへ参加してきました。

会場は Google 本社。最初、案内メイルに書かれていた「渋谷セルリアンタワー2Fロビー」が分からず、ホテル内をさまよっていたのは内緒。無事10分ほど前に会場入りしたのですが、会場はほぼ満席状態になっていました。

今回の内容は2点で、1点は、HTML5-Developers-jp主催者である、白石@あゆたさんによる「HTML5で作るオフラインWebアプリケーション」。もう1点は、html5.jp運営者である、羽田野@futomiさんによる「Canvasチュートリアル」。

白石さんのスライドならびに羽田野さんのスライドともに Web から閲覧できます。また、今回の公式タグである#html5_dev_jpを Twitter で追いかけると、当時の状況がつかめるかもしれません。

白石さんの主な内容は、マイコミジャーナルへ執筆してくださった内容を実際のデモを交えながら説明してくださる、というものでした。

今回の見所は「Alexing Framework」で、白石さんの言わく「Open Web Architecture に従ったアプリケーションのひな形を数分で作成できます」というもの。基本「クラウド向けRESTfulライブラリ+HTML5 O/Rマッパーライブラリ」であり、「基本的な準備作業は、クラウド上でデータモデルを定義するだけ」、「@OfflineCapable(というアノテーション)を付与するだけ」。

デモも見せて頂きましたが、なるほど、これは、
  • モデル情報の解析結果をもとに、
  • remote/local でのデータベース & テーブル生成
  • ActiveRecord パターンに基づく O/R マッパ生成
  • 両 O/R マッパ間の Proxy オブジェクト生成
  • それらの上に、両データベース間の conflict 検出を備えたsync モジュール生成
を自動で行ってくれるフレームワークのようです。これは素晴らしい! 本年中にオープンソースとして公開してくださるとの事ですので、楽しみに待たせて頂きたいと思います。

羽田野さんのお話は、初心者でも分かる、Developer 向けの Canvas 説明でした。

プレゼン資料が、実コードの示された簡潔な内容であり、また、説明もゆっくり、はっきりとした口調で行ってくださったおかげで、良く理解できました。特に適切なデモを随所に盛り込みながら説明してくださったことで、より深い理解を得る事ができました。

私は Canvas を制御する JavaScript メソッドの詳細を、今回初めて勉強したのですが、基本概念や機能が原則 PostScript 同様であり、個人的に、すんなりと飲み込めました。

説明の中、羽田野さんは「マンデルブロ、集合をこんなにも高速に、しかもブラウザ上で書く事ができるのは、素晴らしい」と感心しきりで語っていましたが、歳の近い私もまさに同感です。凄い世界になりましたねぇ...。

今回、白石さんの「Open Web Architecture」論を伺い、今後のアプリケーションは祖結合を前提とした分散オブジェクトモデルの上に作られるのかもしれないな、と感じました。

或るオブジェクトに対してアクセスが行われると、そのオブジェクトは現在のネットワーク接続状態に応じ、Proxy オブジェクトを通じて、手元/リモートの適切な箇所からデータを返答、両実データは暗黙的に/明示的に sync されてゆく、といった世界です。

さて、このような世界に於いて、アプリケーションの作り様を簡易化する目的で、何層にも重ねられた抽象化モジュールが生みだされると、結局その行く先はORB(object request broker)になるのでは、という思いが...。

Java 黎明期の HORB を、ふと懐かしく思い出しながら、最近のRESTful 台頭までの分散技術が次々と脳内をよぎり、また、メインフレーム時代から昨今のCloudという流行語までも流れて行き、技術の振り子は面白いな、と一人シミジミしてしまったのでした。

Tech Talk 主催の皆様、ならびに、参加者の皆様どうもありがとうございました。