


Unix演習用カスタマイズKnoppix
福田 洋一 : 2005年5月30日
大谷大学文学部人文情報学科は、文学部に所属する情報学科として独自の取り組みをしています。このOtani-Knoppixは、Unix関連の授業を担当する福田が、授業で使用する環境用にカスタマイズしたものです。050524版には若干の設定不良がありました。エラーではありませんが、後からインストールしたLaTeXのスタイルファイルが認識されませんでした。現在Web上で配布している050530版では、修正されています。
1. 経緯
Unix入門、プログラミング入門、TeX入門、XHTML-CSS-XML入門などの演習をするのに必要な環境を提供します。
大谷大学内のコンピュータは、全てWindows2000で統一されています。そのため、Unix関連の演習を行なうUnix環境を必要数用意することができない状況にあります。そこで、どの教室でも簡単にUnix環境で演習を行なえるようにしようと、2004年度より、1 CD-ROMで起動するKnoppixを導入しました。
しかし、産総研オリジナルの日本語Knoppixのままですと、演習で必要となるツール、ソフトなどが不足しています。また、伝統的なUnixの演習に使用するのであって、Windows代替の環境を構築するわけではありませんので、OpenOffice.orgやWindowsエミュレータ、統合開発環境などは必要ありません。そこで、2005年度より人文情報学科での授業内容に合わせて、Knoppixのカスタマイズをすることにしました。
基本的な方針は、できる限りシェル上でのコマンド操作を使用すること、文書作成やプログラム作成にはEmacsを使用すること、データベースサーバーとPHPを利用したWebアプリケーション作成ができること、XML関連を含めたテキストベースのプログラミング学習ができることにあります。
現時点のKnoppix最新版は3.8.1ですが、学生の自宅のPC環境では、マウスやキーボードが反応しない、重いなどの症状が見られましたので、一つの前の3.7最終版をベースにカスタマイズしています。
カスタマイズそのものは、一月おき程度で新しいバージョンを作っています。今回配布するのは、現時点での開発途中のスナップショットであり、追加・修正したソフト・設定の全てを十分にチェックしたものではありません。教育利用のためのKnoppix導入の一例として公開するものです。
Knoppixの教育利用の試みは多数の機関で行われ、Knoppix教育利用研究会(Knoppix-Edu.org)という名称のメーリングリストもあります。この研究会では、今年のLinuxWorld Expo/Tokyo 2005にも参加しています。このOtani-KnoppixもLinuxWorldで配布しました。
2. 追加したパッケージとソフト
大きく分けると、TeX関連、XML関連、プログラミング言語関連に分けられます。大部分は、Debianのパッケージをapt-getでインストールしています。
- TeX関連
- Debianのパッケージから、mendexやjBibTeX、dvipdfmxも含めて、日本語TeX環境一式をインストールしてあります。sazanamiフォント、奥村先生の新JISクラスもインストールしてあります。閲覧にはxdviおよびxpdfを使用します。Emacs上でのTeX文書作成のためには、YaTeXをインストール・設定してあります。スタイルファイルとして、長い下線を引くための
umoline、jumoline、文系論文・レポート用の簡単レイアウトスタイルファイルEasyLayout(福田作成)などもインストールされています。
- XML関連
- XSLTプロセッサとしてXalan-C++をインストールしてあります。プログラミング言語としては、PerlのXML関連モジュール(XML::Parse, XM::DOM, XML::RSS, XML::XMLlibなど)
をCPANからインストールしてあります。
- プログラミング言語関連
- Python2.4.1をインストールしてありますので、日本語のcodecが使えます。PythonではXML関連のモジュールは標準で付いてきます。Javaも演習で使いますので、gcjおよびgijをインストールしてあります。授業では結城浩さんの『Java言語プログラミング・レッスン』をテキストにしていますので、その範囲内のJavaプログラムであれば、gcjで十分です。趣味でGaucheをコンパイルしてインストールしてあります。DebianのGaucheのパッケージはUnicodeがデフォルトの言語になっていて使いづらいため、EUC-JPでコンパイルしました。
- ブラウザー
- XMLやCSS関係の対応が進んでいることもあり、Firefoxを使っています。現時点での最新版1.0.4をインストールしてあります。起動はパネルのアイコンからではなく、コマンドラインで
firefox &です。
3. 削除したパッケージ
とくにサイズの大きいものを中心に、OpenOffice.org、Wine、KDevelop3、Widestudio、Scribusなどを削除しました。結果として、イメージファイルのサイズは620MBほどに抑えられています。まだ余裕があるので、今後、さらに別のソフトをインストールすることもできます。
4. 新規に作成したスクリプトなど
学生には、できるだけコマンドを覚えてもらうよう指導していますが、よく使うのに面倒な指定が必要
なものは、シェル・スクリプトにしてあります。
- startapache
- Apacheサーバーを起動するためのシェル・スクリプト(引数なし)。スーパーユーザーで使用。大谷大学版では、ドキュメント・ルートをホーム・ディレクトリ下のwwwに、CGIディレクトリをホーム・ディレクトリ下のcgi-binにするようにhttpd.confを変更してあります。このスクリプトでは、ホーム・ディレクトリ下にwwwとcgi-binディレクトリを作成し、アクセス権を変更してから、/etc/init.d/httpdを呼び出します。
- startsql
- MySQLサーバーを起動し、mysqladminでルートのパスワードを設定します。スーパーユーザーで使用。デフォルトではsemiというパスワードを使用していますが、オプション引数で
別のパスワードを設定することもできます。
- startftpd
- 教室内での一時的なftpの練習のために(あるいは、ファイルのやりとりのために)、ftpサーバーを起動します。スーパーユーザーで使用します。hosts.allowではftpを許可するように設定済みです。ユーザーknoppixのパスワードを設定するよう尋ねてきますので、一時的にパスワードを設定して下さい。
- chmodall
- 現在のディレクトリにある拡張子付きのファイル(xxxx.htmlやzzzzz.texなど)のアクセス権を644に、所有者をknoppixに変更します。スーパーユーザーで使用。フロッピーなどのDOS領域からコピーしたファイルは、実行属性が付加され、root所有のファイルになってしまい、knoppixユーザーでは書き込みができなくなっていることがあります。それを解消します。
- setproxy
- Firefoxでのhttpプロトコルとhttpsプロトコルのプロキシ・サーバーを設定します。プロキシサーバーのURLまたはIPアドレスを引数に起動します。ポートは8080固定です。もちろんスクリプトを書き直せば、設定変更することは可能です。一度設定したプロキシ情報をクリアするために、
unsetproxyというコマンドも作ってあります。引数なしです。これらは一般ユーザーの権限で使います。もちろん、自宅など、直接インターネットに接続しているときには、必要ありません。またKonquererには対応していません。
- xslt
- xalanに対するラッパー。Emacs上でXMLおよびXSLTの作成をした場合、文字コードがEUC-JPになります(UTF-8でも編集できますがEUC-JPの方が安定しているので)。それをUTF-8エンコードに変換して、xalanにかけます。XSLTファイルは、XMLのスタイルファイル指定から読みとり、書き出すファイル名はXMLファイルの拡張子を変更したものにします。第一引数はXMLファイル名、第二引数は、書き出すファイルの拡張子(html、xml、txtなど)で起動します。
- sjis2euc, euc2sjis
- qkcを利用した文字コード変換のスクリプトです。ファイル名(ワイルドカードを使用することも可)を指定するだけで、シフトJISとEUC-JPの間の変換をします。
5. Emacsのカスタマイズ
プログラムコード作成、文書作成、HTMLやCSSの作成にはEmacsを使用しますので、それらに必要な環境をインストール、設定しています。
- 一行の横幅、行間、フレームの縦のサイズを広くとり、長文の文書作成やウィンドウを分割した
ときにも使いやすいようにしました。
- TeX用にYaTeX、HTML用にYaHTMLを使用。文字コードはEUC-JPに設定。
- Cperl-mode、python-mode、ruby-mode、css-mode、php-modeなどをインストール。javascriptはc-modeを使用。mmmをインストールし、PHPおよびJavascriptはYaHTMLモード下でサブモードとなるように設定。C、C++、Java、XML各モードでepoを使用。
6. イメージファイルのダウンロード
現在の配布バージョンは、産業技術総合研究所版Knoppix3.7をベースにカスタマイズしたOtani-Knoppix3.7_050530です。[ダウンロード(641,411,072 Bytes)]