Skip to content

Linux

CentOS 5.6 で PHP を 5.1.6 → 5.3.6 へバージョンアップする

PHP: date - Manual によると、php の date 関数は PHP 5.2.2 以降でマイクロ秒を表示する書式「u」をサポートしたそうです。試験環境でこの関数とオプション(マイクロ秒の表示)を使う必要があったのですが、手元の CentOS 5.6 では PHP のバージョンが 5.1.6 であった為、マイクロ秒表示のオプションを使うことが出来ません。

1
2
3
4
## php --version
PHP 5.1.6 (cli) (built: Nov 29 2010 16:47:46)
Copyright (c) 1997-2006 The PHP Group
Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies

そこで PHP のバージョンを上げることにしました。

Fedora 15 がリリース

file

The Fedora Project より、Fedora 15 がリリースされました。

ダウンロードはこちらから。

マイコミジャーナル によると、変更点は下記だそうです。

CentOS 5.6 リリース

ようやく、CentOS 5.6 がリリースされました!

変更点は下記だそうです。

ベースとなっているLinuxカーネルは2.6.18,デフォルトのデスクトップ環境はGNOME。デフォルトファイルシステムはext3だがext4も完全にサポートされている。その他,目立った改変としては,PHP 5.3(php53パッケージ),セキュリティ的により強固なNXEC3をサポートするBIND 9.7(bind97パッケージ)が新たに追加され,libvirtが0.8.2にアップデートされている。またファイアウォールをブリッジするebtablesも追加されたり,上位OSのRHEL 6で採用された認証技術System Security Services Daemon(SSSD)の追加が図られるなど,セキュリティ面の強化に力が入れられている。

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. 再起動