ThinkPadのVista UltimateにUNIX ベースアプリケーション用サブシステム(SUA)を導入してみました。以前はSFUと呼ばれていたものですが、システム自体はOSに標準添付となっています(ツール一式は無償ダウンロード)。
一部だけですがgnuソフトウェアも入るしそれなりに使いやすくなっている気がします。gccとかもちゃんと入っていますし。SVR系のインストールオプションはoffにしてインストールしたのですが、なんかBSDっぽいのも良い感じです。
とりあえず重大な注意点としては、VisualStudio2005で開発できるようになるアドインが付属しているのですが、これを有効にしておくと全然関係ない普通のソフトウェア開発時に、デバッグすると実行ファイルをロックしてしまい、その後リビルドしようとすると上書きできないエラーが発生してVS自体を再起動する羽目に陥ります。回避策はVS2005のメニュー→ツール→アドインマネージャーで該当アドインのスタートアップをoffにして再起動です。(試したことはないですが)SUA用アプリを作るときのみonにするのが良さそうです。
administratorグループに属している人は誰でもroot扱いっぽいのですが、普通に起動すると一般ユーザー、管理者として起動するとrootになっている模様です。suはあるのですが使えませんね(Administratorアカウントを有効にしてから管理者として実行すると使えるっぽいですが、Administratorグループで管理者として実行した時点でroot扱いなので意味無いです)。
cshはtcshですが、なんか操作法がvi風です。まぁviなので問題はないのですが(^^;;)、.cshrcにbindkey -eとか書いておけばemacs風になりますね。vi風に戻すときはbindkey -v。
sshとかが標準で入っていないのでそのままだと使い道に欠けるのですが、
interopにてsshを含む様々なソフトのSUA移植版が置いてあるのでそれをインストールします。英語ですが、トップページの中程のwww.interopsystems.com/communityというところをクリックして上メニューからTool Warehouseというのを選びます。最初はユーザー登録、既にしてあるならログインするとダウンロード可能なソフト一覧が出てきます。が、ここでのbinaryリンクはSFU時代の古いモノなので使わず、ftpでftp.interopsystems.com/pkgs/6.0-x86にアクセスし(64bitの時は多分6.0-EM64T、ユーザー名とパスは登録したときのモノ)そこにあるバイナリを使います。
インストール方法はpkg_addを用いたBSDパッケージ形式ですが、デフォルトではインストーラが入っていないのでまずさっきのTool Warehouseのページ本文の上の方のPackage Installというところからインストーラのシェルアーカイブを拾ってきて入れましょう。
あとはpkg_add 拾ってきたパッケージでOKです(直接pkg_add ftp://...でもいいらしい)。
とりあえずopensshを入れたところ元気に動いています。日本語入力が出来ないので使い勝手には欠けますが。困ったのはEUCなFreeBSD環境にログインすると日本語表示もされないことですが、
cocotというアプリケーションを入れたら大丈夫でした。SUAでも一発コンパイルOKです。名前も良いですね(謎)
Xは相変わらずクライアントのみでXサーバは入っていません。ついでにktermも入っていないので基本的には使えません(というか日本語環境はかなり貧弱です)。
XmingというフリーのXサーバを入れてみたところ動作はしています。
w3mをコンパイルしようと試みたところ、いろいろ修正してなんとかコンパイルは通ったモノの、実行するとOut of Memoryとか言われてコアダンプします(;_;)。どうも下請けのGCがおかしいらしいのですが…
最後にフォルダ右クリック→コマンドプロンプトのノリでフォルダ右クリック→tcshが出来たら便利かなぁと思って一工夫しておきました。要は
C:\Windows\posix.exe /u /c /bin/tcsh -l -c "cd path;clear;tcsh"
が実行できればいいのですが(clearは無いと画面が乱れます。最後のtcshは無いとcdとclearが終了した時点で終了してしまいます)、pathの書き方が違うので例えばC:\Program Files\tempを/dev/fs/C/Program\ Files/tempに書き換えておく必要があります。手っ取り早く?そのような動作をするコンソールアプリを作って仕込んでおきました。
そういえば、SUA入れておくと普通のコマンドプロンプトでもlsとかcatとかviとか使えますし、密かにcd /Windows/System32とか出来るようになりますね。これだけでも入れておく価値があるかも??