s

Windows上のUNIX環境

スラッシュドット ジャパン | Windows上のUNIX環境はどれが使いやすい?

今までCygwinしか知らなかったが、他にもいくつかあるらしく↓、

だったものでは、MSがリリースしており昨年無償化された MS SFU(Windows Services for UNIX)、 CygwinインストーラRPMパッケージ管理・日本語環境等を追加したX on Windows3 、PC/AT互換機そのものをエミュレートするVMwareVirtual PCの上でFreeBSDLinuxを動かす、あるいはCooperative Linux(coLinux)でLinuxWindowsアプリとして動かすなど多様な選択肢があり

それぞれについて↓

VMware Workstation - 汎用のバーチャルマシン。x86系OSならたいてい動かせる。商用ソフト。 ○⇒汎用性は最も高く、安定している。スナップショット機能など、使い勝手もよい。 ×⇒ちょっと重い。ちょっと高い。 ・coLinux - Linux専用バーチャルマシン。Linuxカーネルにパッチを当て、Windowsの専用ドライバ上で動かす。使い勝手はまんまリモートにあるLinuxマシン。 ○⇒Linux専用なためか、比較的軽い。experimentalな機能(cofsとか)を使わなければ安定している。サービス化できるのがうれしい。 ×⇒画面回りは弱い。現状では別途Xサーバの調達が必要。ファイアウォールが有効だと、ネットワーク設定に悩む場合がある。 ・cygwin - UNIXシステムコールやデバイスアクセス等をcygwin1.dllでエミュレートすることによって構築された疑似UNIX環境。 ○⇒メジャーなツールはたいてい移植されているので、UNIXユーザがWindows上でオペレーションするのに便利。Win32サブシステム上に構築されているので、Win32APIも使える。 ×⇒UNIX的コンテクストとWindows的コンテクストにギャップがあるため(例:ファイルシステムの見え方)、思わぬトラブルの原因となる。マルチバイト関係はだめだめ。特にファイルシステム。 ・SFU - Microsoftが提供する(例によって買収して手に入れたものだが)、Windowsカーネル上で動くUNIXサブシステム。 ○⇒WindowsSFUファイルシステムがシームレスに扱える。NFSでマウントやエクスポートができる。(日本語については「?」だけど) ×⇒一般的なUNIXと似て非なる部分で多大な障害がある(例:ツールをビルドするのにいっぱい手を加えないと通らない、パーミッションやオーナー、/etc/以下などがUNIX的でない)。Win32サブシステムとの会話が標準入出力とネットワークしかない。Win32APIが叩けない(=GUIが一切扱えない)のが何げに致命的。 個人的結論は、 いろんなOSが使いたい⇒VMware 「本物」のLinux環境が欲しいが、それさえあれば十分⇒coLinux Window上でもつい「ls」とタイプしてしまう⇒cygwin 問題が多過ぎて使いもんにならねー⇒SFU というところかなぁ。今使ってるマシンには、coLinuxcygwinが入ってます。