Linuxシステムを適切に管理するには,Linuxの知識だけではなく,ネットーワークやセキュリティなどの幅広い知識が必要です。それらを効率よく得るには,良質な書籍を読むのが早道です。システム管理に役立つ書籍50冊を厳選し,6ジャンルごとに分けて紹介します。
システム管理とプログラミングは無関係のように思えますが,管理ツールの作成やソフトの不具合対策など,プログラミングに関する知識が必要な局面は結構あるものです。ソース・コードを読んでソフトの使い方がはじめて分かることもあります。
C/C++などのプログラミング言語の文法を解説した書籍は多数あります。それらを読めば,プログラミング言語の文法は理解できます。
しかし,文法だけを知っても自然な英文が書けないのと同様に,それだけではプログラミング能力を高めることはできません。プログラミング能力を身に付けるには,他人のプログラムのソース・コードを数多く「読む」必要があります。
ソース・コードの読解方法に焦点を当てて解説するのが,「Code Reading」です。同書は,広く使われるアルゴリズムやデータ構造など“定番”のプログラム表現を数多く例示しています。これらを覚えれば,処理内容を一目で把握できるようになります。また,ソース読解を補助するツールなども複数紹介しています。
ソース・コードの読解力を高めようと考えている人には,「プログラミングテクニック」と「プログラミングテクニックアドバンス」の2冊も役に立ちます。
これらの書籍は,lsやgrepなどの標準的なUNIXコマンドのソース・コードを使って,さまざまなプログラミング手法を紹介しています。紹介されるコマンドはすべて歴史あるものであり,さまざまなテクニックが盛り込まれているため興味は尽きません。また,コマンドが使用するOSの機能も解説してありますので,システムに対する理解も深まります。
実際にLinuxでプログラムを作成しようと考えた場合,Linuxのシステム・コールや開発環境を知っておく必要があります。その取り掛かりとして読むのにふさわしいのが,「ふつうのLinuxプログラミング」です。同書は,Cコンパイラなどの開発環境の準備から,システムAPI(Application Programming Interface)の利用法までの幅広い内容を取り上げています。日本語文字列の処理や国際化にも簡単に触れています。
|
|
写真6●詳解UNIXプログラミング(ピアソン・エデュケーション) UNIX系OSでのプログラミングを詳しく紹介した本格的な開発者向けの書籍です。 |
本格的なプログラム開発をする場合は,UNIX系OSでのプログラミングを詳しく紹介する名著,「詳解UNIXプログラミング」(写真6)などが参考になるでしょう。
また,システムAPIを掘り下げた書籍として有用なのが,「UNIXプログラミング カーネルから見たプログラミング技法」です。同書は,UNIX系OSの間のシステムAPIの違いや,APIの改良について,歴史的な背景を含めて詳しく解説しています。
プログラム開発を支援するツールに焦点を当てて解説する「UNIXプログラミングの道具箱」は開発効率の向上に役立ちます。同書は,エディタ「Emacs」の使いこなし方,ソース管理やテスト,ドキュメント生成用のツールの活用などを紹介しています。実際の開発で重要なデバッグ用ツールには比較的ページ数を割いており,デバッグに関する一通りのことが分かります。
日本語を処理するプログラムを開発したい場合や,プログラムを日本語対応させたい場合には,文字コードの種類や取り扱い,C言語やUNIX系OSの国際化の仕組みなどの知識が必要です。このような知識を得るのに役立つのが,「国際化プログラミング I18Nハンドブック」です。同書は,1998年に出版された書籍ですが,ここまで分かりやすく,かつ体系的に国際化に関して解説したものはほかに見当たりません。X Window Systemの国際化機能も詳しく解説してあり,非常に参考になります。
表1●Linuxシステム管理に役立つ書籍 | ||||||||||||||||||||||||||||||||||||
|