ページ内ジャンプ:

アレゲなニュースと雑談サイト

yooseeによる 2005年09月26日 12時49分の掲載
選択肢が増えてきた部門より。

Anonymous Coward 曰く "OS毎に得意・不得意があり、それぞれのOSに適したことを作業させるのが最良であるかもしれないが、Windows上でUNIX環境があると便利なことも多い。2台準備するかデュアルブートさせれば済むことであるが、スペースや効率の面で問題がある。そのような需要に応えてきたのが1995年にプロジェクトが始まったCygwinであるが、最近では他の選択肢も増えてきた。

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

そこで、ここに挙げた例に関わらず Windows におけるUNIX環境を実際に使用している/.Jの方々に、動作の軽さ・重さなどの使用感や、機能・管理のしやすさ等の面で、皆さんが使いやすいと思っているのはどんな方法か、お聞きしたい。"

この議論は賞味期限が過ぎたので、保存されている。 新たにコメントを書くことはできない。
表示オプション しきい値:
  • iwa (2980) : 2005年09月26日 13時56分 (#804705)
    それぞれ使ってみた感想。嘘があったらご指摘ぷりーず。

    ・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サブシステム。
    ○⇒WindowsとSFUでファイルシステムがシームレスに扱える。NFSでマウントやエクスポートができる。(日本語については「?」だけど)
    ×⇒一般的なUNIXと似て非なる部分で多大な障害がある(例:ツールをビルドするのにいっぱい手を加えないと通らない、パーミッションやオーナー、/etc/以下などがUNIX的でない)。Win32サブシステムとの会話が標準入出力とネットワークしかない。Win32APIが叩けない(=GUIが一切扱えない)のが何げに致命的。

    個人的結論は、
    いろんなOSが使いたい⇒VMware
    「本物」のLinux環境が欲しいが、それさえあれば十分⇒coLinux
    Window上でもつい「ls」とタイプしてしまう⇒cygwin
    問題が多過ぎて使いもんにならねー⇒SFU
    というところかなぁ。今使ってるマシンには、coLinuxとcygwinが入ってます。
    • iwa (2980) : 2005年09月26日 23時37分 (#804932)
      Unicode系のAPIを使っていないので、Shift_JISの2バイト目にあるメタキャラクタの影響をもろに受けます。(ターゲットのツールがShift_JIS対応でビルドされていない限り)

      まぁ、それに、
      > limits.h:#define MB_LEN_MAX 1
      未だにこーゆー定義のままだったりしますから。

      > newlib.h:#define _MB_LEN_MAX 8
      こんなのも入ってるみたいなんですけど、どーすればいーんでしょーねぇ……。
    • 3個のコメント が現在のしきい値以下です。
  • kcg (26566) : 2005年09月26日 14時17分 (#804715)
    仕事の開発用Windowsマシンには、Cygwin, VMware, coLinuxが動いています。昔はBoWなども使っていたクチです。

    VMwareとcoLinuxは、Windowsの世界とか隔離された完全なLinux環境といった感じで、CygwinはWindows側の世界をシェルでいじりたい時用の環境と使い分けています。

    VMwareとcoLinuxの方は、VMwareをVer1から使ってきましたが、最近coLinuxも安定してきたので、サービスとして常駐できるのが便利でcoLinuxが中心となってきています。起動とシャットダウンを意識しないで使えるのはすばらしいですね。

    coLinuxでホストのFileSystemを直にマウントできるcofsがもっと安定すれば、Cygwin+Perlワンライナーで処理していた作業の多くも、coLinuxで代替できる気がして期待しています。

    DesktopはWindowsで、その上で仮想Linuxで便利なサービスが使えるので、coLinux+LAMP環境はとても快適です。
  • Tsukitomo (22680) : 2005年09月26日 13時10分 (#804679) 日記
    gnuwin32 [sourceforge.net]やGNU utilities for Win32 [sourceforge.net]から必要なツールをインストールして使っています。

    あとはMeadow [meadowy.org]とかcronNT [vector.co.jp]なんかでUNIXっぽい環境を整えています。
    --
    Your 金銭的 potential. Our passion - Micro$oft

    Tsukitomo(月友)
  • targz (14071) : 2005年09月26日 13時18分 (#804687) 日記
    X11 を動かしてあるマシンに Windows から VNC 接続するのはどうでしょう? 2台稼働させることには違いないですが、X11 マシンの設置場所はじゃまにならない場所に置けばいいです。
    GUI 不要なら SSH ログインでも十分でしょう。

    # わたしはむしろ、Mac から Windows マシンに VNC/RDC 接続することが多いですが。
    --
    NHK 受信料はテレビの台数分契約にしてほしい
    • astro (17245) : 2005年09月26日 15時57分 (#804740) 日記
      それって、Windows用Xwindowシステムでよいのでは?
      VNCとちがって、Xのプロトコルをやり取りするので、VNCより快適に動くと思います。
      フリーもあるようですが、商用ソフトならExceedとか、国産ならASTEC-Xとかですかね。
      Windowsアプリケーション間とコピーペーストもできるので、便利です。

      うちの会社は、開発にはRedHat Enterprise or Solarisを使っていて
      マシン自体は共有化されているので、
      大半は端末PCにExceedを入れてX端末として使ってます。
      (私はわがまま言ってUltra60を端末として使わせてもらってますが)
      • wei (16323) <yoh@flcl.org> : 2005年09月26日 23時33分 (#804929) ホームページ

        >Windowsアプリケーション間とコピーペーストもできるので
        というのは、VNC4以降ではデフォルトで可能だったはずですから、それが便利さの売りになることはないと思います。

        でも vnc4 の場合、英文だけですよね。
        日本語 patch は未だ見掛けてません。

        先に私が投稿にて紹介した X-Deep/32 も日本語は通りませんが。

        vnc も Windows 用 X サーバも、何が良いかって、 XFree86 等の設定に手間取る必要がないのが良いんです。
        XF86Setup とかでいちいちチップセットを確認したり、ディスプレイの表示能力を調べたり、チップセット固有のオプションとかを調べたり、というような煩わしさが一切ない。
        確かにネイティヴの X サーバを立ち上げるよりは速度面のパフォーマンスでは劣るだろうけど、最近のマシンは十分に早いんで、 vnc でも特に問題は感じません。
        だって、何も考えなくとも、コマンドラインで指定した解像度で X が起動しちゃうんですから。
        DVD 等の動画や MIDI の再生等は Win に任せた方が手っ取り早いですし、 MSIE でないとどうしても閲覧できない web サイトなんてゴロゴロありますし、印刷は Win でやる方が遥かに簡単で柔軟で綺麗ですし。
        Windows を完全に捨てることなんてできっこないんです。

        vnc に出会ってから、 PC-UNIX の環境設定でハードウェア固有の設定等に時間を費すのがなんだか馬鹿馬鹿しくなってきました。
        ついでに言っちゃえば、 coLinux こそ、 Win の不足面を補うツールであり、デスクトップ或はモバイル環境における Linux の正しい使い方じゃないか、とまで思うようになりました。
        Linux をノート PC にインストールして色々頑張るより、遥かに楽ですから。

        --
        GNU is a religion. [flcl.org]
      • 2個のコメント が現在のしきい値以下です。
    • 1個のコメント が現在のしきい値以下です。
  • kawaz (15398) : 2005年09月26日 13時37分 (#804697) ホームページ
    VMWare や VirtualPC や coLinux に求めるのは本物(?)の UNIX 環境で、SFU や Cygwin に求めるのは Windows 環境を操作する UNIX インターフェース。という違いがあるかと。

    後者はホストの Windows 環境のファイルを弄ったり、プロセスを操作したりといったことが出来るのがメリットで、それが出来なければこんな中途半端な UNIX 環境は出来れば使いたくない派。
    てかその目的でもっとより良い環境ってまだ無いんですかね?
    • __hage (7886) : 2005年09月26日 18時51分 (#804807)
      まさにその二つの目的のためにVMware(の上にFreeBSD)とCygwinをWin2000に入れています。
      SFUはどうなんだろうと気になりつつも、Cygwinでずるずるときてます。

      coLinuxは今まであんまり考慮したことなかったですが、
      ここでの話を見てるとかなり魅力的な環境みたいですね。
      VMwareから離れられるかも。

      なんにしろCygwinを本気では使ってないです。
      開発だなんだなど本格的にUnixライク環境が必要になったらCygwinでは無理が多すぎます。
      考慮しなければならないレイヤが一枚増えちゃいます。
      なんでとっととPuTTYを開いてFreeBSDで作業します。楽でいいです :)

      >てかその目的でもっとより良い環境ってまだ無いんですかね?

      私の今の環境でやるとすると…

      ・Windowsの方でファイル共有
      ・VMware(の上のFreeBSD)からsmbでマウント
      ・FreeBSDのコマンドを使って操作

      てことになるでしょうか。プロセス操作は無理ですけど。
      Windows側にsshd立ててCygwinのコマンド群を叩いて、それでプロセス取得、操作もやりましょうか。
      って私の頭だと混乱するだろうなあ…。
  • Anonymous Coward : 2005年09月26日 12時58分 (#804671)
    配布形態も変わるそうだし、これを選択する必要はもうないよね?
    • Anonymous Coward : 2005年09月26日 13時40分 (#804698)
      Vista 以降だと、エディションによって最初からインストールされた状態になるようですね。
      プリインストールでないエディションだと、どうなるんでしょう。
      Interix は標準環境だと gnuツールに慣れた体には違和感があるのですが、cygwin は遅すぎなのとバグ多すぎで、イライラするので、少しずつgnuツールをコンパイルして SFU に環境を移しました。

      SFUと cygwinのように ネイティブにWindows のファイルシステムを触れること、Windowsのアプリとの相互に連携動作を行なうための環境と、純粋に Linux/Unix環境を作るための coLinuxや VMWareなどのエミュレータとはカバー範囲がまるっきり違うと思うんですが。
      • orangeful (21839) : 2005年09月26日 16時31分 (#804753)
        私はたまにSFUでgrep hoge `find .`を叩く程度ですが。

        > Interix は標準環境だと gnuツールに慣れた体には違和感があるのですが、(中略)少しずつgnuツールをコンパイルして SFU に環境を移しました。

        自分で環境をコンパイルしなければならないのは、ほげり倒して遊ぶにはいいですが、今片付けなくてはならない仕事がある時にgrep -rが拒否されたりするのは実に微妙ですね。

        私も暇なときに、とりあえずzshなどコンパイルしてはみたものの、そもそもzsh自体がマルチバイトに対応していないので、実用にはなりませんでした。

        #「とりあえずzsh」という所が、何か間違っているような気もする orz
        --
        名物に旨いものなし!
    • 1個のコメント が現在のしきい値以下です。
  • 私はVMWare派 (スコア:1, 興味深い)

    Anonymous Coward : 2005年09月26日 13時00分 (#804673)
    買う必要はあるけど、仕事の作業のコンパイルからの確認をやるにはcygwinじゃものたりないし。
    • Re:私はVMWare派 (スコア:2, 参考になる)

      Lpenguin (19629) : 2005年09月26日 14時20分 (#804716) ホームページ

      私もFreeBSD on VMWareで使ってます。

      もともとFreeBSDをネイティブで使っていたのですが、Windowsを使わざるをえない状況に追い込まれたため、FreeBSDをVMWare上で動かすという方法をとってます。
      VMWare上でXを起動して全画面表示にするとWindowsを意識しないで使えるのでいい感じです(これはWin用Xサーバでもできますが、表示の速さという点でVMWareに匹敵するものを私は知らないです)。

      Cygwinは日本語処理周りの挙動がおかしかったので、今では「使いやすいDOSプロンプト」程度の扱いです(苦笑)。

      他は…使ったことがないのでなんとも。

  • Anonymous Coward : 2005年09月26日 13時32分 (#804696)
    あればいいかな?という観点から、私はNYACUS入れてるだけ
    だったりします。
  • いろいろ (スコア:1, 興味深い)

    Anonymous Coward : 2005年09月26日 14時20分 (#804717)
    Cygwinはどうしても好きになれなかった。
    ひっくりかえせば「Linuxってメッセンジャーもないの?」と
    言ってた奴と同じ心根になりかねない。
    Linux上でのゴテゴテGUIアプリがなんか興ざめなように
    Windows上でならWindowsらしい使い方を工夫したい。
    findやgrep、tar、wget gzip, bzip2、Perlなんかはどうしても欲しいんだけど
    シェルっぽいことをバッチファイル書いてやるとどうなるか、とか
    あるアプリケーションでどうこなすか考えてたほうがおもしろい。
    ApacheやMySQL、NamazuにEstraier。ソフトウェア単位だと
    あっちで慣れたものがWindows上でも動くから、
    Win環境に不足に感じることはもうほとんどなくなった。
    といいつつMeadow + eshellは手放せないんだけどw
  • 最近のLinuxのデスクトップは、よくできているので、
    Linux上で、Windowsを利用する。。。のも選択枝に入ると思います。

    で、ちょいとUbuntuお気に入り。
    +QEMUあたりで、Windows動くといいなぁと思いつつ、
    リモートデスクトップで現状満足してたりします。(汗;)

    理想的には、Xen上でWindowsも動いてくれることですかね。

    どちらにしても、Windowsさわる時間が短くなってくれますが、
    なくなってくれそうにはありませんねぇ。
  • taka2 (14791) : 2005年09月27日 2時13分 (#805023)
    私はUNIX-like tools [vector.co.jp]のNT版 [piedey.co.jp]で満足してます。

    あとは、tcshとPerl(どちらもcygwinじゃなくてWin32版)ぐらいかな。
    cygwinはWindowsネイティブとのファイルシステムのすりあわせ方が気に入らないのでできるだけ使わない方向で。

    まあ、FreeBSD機が別にあるので、ここぞという時はそっちを使ってるだけなんですけど…
  • shibata (21055) : 2005年09月27日 8時52分 (#805096)
    pkgsrcのSFUポーティング [pkgsrc.org] 使ってます。大物はまだまだ動きませんが、pkgsrcで管理できるんで嬉しいです。

    /procにあるプロセス情報(W32なプロセスも全部見れるんで)WindowsなサーバのUN*X的な自動管理とかできたらなぁって 思って今は試験的に使ってますけどね。

    (今のところpkgsrcでコンパイルしたもの)

    • shell/bash2
    • net/wget
    • net/netcat
    • net/jwhois
    • net/ncftp3
    • net/wol
    • archivers/gtar
    • archivers/unzip
    • archivers/gzip
    • archivers/bzip2
    • security/gnupg
    • security/openssh
    • converters/nkf
    • converters/unix2dos
    • editors/vim
    • editors/jed
    • lang/gawk
    • lang/p2c
    • lang/ruby16-base
    • www/lynx
    • textproc/grep
    • textproc/gsed
    • textproc/ja-sed
    • textproc/ja-grep
    • net/rsync
    • sysutils/user_interix
    • sysutils/file
    • sysutils/findutiles
    • misc/watch
    • misc/ja-less
    • devel/ncurses
    • devel/flex
    • comms/lrzsz
    • games/sl
    • database/cdb
    • database/db
    • database/db3
    • database/db4
  • G7 (3009) : 2005年09月28日 1時43分 (#805640)
    というわけでw3mです。こいつを動かすための環境欲しさ、ですね。#ということにしておこう。

    以前はcygwinでしたが、コンパイルを通すのが(^^;面倒なのと、遅いのとで、
    最近はめっきりcoLinuxです。

    coLinuxは一応OSなのに、ライブラリなcygのほうが
    w3mのスクロールが遅いってのは、一体どういうことなんだか。

    そこへ来るとcoLinuxだと、キャッシュ(?)に入ってる二度目のBootとかだと、
    まぢ3秒でBootしたりする(OSASKもびっくりってか?)んで、ストレスなんて全然ないです。
    もちろん上げっぱなしにしてても(メモリとか足りなくならん限り)ストレスは無いですし。

    コンパイルが面倒ってのは、依存ライブラリを「揃える」のが面倒っていう意味です。
    これはcoLinux云々というよりdebianでapt-getのお蔭ですね。
    楽してます。依存ライブラリがどれなのかは勝手に解決してくれるんで。
    バイナリがいきなりインストールされるかどうかは、俺としては二の次だなあ。依存関係のほうがよほど重大。
    知らねえライブラリの名前を求めてGoogleをさまよったり(わら)、
    ソース追っかけてコンパイル条件を考えたりするのは、
    ちと疲れました。
    cygwinにapt環境を入れるっていうdistro(?)に目鼻がついたら、また使う気になるかも知れませんが、
    少なくともあの「テキストとGUIの悪い所どり」みたいな感じのcygのインストーラーは
    もう触りたくない感じ。

    #おかげで、初めて(わら)UTF8対応なw3mを手にすることが出来たのでG7

    ディスクの食いかたも、cygで下手に色々入れると(しかもインストーラがアレだから
    入れるものの選別作業が面倒すぎて、うんざりして全部入れちゃいがち) あっさり数GBに達します。
    それに比べりゃcoLinuxでささやかに1GB(GUIものを一切入れなきゃ楽勝でしょう)のほうがよほどマシですし、
    cygのファイル数は凄いのに対して、coなら仮想ディスクファイル1つで済むから、繁雑さも少ない。

    あとはcoLinuxなw3mから、WinのFireFoxへ、URL飛ばしですね。
    どっかで教わったので俺もやってみました。

    % cat ~/local/bin/openurl
    #!/bin/sh
    (
    echo 'require "Win32API"'
    echo 'url="'"$*"'"'
    echo 'shellexecute = Win32API.new("shell32.dll","ShellExecuteA",%w(p p p p p i),"i")'
    echo 'shellexecute.call(0, "open", "#{url}", 0, 0, 1)'
    ) > ${HOME}/sambaのどこか/url.rb

    こんなScript(ruby Scriptを作るshell Scriptっす)をw3mの外部ブラウザに割り当てて、
    win側ではurl.rbが生成されるのをフォルダ監視ソフトの類で待ち受けて”実行”すれば、
    FireFox(などのブラウザ)がWin側であがります。
    これ系の仕込みをやっておくと、WinとcoLinuxが別OSであるがゆえの不便は、だいぶ緩和される感じ。

    余談。
    cygwinを「c:\」にインストールして、それをアンインストールすると
    やっぱりcドライブ全部持って行かれるんですかね?(わら
    UNIX風PATHを理解する非cygwinソフトとの相性を考えると、
    /usrに対応する実フォルダは、やっぱりc:\usrに存在してて欲しいんですよね。うーむ。
  • MinGW + MSYS 使って作るほうが軽くシンプルです。
    環境作るのにコツが要るけどね。
    --
    from もなか
  • >MacOSX と Win on VirtualPC

    私もそれです。
    たまにVirtualPCを全画面表示にして、知人を驚かせます。

    でも…設問と逆なんですよね…
    --

    ----------------------------------------
    You can't always get what you want...
  • Re:cmd.exe(WindowsXP) (スコア:1, 参考になる)

    Anonymous Coward : 2005年09月26日 20時15分 (#804850)
    "Windows2000 cmd.exe ファイル名 補完" [google.com]でぐぐったらすぐ出てきたぞ。
  • nikomi (28640) : 2005年09月26日 22時14分 (#804898)
    Cygwin派で別建てしてもあんま意味無いと思うので便乗。

    ちょっと前はVNCの存在を知りながらcygwinのXでリモートの接続を試みたりしました。
    接続には成功したものの、それに満足してしまい(使い勝手が悪いのもあったけど)あっさりVNCに流れてしまいました。
    でもそれからあまり時間の経たないうちに、遠隔でGUI使うのってどうなんだろうか?
    と思ってしまいCygwin+XもVNCも放置状態。

    gccなんかも入れてはいますが結局はLinuxマシンにアクセスしてやってしまったり。

    最近はsshクライアントとエディタ(vim)としてしか使っていない現実。

    結局はwindowsの範疇にあるものはwindowsでオペレーションした方が面倒もありませんし。
  • Anonymous Coward : 2005年09月26日 22時18分 (#804899)
    アンインストールのときにレジストリにゴミがのこるとか、
    アップデートに失敗すると、それ以降再インストールで引っかかるとか
    基本的な問題点ってどうなったんでしょう?
  • Re:飛び道具 (スコア:2, 興味深い)

    kicchy (4711) : 2005年09月27日 11時55分 (#805186)
    >MacOSX と Win on VirtualPC なんて違反ですか?

    違反と言うより、来年以降、intel MacOSXが台頭すると
    それが動作速度、ホストの安定性と利便性の点から
    本命になるんじゃないかと思うんですが・・・
  • orangeful (21839) : 2005年09月27日 13時26分 (#805239)
    Virtual Server 2005のFAQですが、VMwareも同様ではないかと。

    http://www.microsoft.com/japan/windowsserversystem/virtualserver/evaluation/virtualizationfaq.mspx
    Q. バーチャル マシン テクノロジとは何ですか?
       
    A. バーチャル マシン (VM) テクノロジは、サーバー ハードウェアとクライアント ハードウェアの両方に適用されます。VM テクノロジにより、複数のオペレーティング システムを 1 台のコンピュータで同時に実行できます。特に、Microsoft Virtual PC 製品は(略

    (中略)

    Q. バーチャル マシンの CAL 要件とは何ですか?
       
    A. クライアント アクセス ライセンス (CAL) 要件は、VM で実行されているアプリケーションによって決まります。ただし、ホスト オペレーティング システムである Windows Server 2003 で VM を実行するので、VM にアクセスするユーザーとデバイスごとに Windows Server 2003 CAL が必要になります。
    #一次情報を見つけたのはいいけど、この文章が何を言っているのかわからない orz
    --
    名物に旨いものなし!
  • # うちは、dirはそれで我慢して、gawk.exe、tar.exe、grep.exeとgzip.exeで何とかやってます
    # ローカル環境で激しくunix系コマンド使うことってあんまりないんですよねぇ・・・
  • 12個のコメント が現在のしきい値以下です。