インターネットに直結することもあるサーバーはセキュリティを比較的高い状態で維持する必要があります。 そのための基本的な対応として、導入するアプリケーションを限定したり、telnetdを停止するなどネットワークサービスを制限します。 当然gccなどのコンパイラは導入しません。
あると便利だけれどもパッケージされていないPerlのCPANライブラリを/usr/lib/perl5以下に導入できないという状況も当然考えられます。
システム管理者の仕事は、様々な制限との戦いといえるでしょう。 アプリケーション開発者は "PERL5LIB" の意義を理解できずに「必要なんだから、導入しろ」というかもしれません。 また、制約との戦いを時間の無駄と考えて、指示されるがままに(ディスク容量以外)限度なく自由にアプリケーション、ライブラリを導入できる環境もあるかもしれません。
しかし組織が成熟し大きくなってくると、負荷分散のためにクラスタリングなど冗長化を行なうようになります。 導入から時間が経つとクラスタリングされている複数のサーバー間での違いが障害の原因になってきます。 準備した変更手順書を配って数人で作業をする時にサーバーAでは実行できるが、 サーバーBではエラーになり、手順書実行に創造力が求められる事態に発展する可能性があります。
システム管理者に 必要なスキル は非常に大きな振り幅を持っています。 それは障害が発生するまで、日々の努力が必要だったと認識されることがないからです。 そのため障害が発生するまでは、スキルに乏しくても有能なシステム管理者になる事ができます。 いざ障害に至った時に、どのような対応をするかで、そのシステム管理者の真価が発揮されるといえるでしょう。
この文書ではシェルスクリプトの解説書ですが、念頭に置いている事は上記のようなことがらです。 シェルスクリプトを手掛りに自信をつけて、目立たないけれどいざという時に力を発揮する管理者を目指してください。
Created: 2009-12-12, Last modified: 2010-03-19
www.yasundial.org by Yasuhiro ABE is licensed under a Creative Commons Attribution 2.1 Japan License. Permissions beyond the scope of this license may be available at http://www.yasundial.org/info/license.html.