Skip to content

Linux

IPv4 転送の実行可否を決定する "net.ipv4.ip_forward" を検証する

Linux では "net.ipv4.ip_forward" というパラメータがデフォルトでは "0" ですが、「この値を "1" にすることで IPv4 転送が有効になる」という記事をよく見かけます。このパラメータを実際に検証してみました。

検証は GNS3 上の MicroCore Linux 3.4(Linux Kernel 2.6.33.3)で実施しています。

du コマンドでユーザごとのディレクトリサイズを取得する

Linux では du コマンドでディレクトリやファイルのサイズを取得することが出来ます。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
$ sudo du /home
16  /home/eco/.ssh
2496    /home/eco/linux-2.6.36.1/mm
156 /home/eco/linux-2.6.36.1/lib/zlib_inflate
24  /home/eco/linux-2.6.36.1/lib/raid6/test
140 /home/eco/linux-2.6.36.1/lib/raid6
52  /home/eco/linux-2.6.36.1/lib/reed_solomon
48  /home/eco/linux-2.6.36.1/lib/lzo
132 /home/eco/linux-2.6.36.1/lib/zlib_deflate
2092    /home/eco/linux-2.6.36.1/lib
        ・
        ・
        ・

「ユーザごとのディレクトリサイズが知りたい」という場合、"--max-depth" を 1 に指定することで一階層しかサイズを取得しなくなります。

カーネル内で閉じたトレーサ「ftrace」を使えるようにする

Linux のトレーサと言えば幾つかありますが、@IT の記事「3月版 トレーサ関連に大きな進展、ftraceがデファクトに?」にある ftrace が便利そうです。今回は CentOS 5.5 x86_64 で ftrace が使える環境を用意してみます。id:tasukuchan の trace-cmdを使って、Linux Kernelのイベントログを簡単に取得する を参考にさせて頂きました。

pdsh を使って複数ホストでコマンドを同時実行する

「複数のリモートホストで同じコマンドを一斉実行したい」と思うことはよくありますが、これらのツールを使うことで実現出来ます。

この中でも Parallel Distributed Shell(以下、pdsh)は学習コストが低く、簡単に使い始めることが出来ます。今回はこの pdsh を使ってみます。前提条件として、ssh で公開鍵認証方式を利用するには などを参考に、操作元となるホストから操作対象となる複数のリモートホストへ ssh の公開鍵認証方式でログイン出来るよう、予め設定しておきます。

CentOS 5.5 で IPv6 を無効化する

CentOS 5.5 ではインストール時に IPv6 を無効化しているにもかかわらず、lsmod で確認すると ipv6 モジュールがロードされています。

1
2
$ /sbin/lsmod | grep -i v6
ipv6                  220225  27 ip6t_REJECT

れぶろぐさん?の「CentOS 5 で IPv6 を本当に無効にする」という記事 や CentOS 5 の公式 FAQ 内の「How do I disable IPv6?」という記事に記載がありますが、以下の設定を施すことで IPv6 を無効化することが出来ます。

  1. /etc/sysconfig/network へ "NETWORKING_IPV6=no" を追加
  2. /etc/modprobe.conf へ以下を追加
    • alias ipv6 off
    • alias net-pf-10 off
  3. "/sbin/chkconfig ip6tables off" を実行
  4. 再起動

CentOS 5 上で最新の Linux カーネルをコンパイルする

@IT の Linux Kernel Watch は、いつも楽しく読ませて頂いています。Linux カーネルには次々と魅力的な拡張が為されていますが、安定性を追求する CentOS では中々、新しいカーネルが提供されません。そこで、今回はカーネルをソースコードから自分でコンパイルしてみます。今回は以下の通り、CentOS 5 x86_64 を使いました。

GNU Screen ライクなターミナルマルチプレクサ「tmux」を使う

以前、コンソールでの作業に GNU Screen は必須でしたが、しばらく前からは tmux を使っています。GNU Screen 同様、tmux もターミナルを分割したり、複数のプログラムを実行したり、非常に便利に利用できます。tmux については以下に詳しく書いてありました。

トラフィック・ジェネレーター「D-ITG」を使う

フリーのトラフィック・ジェネレータは幾つかありますが、Linux でも Windows でも、どちらのプラットフォームでも使えるものに D-ITG があります。D-ITG はコマンドラインのツールですが、Java で書かれた GUI のラッパーも公開されています。

inotify-tools を使ってファイルシステムへのアクセスをモニタする

かつて Windows では FileMon というユーティリティを使うことでファイルシステムへのアクセス(アクティビティ)をモニタすることが出来ました。しかし、2006 年以降、FileMon は Process Monitor というツールに統合され、ファイルシステム / プロセス / レジストリのアクティビティを横断的にモニタすることができるようになりました。

Linux でも inotify-tools を使うことでファイルシステムのアクティビティをモニタすることができます。今回は inotify-tools を CentOS 5.5 x86_64 へインストールしてみます。