Bashプログラミング
 Computer >> コンピューター >  >> プログラミング >> Bashプログラミング

Linuxの知識を高めるために読むべき必読書12選

by Ramesh Natarajan
2009年1月12日

筆者には毎晩、寝る前に少なくとも30分は読書をする習慣があります。読書キューには常に技術書と非技術書を1冊ずつ入れており、インフラ関連の書籍——システム管理、DBA、ネットワーク、ストレージなど——を多く読んでいます。また、著名人の伝記や自己啓発書、たまにサスペンス小説も楽しんでいます。

ここで紹介する12冊のLinux書籍は、決して網羅的・権威的なリストではありません。しかし、長年にわたって筆者が楽しく読んできたお気に入りの一冊であり、まだ読んだことがない方なら、きっとLinuxに関する技術力を高めてくれると確信できるものばかりです。

Linuxエンジニアのためのおすすめ技術書12冊

  1. Sed and Awk(Dale Dougherty、Arnold Robbins 著)

    SedとAwkは、筆者のLinuxコマンドラインでの仕事のやり方を変えてくれた存在です。この本は、SedとAwkに関して必要となる唯一の教材と言えます。基本だけでもマスターすれば、複雑なタスクをいかに素早くエレガントに処理できるかに驚くはずです。日常的なクイックリファレンスとしては、同じ著者による「Sed and Awk Pocket Reference」を愛用しています。

  2. Learning the Vi and Vim Editors(Arnold Robbins 著)

    筆者はコマンドラインが大好きで、当然ながらViとVimエディタの熱心なファンです。数年前にLinux上でC言語のコードを大量に書いていた頃は、Viエディタのポケットリファレンスを常に持ち歩いていました。ViやVimを何年も使っている方でも、まだこの本を読んでいないなら、ぜひ自分のために読んでみてください。Vimエディタの潜在能力にきっと驚かされることでしょう。

  3. Bash Cookbook(Carl Albing、JP Vossen、Cameron Newham 著)

    システム管理者、DBA、開発者のどれであっても、どこかのタイミングでシェルスクリプトを書く場面が必ず訪れます。賢いシステム管理者は、シェルスクリプティングの技術をマスターすれば、単純作業をスクリプトに任せてサーバーを「オートパイロット」状態にできることを知っています。その境地に達するには、この本に収録された豊富なサンプルをマスターすることが近道です。Bash関連の書籍は他にもありますが、詳細な例が満載のこの本が群を抜いています。

  4. SSH, The Secure Shell(Daniel J. Barrett、Richard E. Silverman、Robert G. Byrnes 著)

    迷うことなく「SSHに関する最良の一冊」と言える本です。理論面と実践面の両方が丁寧に解説されています。エンドユーザーとしてSSHを使うのは比較的簡単ですが、管理者として設定するのは複雑で、SSHへの深い理解が求められます。システム管理者なら必読です。SSH1、SSH2、OpenSSHといった異なる実装ごとに、何をどう変えるべきかが具体的な例とともに示されています。

  5. Essential System Administration(Æleen Frisch 著)

    Unixシステム管理者を目指す人にとって非常に優れた一冊です。典型的なシステム管理タスクを幅広くカバーしており、AIX、FreeBSD、HP-UX、Linux、Solaris、Tru64といった各種Unix系OSの例が収載されているため、複数のプラットフォームを扱う際の完璧な相棒になります。筆者も複数のUnix系システムを同時に管理していた頃は、ポケット版の「Essential System Administration Pocket Reference」を活用していました。

  6. Linux Server Hacks Volume One(Rob Flickenger 著)

    実用的なハック(小技・テクニック)が100個も1冊に詰まっています。まずLinuxの検証用環境を構築し、これらのハックを片っ端から試してみるのがおすすめです。「サーバーの基礎」「バージョン管理」「バックアップ」「ネットワーク」「監視」「SSH」「スクリプティング」「情報サーバー」といったセクションにきれいに分類されています。これらをマスターしたら、William von Hagen氏とBrian Jones氏による続編「Linux Server Hacks Volume Two」(認証、監視、セキュリティ、パフォーマンス、接続性に焦点を当てた100のハック)もぜひ読んでください。

  7. DNS and BIND(Cricket Liu、Paul Albitz 著)

    筆者は数年前、オンラインのドキュメントを読みながら初めてDNSを構築しました。その後、DNSとBINDの仕組みをきちんと理解するためにこの本を購入しました。改訂版が発売されるたびに買い替えているほどのお気に入りです。本気でシステム管理者を目指すなら、書架に置いておくべき一冊です。

  8. Understanding the Linux Kernel(Daniel Bovet、Marco Cesati 著)

    Linux環境で本格的に開発を行うエンジニアやシステム管理者にとって必読の書です。Linuxカーネル2.6の内部動作を構造的かつ論理的に解説しており、メモリ管理、プロセススケジューリング、I/Oアーキテクチャ、ブロックデバイスの扱い方などを学べます。Linuxの中身を覗いてみたい好奇心旺盛なギークにとって、まさにご褒美のような一冊です。

  9. Linux Cookbook(Carla Schroder 著)

    一般ユーザーとシステム管理者の両方の視点からLinuxの機能をカバーしているのが特徴です。RPMベースのシステムとDebianにおけるソフトウェアのインストール・管理については、それぞれ専用の章が設けられています。Red Hat系ディストリビューションを使っているなら、Daniel J. Barrett著の「Linux Pocket Guide」も図書館に加える価値があります。主要なLinuxコマンドと使用例がコンパクトにまとめられています。

  10. Linux Firewalls(Michael Rash 著)

    セキュアなLinuxシステムを構築したいなら、ぜひ読むべき一冊です。iptablesに関する書籍は数多くありますが、この本は特に、iptables、psad、fwsnortを組み合わせて侵入検知システム(IDS)を構築する基礎に焦点を当てています。iptablesで何ができるのかを具体的な例とともに網羅的に確認したい場合は、Gregor N. Purdy著の「Linux Iptables Pocket Reference」が最適です。

  11. Linux Administration Handbook(Evi Nemeth、Garth Snyder、Trent R. Hein 著)

    筆者がシステム管理者になったばかりの頃、頻繁に参照していた頼れる一冊です。全30章・約1000ページという充実の内容で、「基本管理」「ネットワーキング」「その他のトピック」という3つの大きなセクションに整理されており、体系的に学習できます。

  12. Beginning Ubuntu Linux(Keir Thomas、Jaime Sicam 著)

    WindowsからLinuxへ移行したい人にぴったりの入門書です。使わなくなった古いノートPCやデスクトップにUbuntu Linuxをインストールし、この本を手元に置いて学習を始めましょう。筆者は、まだLinuxを使っていない人々にその魅力を広めることを強く信じています。大切な家族や友人にLinuxを覚えてほしいなら、古いノートPCにUbuntuを入れてこの本をプレゼントしてみてください。きっと感謝されるはずです。

まとめ

筆者のおすすめLinux書籍をもっと知りたい方は、Amazonの「The Geek Stuff」ブックストアをチェックしてみてください。

世の中には数百冊ものLinux関連書籍が存在します。あなたのお気に入りのLinux書籍は何ですか?このリストにない一冊があれば、ぜひ教えてください。

この記事が役に立ったと思ったら、ブックマークやシェアをお願いします。

  1. Linuxでシェルスクリプトを作成する方法【初心者向け基本ガイド】

    シェルスクリプトの作成は、Linuxユーザーが必ず身につけておきたい最重要スキルのひとつです。シェルスクリプトを活用すれば、手作業で一行ずつ実行すると面倒な反復タスクを効率的に自動化できます。このチュートリアルでは、すべてのLinuxユーザーが押さえておくべき基本的なシェルスクリプトの操作方法を、実例とともにわかりやすく解説します。1. 簡単なシェルスクリプトを作成するシェルスクリプトとは、ASCIIテキストで構成されたファイルのことです。まずはテキストエディタを使って、簡単なシェルスクリプトを作成してみましょう。テキストエディタにはコマンドライン型とGUI型のさまざまな種類がありますが、本ガ

  2. Marcel – Linux向けのよりモダンな新しいシェル

    Marcelは新世代のシェルです。多くの点で従来のシェルと似ていますが、いくつかの点でまったく異なるアプローチを採用しています。パイプ処理: 従来のシェルは、あるコマンドの出力を別のコマンドの入力へテキストとして渡すためにパイプを使います。一方Marcelは、文字列ではなく構造化データをパイプします。Pythonとの統合: MarcelはPythonで実装されており、さまざまな形でPythonの機能を利用できます。コマンドにちょっとしたロジックが必要なときも、Pythonで自然に記述できます。スクリプティング: Marcelはスクリプティングにユニークなアプローチを取っています。もちろん、ma