Cygwinのはじめかた

2004/07/07 西田顕郎

Cygwinとは、Windowsの上で走るUNIX(もどき)で、無料のオープンソースソフトです。UNIXとは主にサーバーや科学計算用途によく使われるOSです。なぜWindowsでそんなものを走らす必要があるかですが、ひとつには、世間で発表されている科学計算用の様々なシミュレーションプログラムはUNIXを前堤に作られていることが多いので、そういうものをいじりたいけど身の回りにUNIXがない、というような場合にとても便利なわけです。

このソフトは画期的でグレートです。ほんとに無料でいいの?というかんじです。ここ数年、どんどん使いやすくなってきています。


Cygwinのインストール

Cygwinは、http://www.cygwin.comというサイトからダウンロード・インストールします。このページの指示に従っていくと、自動的にダウンロードとインストールを行なうことができます。以下にその例を挙げましょう。

↑ Cygwinのホームページ。ここから、"install cygwin now"のボタンを押し、適当にどんどん進む。「ファイルのダウンロード」のウィンドウでは、「保存」でなくて「開く」を押して下さい。


↑適当にどんどん進む。


↑"install from internet"を選んでどんどん進む。


↑この画面で、どんな機能をインストールするか選べる。デフォルト(初期設定)では最低限の機能しか入れてくれないが、科学計算などをするには、Cコンパイラと呼ばれる機能が必須なので、Develメニューの+マークをクリックして....


↑ さらにその中のgccをクリックして、"Skip"じゃないようにする。CだけじゃなくてFortranも使いたいときは、gcc-g77もクリックして"Skip"じゃないようにする。そうして「次へ」


↑するとインストールが始まる。接続環境によるけど、10〜30分くらいかかったりする。


↑ デスクトップにアイコンを作ったりする。この画面でインストールはおしまい。



Cygwinの起動

デスクトップに、↑のようなCygwinのアイコンができていますので、それをダブルクリックしてください。


すると↑のような画面があらわれます。これでCygwinが起動されました。



Cygwinの基礎知識

UNIXを知っている人はCygwinをさくさく使えるでしょう。知らない人はUNIXをちょっと勉強しましょう。昔のMS-DOSに似ていて、基本的にはキーボードからコマンドを打ち込んで操作します。というか、MS-DOSのコンセプトはUNIXからかなり借用されているのです。

UNIXの入門としては、とりあえずこことかこことかをご参考に。

Cygwin特有のこととして知っておかねばならないことを挙げます。

1. ディレクトリ構造

Cygwinの中でのルートディレクトリは、Windowsのフォルダツリーの中ではC:\cygwinのようなところにあります。このそとのフォルダ、例えばC:\などにCygwinからアクセスしたいときは、

$ cd c:

のようにすればOK。


2. X-Windowシステム

X-Windowは、UNIXの上でグラフィカルな処理をするためのシステムです。CygwinでGRASSのようなGISとかをやるには必要です。CygwinからX-Windowシステムを起動するには、

$ startxwin.sh

のようにします。ちょっと時間がかかるかもしれません。


↑CygwinでX-Windowシステムを走らせたところ。


3. テキストのコピー・ペースト

作業中に、テキストをコピー・ペーストしたいことがよくあります。そういうときは、Windowsでは、

マウスの左ボタンでハイライトして、CTRL+Cでコピー、CTRL+Vでペースト

と決まっていますが、CygwinのX-Windowでは、

マウスの左ボタンでハイライトするだけでコピー、マウスの中ボタンでペースト

となっています。

WindowsのアプリからCygwinにコピー・ペーストしたいときやその逆は、これらを組み合わせればよいのです。つまり、

Windows→Cygwin
マウスの左ボタンでハイライトして、CTRL+Cでコピー、マウスの中ボタンでペースト

Cygwin→Windows
マウスの左ボタンでハイライトするだけでコピー、CTRL+Vでペースト

です。とても便利です。


4. CygwinをX端末にして、ネットワークごしに他のUNIXマシンを使う。

X-Windowシステムさえ動けば、Cygwinを介してネットワークごしに、UNIXサーバーを、グラフィカルに使うことができます。研究室や大学の計算機センターなどのUNIXマシンにアカウントを持っている人はそういう使い方ができます。これはとても便利で、UNIXサーバーでしか走らないソフト(筑波大学情のichoサーバー上のMATLABとか)や、学内LANにしか提供されていない機能(オンラインジャーナルなど)を、家や出先のWindowsパソコンから利用することができます。

たとえば、hogehoge.tsukuba.ac.jpというUNIXサーバーにアクセスするときは、

$ ssh -l username hogehoge.tsukuba.ac.jp -X

のようにします。