広告

検索

RSS RSSフィード

カレンダー

2018年12月
« 4月    
 12
3456789
10111213141516
17181920212223
24252627282930
31  

カテゴリー

最新のコメント

リンク

CentOS7でキーボード配列をUSに変更

投稿者:yasu 更新日時:2017年5月26日 16時06分10秒
カテゴリCentOS, 自宅サーバー
タグ

仮想サーバにCentOS 7をインストールした際、キー配列をJISのまま実施したので、インストール終了後コマンドでキー配列をUSに変更したけど、忘れちゃうのでメモ。

# localectl set-keymap us

これで/etc/vconsole.confの内容もUSキー配列に変わり、OS再起動してもキー配列がUSのままになる。

CentOS 6に3TB×6台搭載してソフトウェアRAID6を構築

投稿者:yasu 更新日時:2012年9月30日 22時25分19秒
カテゴリCentOS, NAS
タグ

今年の3月に新しいNAS機の為に購入したNAS機。
Ubuntu機+NAS機+PT2機=Express5800/GT110d+Core i3 2120T
ブート用SSDを接続してUbuntu 12.04をインストールしたところでしばらくほったらかしになっていたのですが、Ubuntu Desktop機は別にあるしNASにUbuntuインストールしなくてもいいかなとか、NASにPT2挿すのはいいけど大量のファイルをNASにコピーしている間にPT2で録画したときにちゃんと録画できるのかが心配になったので、とりあえずCentOS 6をインストールしてPT2は挿さずに純粋なNAS機として構築することにしました。
で、最近3TBのHDDがようやく1万円台まで値下がりしてきたのでWESTERN DIGITAL WD30EZRX6台と3.5inchHDDリムーバブルケース EZ-RACK-02LWを2つ購入しました。

※CentOS 6のインストール手順はScientific Linux 6のインストール手順と変わりないので割愛します。
Scientific Linux 6で自宅サーバー構築 その2 Scientific Linux 6をExpress5800/GT110bにインストール

# 1台目のHDDをGPT形式でフォーマットする
[root@nas ~]# parted /dev/sdb
GNU Parted 2.1
/dev/sdb を使用
GNU Parted へようこそ! コマンド一覧を見るには 'help' と入力してください。
(parted) mklabel gpt
(parted) unit GB
(parted) mkpart primary ext4 0 3001
(parted) print
モデル: ATA WDC WD30EZRX-00M (scsi)
ディスク /dev/sdb: 3001GB
セクタサイズ (論理/物理): 512B/4096B
パーティションテーブル: gpt

番号  開始    終了    サイズ  ファイルシステム  名前     フラグ
 1    0.00GB  3001GB  3001GB                    primary

(parted) quit
通知: 必要であれば /etc/fstab を更新するのを忘れないようにしてください。  

# 2台目のHDDをGPT形式でフォーマットする
[root@nas ~]# parted /dev/sdc
GNU Parted 2.1
/dev/sdc を使用
GNU Parted へようこそ! コマンド一覧を見るには 'help' と入力してください。
(parted) mklabel gpt
(parted) unit GB
(parted) mkpart primary ext4 0 3001
(parted) print
モデル: ATA WDC WD30EZRX-00M (scsi)
ディスク /dev/sdc: 3001GB
セクタサイズ (論理/物理): 512B/4096B
パーティションテーブル: gpt

番号  開始    終了    サイズ  ファイルシステム  名前     フラグ
 1    0.00GB  3001GB  3001GB                    primary

(parted) quit
通知: 必要であれば /etc/fstab を更新するのを忘れないようにしてください。  

# 3台目のHDDをGPT形式でフォーマットする
[root@nas ~]# parted /dev/sdd
GNU Parted 2.1
/dev/sdd を使用
GNU Parted へようこそ! コマンド一覧を見るには 'help' と入力してください。
(parted) mklabel gpt
(parted) unit GB
(parted) mkpart primary ext4 0 3001
(parted) print
モデル: ATA WDC WD30EZRX-00M (scsi)
ディスク /dev/sdd: 3001GB
セクタサイズ (論理/物理): 512B/4096B
パーティションテーブル: gpt

番号  開始    終了    サイズ  ファイルシステム  名前     フラグ
 1    0.00GB  3001GB  3001GB                    primary

(parted) quit
通知: 必要であれば /etc/fstab を更新するのを忘れないようにしてください。  

# 4台目のHDDをGPT形式でフォーマットする
[root@nas ~]# parted /dev/sde
GNU Parted 2.1
/dev/sde を使用
GNU Parted へようこそ! コマンド一覧を見るには 'help' と入力してください。
(parted) mklabel gpt
(parted) unit GB
(parted) mkpart primary ext4 0 3001
(parted) print
モデル: ATA WDC WD30EZRX-00M (scsi)
ディスク /dev/sde: 3001GB
セクタサイズ (論理/物理): 512B/4096B
パーティションテーブル: gpt

番号  開始    終了    サイズ  ファイルシステム  名前     フラグ
 1    0.00GB  3001GB  3001GB                    primary

(parted) quit
通知: 必要であれば /etc/fstab を更新するのを忘れないようにしてください。  

# 5台目のHDDをGPT形式でフォーマットする
[root@nas ~]# parted /dev/sdf
GNU Parted 2.1
/dev/sdf を使用
GNU Parted へようこそ! コマンド一覧を見るには 'help' と入力してください。
(parted) mklabel gpt
(parted) unit GB
(parted) mkpart primary ext4 0 3001
(parted) print
モデル: ATA WDC WD30EZRX-00M (scsi)
ディスク /dev/sdf: 3001GB
セクタサイズ (論理/物理): 512B/4096B
パーティションテーブル: gpt

番号  開始    終了    サイズ  ファイルシステム  名前     フラグ
 1    0.00GB  3001GB  3001GB                    primary

(parted) quit
通知: 必要であれば /etc/fstab を更新するのを忘れないようにしてください。  

# 6台目のHDDをGPT形式でフォーマットする
[root@nas ~]# parted /dev/sdg
GNU Parted 2.1
/dev/sdg を使用
GNU Parted へようこそ! コマンド一覧を見るには 'help' と入力してください。
(parted) mklabel gpt
(parted) unit GB
(parted) mkpart primary ext4 0 3001
(parted) print
モデル: ATA WDC WD30EZRX-00M (scsi)
ディスク /dev/sdg: 3001GB
セクタサイズ (論理/物理): 512B/4096B
パーティションテーブル: gpt

番号  開始    終了    サイズ  ファイルシステム  名前     フラグ
 1    0.00GB  3001GB  3001GB                    primary

(parted) quit
通知: 必要であれば /etc/fstab を更新するのを忘れないようにしてください。  

# 6台のHDDをRaid6でビルドします
[root@nas ~]# mdadm --create /dev/md0 --level=6 --raid-devices=6 /dev/sd[bcdefg]1 &
[1] 2836
[root@nas ~]# mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.

[1]+  終了                  mdadm --create /dev/md0 --level=6 --raid-devices=6 /dev/sd[bcdefg]1

# ビルドの進捗具合を確認します
[root@nas ~]# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4] 
md0 : active raid6 sdg1[5] sdf1[4] sde1[3] sdd1[2] sdc1[1] sdb1[0]
      11721054208 blocks super 1.2 level 6, 512k chunk, algorithm 2 [6/6] [UUUUUU]
      [>....................]  resync =  0.0% (1482852/2930263552) finish=460.8min speed=105918K/sec
      
unused devices: <none>

[root@nas ~]# mdadm -D /dev/md0
/dev/md0:
        Version : 1.2
  Creation Time : Mon Aug 27 11:53:36 2012
     Raid Level : raid6
     Array Size : 11721054208 (11178.07 GiB 12002.36 GB)
  Used Dev Size : 2930263552 (2794.52 GiB 3000.59 GB)
   Raid Devices : 6
  Total Devices : 6
    Persistence : Superblock is persistent

    Update Time : Mon Aug 27 11:53:36 2012
          State : clean, resyncing 
 Active Devices : 6
Working Devices : 6
 Failed Devices : 0
  Spare Devices : 0

         Layout : left-symmetric
     Chunk Size : 512K

  Resync Status : 0% complete

           Name : nas:0  (local to host nas)
           UUID : 1d9d0ab0:7ff43cb4:2819b8fb:fe7b56ff
         Events : 0

    Number   Major   Minor   RaidDevice State
       0       8       17        0      active sync   /dev/sdb1
       1       8       33        1      active sync   /dev/sdc1
       2       8       49        2      active sync   /dev/sdd1
       3       8       65        3      active sync   /dev/sde1
       4       8       81        4      active sync   /dev/sdf1
       5       8       97        5      active sync   /dev/sdg1

# ビルドが終わると下記のような表示になります
[root@nas ~]# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : active raid6 sdb1[6] sdd1[2] sde1[3] sdc1[1] sdg1[5] sdf1[4]
      11721054208 blocks super 1.2 level 6, 512k chunk, algorithm 2 [6/6] [UUUUUU]

unused devices: <none>
[root@nas ~]# mdadm -D /dev/md0
/dev/md0:
        Version : 1.2
  Creation Time : Mon Aug 27 11:53:36 2012
     Raid Level : raid6
     Array Size : 11721054208 (11178.07 GiB 12002.36 GB)
  Used Dev Size : 2930263552 (2794.52 GiB 3000.59 GB)
   Raid Devices : 6
  Total Devices : 6
    Persistence : Superblock is persistent

    Update Time : Sun Sep 30 22:19:04 2012
          State : clean
 Active Devices : 6
Working Devices : 6
 Failed Devices : 0
  Spare Devices : 0

         Layout : left-symmetric
     Chunk Size : 512K

           Name : nas:0  (local to host nas)
           UUID : 1d9d0ab0:7ff43cb4:2819b8fb:fe7b56ff
         Events : 6134

    Number   Major   Minor   RaidDevice State
       6       8       17        0      active sync   /dev/sdb1
       1       8       33        1      active sync   /dev/sdc1
       2       8       49        2      active sync   /dev/sdd1
       3       8       65        3      active sync   /dev/sde1
       4       8       81        4      active sync   /dev/sdf1
       5       8       97        5      active sync   /dev/sdg1

# Raid領域をext4形式でフォーマットします
[root@nas ~]# mkfs.ext4 /dev/md0
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=128 blocks, Stripe width=512 blocks
732569600 inodes, 2930263552 blocks
146513177 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
89425 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
	4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 
	102400000, 214990848, 512000000, 550731776, 644972544, 1934917632, 
	2560000000

Writing inode tables:  0/89425→done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 27 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

# Raid領域をマウントします
[root@nas ~]# mkdir /nas
[root@nas ~]# mount /dev/md0 /nas

# Raid用設定ファイルを作成します
[root@nas ~]# echo 'DEVICE /dev/sd[bcdefg]1'>/etc/mdadm.conf
[root@nas ~]# mdadm -Ds >> /etc/mdadm.conf

# OS起動時Raid領域の自動マウント設定
[root@nas ~]# vi /etc/fstab
#
# /etc/fstab

# Created by anaconda on Sun Aug 26 18:59:44 2012
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=81e15c36-0534-4302-a5bc-07862b9245fe /          ext4    defaults        1 1
UUID=e0ccd605-18f6-4111-8fd4-98c26727d28b swap       swap    defaults        0 0
/dev/md0                /nas                    ext4    defaults        0 2
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0

これでRaidの設定は完了しました。
後はSambaをインストール・設定すればWindowsやMacからもアクセスできるようになります。
※Sambaのインストール・設定は以前の記事を参考に実施しました
NEC Express5800/S70FLでNAS構築計画その6 » sa-sa-ki.jpのblog

CentOS 5.6 iptablesのログ出力を行う

投稿者:yasu 更新日時:2011年4月15日 15時02分33秒
カテゴリCentOS, Linux, 自宅サーバー
タグ

iptablesで破棄されたアクセスのログを取ろうと思います。
ログファイルを別ファイルに出力してかつ毎週ローテーションしようと思います。

iptablesの設定

破棄されるアクセスのログを取りますので、最後のREJECTする前の行にログ出力の設定を追加します。

# iptablesの設定ファイルを変更します
[root@centos ~]# vi /etc/sysconfig/iptables
# Firewall configuration written by system-config-securitylevel
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:RH-Firewall-1-INPUT - [0:0]
-A INPUT -j RH-Firewall-1-INPUT
-A FORWARD -j RH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
~ 中略 ~
# ファイアーウォールのログを出力します
-A RH-Firewall-1-INPUT -j LOG --log-level debug --log-prefix '[iptables]:'
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
COMMIT

[:]キー、[w]キー、[q]キーを順に押下して内容を保存しviエディタを終了します

# iptablesサービスを再起動します
[root@centos ~]# /etc/rc.d/init.d/iptables restart
ファイアウォールルールを適用中: [ OK ]
チェインポリシーを ACCEPT に設定中filter [ OK ]
iptables モジュールを取り外し中 [ OK ]
iptables ファイアウォールルールを適用中: [ OK ]
iptables モジュールを読み込み中ip_conntrack_netbios_ns [ OK ]

syslogの設定

iptablesのログ出力先を指定します。

# syslogの設定ファイルを変更します
[root@centos ~]# vi /etc/syslog.conf
# Log all kernel messages to the console.
# Logging much else clutters up the screen.
#kern.* /dev/console
# iptablesのログ出力先を指定します
kern.debug /var/log/iptables.log

# Log anything (except mail) of level info or higher.
# Don't log private authentication messages!
*.info;mail.none;authpriv.none;cron.none /var/log/messages

# The authpriv file has restricted access.
authpriv.* /var/log/secure

# Log all the mail messages in one place.
mail.* -/var/log/maillog

# Log cron stuff
cron.* /var/log/cron

# Everybody gets emergency messages
*.emerg *

# Save news errors of level crit and higher in a special file.
uucp,news.crit /var/log/spooler

# Save boot messages also to boot.log
local7.* /var/log/boot.log

# iptables log

[:]キー、[w]キー、[q]キーを順に押下して内容を保存しviエディタを終了します

# syslogサービスを再起動します
[root@centos log]# /etc/rc.d/init.d/syslog restart
カーネルロガーを停止中: [ OK ]
システムロガーを停止中: [ OK ]
システムロガーを起動中: [ OK ]
カーネルロガーを起動中: [ OK ]

ログローテーションの設定

iptablesのログのローテーション設定を行います。

[root@centos ~]# vi /etc/logrotate.d/syslog
/var/log/messages /var/log/secure /var/log/maillog /var/log/spooler /var/log/boot.log /var/log/cron /var/log/iptables.log {
sharedscripts
postrotate
/bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/null` 2> /dev/null || true
/bin/kill -HUP `cat /var/run/rsyslogd.pid 2> /dev/null` 2> /dev/null || true
endscript
}

[:]キー、[w]キー、[q]キーを順に押下して内容を保存しviエディタを終了します

以上で設定は終了です。
しばらくして出力した/var/log/iptables.logを見てみると

Apr 15 02:00:39 centos kernel: '[iptables]:'IN=eth0 OUT= MAC=00:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:00 SRC=114.166.97.239 DST=192.168.0.xx LEN=516 TOS=0x00 PREC=0x00 TTL=53 ID=14481 PROTO=TCP SPT=65019 DPT=80 WINDOW=65535 RES=0x00 ACK PSH URGP=0
Apr 15 10:56:35 centos kernel: '[iptables]:'IN=eth0 OUT= MAC=00:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:00 SRC=58.4.67.21 DST=192.168.0.xx LEN=40 TOS=0x00 PREC=0x00 TTL=54 ID=33035 PROTO=TCP SPT=62597 DPT=80 WINDOW=16614 RES=0x00 RST URGP=0
Apr 15 10:56:39 centos kernel: '[iptables]:'IN=eth0 OUT= MAC=00:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:00 SRC=58.4.67.21 DST=192.168.0.xx LEN=40 TOS=0x00 PREC=0x00 TTL=54 ID=43980 PROTO=TCP SPT=58552 DPT=80 WINDOW=16412 RES=0x00 RST URGP=0
Apr 15 12:27:21 centos kernel: '[iptables]:'IN=eth0 OUT= MAC=000:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:00 SRC=180.11.99.99 DST=192.168.0.xx LEN=743 TOS=0x00 PREC=0x00 TTL=117 ID=17774 PROTO=TCP SPT=62767 DPT=80 WINDOW=66 RES=0x00 ACK PSH URGP=0
Apr 15 13:14:43 centos kernel: '[iptables]:'IN=eth0 OUT= MAC=00:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:00 SRC=218.42.83.100 DST=192.168.0.xx LEN=40

こんなアクセスがあった事がわかります。

CentOS5.5にlshwをインストールしてみた

投稿者:yasu 更新日時:2010年12月3日 14時24分35秒
カテゴリCentOS, Linux, Ubuntu
タグ

たまたまUbuntu Tipsを読んでいて便利なコマンドがあるなーと思ったのがlshwコマンドなのですが、CentOSにはインストールされていなかったのでCentOSにもlshwをインストールしてみました。
ハードウェア情報を調べるには - Ubuntu Japanese Wiki

[root@centos ~]# vi /etc/yum.repos.d/CentOS-Dag.repo
[dag]
name=CentOS-$releasever - Dag
baseurl=http://ftp.riken.jp/Linux/dag/redhat/el$releasever/en/$basearch/dag
gpgcheck=1
enabled=1 ←# 0から1に変更
gpgkey=http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt

ファイルを保存し、viエディタを終了します

[root@centos ~]# yum install lshw
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* addons: ftp.nara.wide.ad.jp
* base: ftp.nara.wide.ad.jp
* extras: ftp.nara.wide.ad.jp
* updates: ftp.nara.wide.ad.jp
dag | 1.1 kB 00:00
dag/primary | 2.2 MB 00:00
dag 10352/10352
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package lshw.i386 0:2.15-1.el5.rf set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

==========================================================================================
Package Arch Version Repository Size
==========================================================================================
Installing:
lshw i386 2.15-1.el5.rf dag 1.4 M

Transaction Summary
==========================================================================================
Install 1 Package(s)
Upgrade 0 Package(s)

Total download size: 1.4 M
Is this ok [y/N]: y
Downloading Packages:
lshw-2.15-1.el5.rf.i386.rpm | 1.4 MB 00:00
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : lshw 1/1

Installed:
lshw.i386 0:2.15-1.el5.rf

Complete!

これでインストール完了です。
あとはlshwコマンドを実行すればハードウェア情報が取得できます。

CentOS5.5にHotSaNICをインストールしてサーバー監視

投稿者:yasu 更新日時:2010年11月14日 15時06分54秒
カテゴリCentOS, Linux
タグ

CentOS5.5にHotSaNICを導入してサーバ監視をしたいと思います。

■参考サイト■
はじめての自宅サーバ構築 - Fedora/CentOS - サーバ監視(HotSaNIC + RRDTool)
ハードディスクの温度を測定する方法 - Linuxで自宅サーバ構築(新森からの雑記)

RRDTool(HotSaNIC関連パッケージのひとつ)インストール用dagレポジトリ有効化

RRDToolをyumでインストールする為にdagレポジトリを有効にします。

[root@centos ~]# vi /etc/yum.repos.d/CentOS-Dag.repo
[dag]
name=CentOS-$releasever - Dag
baseurl=http://ftp.riken.jp/Linux/dag/redhat/el$releasever/en/$basearch/dag
gpgcheck=1
# enabledの値を0から1に変更
enabled=0

enabled=1
gpgkey=http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt

ファイルを保存してviエディタを終了します

HotSaNIC関連パッケージインストール

HotSaNIC関連パッケージをインストールします。

[root@centos ~]# yum -y install rrdtool net-snmp net-snmp-utils ImageMagick hddtemp

RRDTool(HotSaNIC関連パッケージのひとつ)インストール用dagレポジトリ無効化

RRDToolをyumでインストールしたらdagレポジトリを無効にします。

[root@centos ~]# vi /etc/yum.repos.d/CentOS-Dag.repo
[dag]
name=CentOS-$releasever - Dag
baseurl=http://ftp.riken.jp/Linux/dag/redhat/el$releasever/en/$basearch/dag
gpgcheck=1
# enabledの値を1から0に変更
enabled=1

enabled=0
gpgkey=http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt

ファイルを保存してviエディタを終了します

hhdtemp用設定ファイルダウンロード

hhdtemp用設定ファイルをダウンロードします。

[root@centos ~]# wget -O /etc/hddtemp.db http://www.guzu.net/linux/hddtemp.db

HotSaNICインストール

HotSaNICをインストールします。

[root@centos ~]# cd /usr/local
[root@centos local]# wget http://sourceforge.net/projects/hotsanic/files/hotsanic/0.5.0-pre5/hotsanic-0.5.0-pre5.tgz/download

[root@centos local]# tar -xzvf hotsanic-0.5.0-pre5.tgz

HotSaNIC設定ファイル作成

HotSaNICの設定ファイルをウィザード形式で作成します。
ここではひとまず全部の設定をOnにします。

[root@centos local]# cd HotSaNIC
[root@centos HotSaNIC]# ./setup.pl
Configuring modules:

Module found: APCUSV

Description:
Records some APC-UPS specific readouts:
- load percentage
- battery percentage
- time left when on battery
- output voltage
- system temperature
- battery voltage
Do you want to use this module? (Y/n) > y
Do you want to show this module's graphs on the webpage? (Y/n) > y

----------------------------------------

Module found: APPS

Description:
Records the number of instances of the specified applications.
Do you want to use this module? (Y/n) > y
Do you want to show this module's graphs on the webpage? (Y/n) > y

----------------------------------------

Module found: BIND

Description:
Records statistics from the ISC BIND nameserver
Do you want to use this module? (Y/n) > y
Do you want to show this module's graphs on the webpage? (Y/n) > y

----------------------------------------

Module found: DISKIO

Description:
Records I/O statistics for harddisks.
Do you want to use this module? (Y/n) > y
Do you want to show this module's graphs on the webpage? (Y/n) > y

----------------------------------------

Module found: DNET

Description:
Records stats for Distributed.net personal proxies
Do you want to use this module? (Y/n) > y
Do you want to show this module's graphs on the webpage? (Y/n) > y

----------------------------------------

Module found: MAILQ

Description:
Records outbound mail status.
Currently supported mail-systems: postfix
Do you want to use this module? (Y/n) > y
Do you want to show this module's graphs on the webpage? (Y/n) > y

----------------------------------------

Module found: NETSTAT

Description:
Records network socket-states.
Do you want to use this module? (Y/n) > y
Do you want to show this module's graphs on the webpage? (Y/n) > y

----------------------------------------

Module found: NETWORKS

Description:
Records IP- and protocol-based traffic stats.
ipchains/iptables required!
Do you want to use this module? (Y/n) > y
Do you want to show this module's graphs on the webpage? (Y/n) > y

----------------------------------------

Module found: PART

Description:
Records partition usages.
Do you want to use this module? (Y/n) > y
Do you want to show this module's graphs on the webpage? (Y/n) > y

----------------------------------------

Module found: PING

Description:
Records min/avg/max ping-times for configured hosts
Do you want to use this module? (Y/n) > y
Do you want to show this module's graphs on the webpage? (Y/n) > y

----------------------------------------

Module found: SENSORS

Description:
Records stats for configured hardware sensors
LM-Sensors required!
Do you want to use this module? (Y/n) > y
Do you want to show this module's graphs on the webpage? (Y/n) > y

----------------------------------------

Module found: SHOUTCAST

Description:
Records remote stats for ShotCast servers

Note: The console-webbrowser "lynx" has to
be installed to use this module.
Do you want to use this module? (Y/n) > y
Do you want to show this module's graphs on the webpage? (Y/n) > y

----------------------------------------

Module found: SYSTEM

Description:
Records system specific data:
- cpu usage
- irqs
- loadavg
- memory / swap
- # of processes
- uptime
- # of users
Do you want to use this module? (Y/n) > y
Do you want to show this module's graphs on the webpage? (Y/n) > y

----------------------------------------

Module found: TRAFFIC

Description:
Records usage of ethernet devices (input / output)
Do you want to use this module? (Y/n) > y
Do you want to show this module's graphs on the webpage? (Y/n) > y

----------------------------------------

Module found: WORMS

Description:
Records stats for worm-impacts on local webserver
Do you want to use this module? (Y/n) > y
Do you want to show this module's graphs on the webpage? (Y/n) > y

----------------------------------------

setting up apcusv ...

ERROR: apcaccess could not be found.

Please check the settings file and adapt it to satisfy your needs.

setting up apps ...
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.7/FAQ
acpid (running 1 times now) - Use this item?? (y/N) > y
aio/0 (running 1 times now) - Use this item?? (y/N) > y
aio/1 (running 1 times now) - Use this item?? (y/N) > y
aio/2 (running 1 times now) - Use this item?? (y/N) > y
aio/3 (running 1 times now) - Use this item?? (y/N) > y
ata/0 (running 1 times now) - Use this item?? (y/N) > y
ata/1 (running 1 times now) - Use this item?? (y/N) > y
ata/2 (running 1 times now) - Use this item?? (y/N) > y
ata/3 (running 1 times now) - Use this item?? (y/N) > y
ata_aux (running 1 times now) - Use this item?? (y/N) > y
atd (running 1 times now) - Use this item?? (y/N) > y
audispd (running 1 times now) - Use this item?? (y/N) > y
auditd (running 1 times now) - Use this item?? (y/N) > y
automount (running 1 times now) - Use this item?? (y/N) > y
avahi-daemon (running 2 times now) - Use this item?? (y/N) > y
bash (running 3 times now) - Use this item?? (y/N) > y
clamd (running 1 times now) - Use this item?? (y/N) > y
cqueue/0 (running 1 times now) - Use this item?? (y/N) > y
cqueue/1 (running 1 times now) - Use this item?? (y/N) > y
cqueue/2 (running 1 times now) - Use this item?? (y/N) > y
cqueue/3 (running 1 times now) - Use this item?? (y/N) > y
crond (running 1 times now) - Use this item?? (y/N) > y
cupsd (running 1 times now) - Use this item?? (y/N) > y
dbus-daemon (running 1 times now) - Use this item?? (y/N) > y
dovecot (running 1 times now) - Use this item?? (y/N) > y
dovecot-auth (running 1 times now) - Use this item?? (y/N) > y
events/0 (running 1 times now) - Use this item?? (y/N) > y
events/1 (running 1 times now) - Use this item?? (y/N) > y
events/2 (running 1 times now) - Use this item?? (y/N) > y
events/3 (running 1 times now) - Use this item?? (y/N) > y
gam_server (running 1 times now) - Use this item?? (y/N) > y
gpm (running 1 times now) - Use this item?? (y/N) > y
hald (running 1 times now) - Use this item?? (y/N) > y
hald-addon-acpi (running 1 times now) - Use this item?? (y/N) > y
hald-addon-keyb (running 2 times now) - Use this item?? (y/N) > y
hald-runner (running 1 times now) - Use this item?? (y/N) > y
hcid (running 1 times now) - Use this item?? (y/N) > y
hd-audio0 (running 1 times now) - Use this item?? (y/N) > y
hidd (running 1 times now) - Use this item?? (y/N) > y
httpd (running 9 times now) - Use this item?? (y/N) > y
imap (running 2 times now) - Use this item?? (y/N) > y
imap-login (running 5 times now) - Use this item?? (y/N) > y
init (running 1 times now) - Use this item?? (y/N) > y
irqbalance (running 1 times now) - Use this item?? (y/N) > y
kacpid (running 1 times now) - Use this item?? (y/N) > y
kauditd (running 1 times now) - Use this item?? (y/N) > y
kblockd/0 (running 1 times now) - Use this item?? (y/N) > y
kblockd/1 (running 1 times now) - Use this item?? (y/N) > y
kblockd/2 (running 1 times now) - Use this item?? (y/N) > y
kblockd/3 (running 1 times now) - Use this item?? (y/N) > y
khelper (running 1 times now) - Use this item?? (y/N) > y
khubd (running 1 times now) - Use this item?? (y/N) > y
khungtaskd (running 1 times now) - Use this item?? (y/N) > y
kjournald (running 1 times now) - Use this item?? (y/N) > y
klogd (running 1 times now) - Use this item?? (y/N) > y
kmpath_handlerd (running 1 times now) - Use this item?? (y/N) > y
kmpathd/0 (running 1 times now) - Use this item?? (y/N) > y
kmpathd/1 (running 1 times now) - Use this item?? (y/N) > y
kmpathd/2 (running 1 times now) - Use this item?? (y/N) > y
kmpathd/3 (running 1 times now) - Use this item?? (y/N) > y
kpsmoused (running 1 times now) - Use this item?? (y/N) > y
krfcommd (running 1 times now) - Use this item?? (y/N) > y
kseriod (running 1 times now) - Use this item?? (y/N) > y
ksoftirqd/0 (running 1 times now) - Use this item?? (y/N) > y
ksoftirqd/1 (running 1 times now) - Use this item?? (y/N) > y
ksoftirqd/2 (running 1 times now) - Use this item?? (y/N) > y
ksoftirqd/3 (running 1 times now) - Use this item?? (y/N) > y
kstriped (running 1 times now) - Use this item?? (y/N) > y
kswapd0 (running 1 times now) - Use this item?? (y/N) > y
kthread (running 1 times now) - Use this item?? (y/N) > y
lockd (running 1 times now) - Use this item?? (y/N) > y
master (running 1 times now) - Use this item?? (y/N) > y
mcstransd (running 1 times now) - Use this item?? (y/N) > y
md0_raid1 (running 1 times now) - Use this item?? (y/N) > y
mdadm (running 1 times now) - Use this item?? (y/N) > y
migration/0 (running 1 times now) - Use this item?? (y/N) > y
migration/1 (running 1 times now) - Use this item?? (y/N) > y
migration/2 (running 1 times now) - Use this item?? (y/N) > y
migration/3 (running 1 times now) - Use this item?? (y/N) > y
mingetty (running 6 times now) - Use this item?? (y/N) > y
mysqld (running 1 times now) - Use this item?? (y/N) > y
mysqld_safe (running 1 times now) - Use this item?? (y/N) > y
named (running 1 times now) - Use this item?? (y/N) > y
nfsiod (running 1 times now) - Use this item?? (y/N) > y
ntpd (running 1 times now) - Use this item?? (y/N) > y
pcscd (running 1 times now) - Use this item?? (y/N) > y
pdflush (running 2 times now) - Use this item?? (y/N) > y
perl (running 2 times now) - Use this item?? (y/N) > y
pickup (running 1 times now) - Use this item?? (y/N) > y
pop3-login (running 3 times now) - Use this item?? (y/N) > y
portmap (running 1 times now) - Use this item?? (y/N) > y
ps (running 1 times now) - Use this item?? (y/N) > y
qmgr (running 1 times now) - Use this item?? (y/N) > y
restorecond (running 1 times now) - Use this item?? (y/N) > y
rpc.idmapd (running 1 times now) - Use this item?? (y/N) > y
rpc.statd (running 1 times now) - Use this item?? (y/N) > y
rpciod/0 (running 1 times now) - Use this item?? (y/N) > y
rpciod/1 (running 1 times now) - Use this item?? (y/N) > y
rpciod/2 (running 1 times now) - Use this item?? (y/N) > y
rpciod/3 (running 1 times now) - Use this item?? (y/N) > y
saslauthd (running 5 times now) - Use this item?? (y/N) > y
sh (running 1 times now) - Use this item?? (y/N) > y
smartd (running 1 times now) - Use this item?? (y/N) > y
squid (running 2 times now) - Use this item?? (y/N) > y
sshd (running 5 times now) - Use this item?? (y/N) > y
su (running 1 times now) - Use this item?? (y/N) > y
syslogd (running 1 times now) - Use this item?? (y/N) > y
tlsmgr (running 1 times now) - Use this item?? (y/N) > y
udevd (running 1 times now) - Use this item?? (y/N) > y
unlinkd (running 1 times now) - Use this item?? (y/N) > y
watchdog/0 (running 1 times now) - Use this item?? (y/N) > y
watchdog/1 (running 1 times now) - Use this item?? (y/N) > y
watchdog/2 (running 1 times now) - Use this item?? (y/N) > y
watchdog/3 (running 1 times now) - Use this item?? (y/N) > y
xfs (running 1 times now) - Use this item?? (y/N) > y
yum-updatesd (running 1 times now) - Use this item?? (y/N) > y
Please check the settings file and adapt it to satisfy your needs.

setting up bind ...
Please check the settings file and adapt it to satisfy your needs.

setting up diskio ...
Please check the settings file and adapt it to satisfy your needs.

setting up dnet ...
Please check the settings file and adapt it to satisfy your needs.

setting up mailq ...
This module doesn't need any configuration right now.

setting up netstat ...
This module doesn't need any configuration right now.

setting up networks ...
Configuring local interfaces.
(i)nternal means an interface pointiong to your local machines (intranet)
(e)xternal means an interface connecten with the internet
(n)one means you don't want to account this interface.
found eth0 - (i)nternal, (e)xternal or (n)one? > i
found lo - (i)nternal, (e)xternal or (n)one? > i
Please check the settings file and adapt it to satisfy your needs.

setting up part ...

Please check the settings file and adapt it to satisfy your needs.

setting up ping ...

Please check the settings file and adapt it to satisfy your needs.
you have to configure some destination hosts.

setting up sensors ...

Please check the settings file and adapt it to satisfy your needs.
for your info: this configuration is a bit tricky

setting up shoutcast ...

Please check the settings file and adapt it to satisfy your needs.

setting up system ...

Please check the settings file and adapt it to satisfy your needs.

setting up traffic ...

Configuring local interfaces. Please answer these:
found: eth0 - (y)es or (n)o ? y

found: lo - (y)es or (n)o ? y

Please check the settings file and adapt it to satisfy your needs.
If you have any interfaces slower than 100 MBit, please change the
corrosponding default values.
Maybe there are some additional interfaces or SNMP hosts you want
to query.

setting up worms ...

Please check the settings file and adapt it to satisfy your needs.

Ok.
Writing main settings ...
checking path to "rrdtimer.pl" (current: 'not configured')
DAEMONDIR="/usr/local/HotSaNIC"
checking path to "rrdtool" (current: 'not configured')
detected: /usr/bin
is this corrrect? (Y/n) > y
BINPATH="/usr/bin"
VARDIR="$DAEMONDIR/var/"
LOGDIR="$DAEMONDIR/var/log/"
PIDFILE="$DAEMONDIR/var/run/rrdtimer.pid"
DIAGRAMLOG="last"
LOGSIZE="200000"
LOGBACKUPS="5"
DEBUGLEVEL="-1"
STIME="120"
SCHEDULE_MIN="100"
SCHEDULE_MAX="200"
RUN="apcusv apps bind diskio dnet mailq netstat networks part ping sensors shoutcast system traffic worms"
WEBDIR="not configured"
WIDTH="600"
HEIGHT="200"
IMAGEFORMAT="gif"
SHOW="apcusv apps bind diskio dnet mailq netstat networks part ping sensors shoutcast system traffic worms"
ORDER="traffic system part ping dnet sensors"
DTIME="15"
CTIME="24"
guessing convert method...
checking for Image::Magick perl module... not found
checking path to "convert" from ImageMagick (current: 'not configured')
detected: /usr/bin/convert
is this corrrect? (Y/n) > y
CONVERTMETHOD="ImgMgck"
CONVERTPATH="/usr/bin/convert"
THUMBSIZE="20%"
REFRESH="300"
checking path to "snmpwalk" (current: 'not configured')
detected: /usr/bin/snmpwalk
is this corrrect? (Y/n) > y
SNMPWALK="/usr/bin/snmpwalk"
checking path to "snmpget" (current: 'not configured')
detected: /usr/bin/snmpget
is this corrrect? (Y/n) > y
SNMPGET="/usr/bin/snmpget"
checking path to "snmpbulkwalk" (current: 'not configured')
detected: /usr/bin/snmpbulkwalk
is this corrrect? (Y/n) > y
SNMPBULKWALK="/usr/bin/snmpbulkwalk"

--- Main settings generated. ---

Writing start/stop script "rrdgraph" ... Ok.

Now adapt all settings files to satisfy your needs.
They are all linked to the directory /var/settings .

HotSaNIC設定ファイル変更

ウィザードで作成したHotSaNICの設定ファイルを一部修正します。

[root@centos HotSaNIC]# vi settings
# path to the "rrdtool" binary
# this has to be a directory !
#
# BINPATH="/usr/local/rrdtool-1.0.33/bin"
#
# BINPATHの値をnot configuredから/usr/binに変更
BINPATH="not configured"

BINPATH="/usr/bin"

# web-directory for all graphs
# this directory must be writeable for the rrdgraph tool
# because each plugin will create its own subdir here.
#
# WEBDIRの値をnot configuredから/var/www/hotsanicに変更
WEBDIR="not configured"

WEBDIR="/var/www/hotsanic"

# the output-format of the generated images may be either "gif" or "png"
#
# IMAGEFORMATの値をgifからpngに変更
IMAGEFORMAT="gif"

IMAGEFORMAT="png"

# diagram-rebuild timebase (minutes).
# Usually 15 min. should do fine, but if you think your system
# is too busy, just increase the timebase as you like.
# Values up to about 45 make sense since the lowest-scale graph
# covers 60 minutes of data sampled.
#
# DTIMEの値を15から1に変更
DTIME="15"

DTIME="1"

# This setting controlss how the images will be converted
# to thumbnails
#
# Value Behaviour
#
# "ImgMgck" Call ImageMagick's "convert" to create thumbnails
#
# "I::M" Use the Image::Magick module
#
# "HTML" Don't convert at all, but use the HTML image resize
# tag instead. More data has to be transfered using
# this method, but you won't need additional software.
#
# CONVERTMETHODの値をHTMLからImgMgckに変更
CONVERTMETHOD="HTML"

CONVERTMETHOD="ImgMgck"

# path to the "convert" binary from ImageMagick package
# this has to be the full path to the binary !
#
# CONVERTPATH="/usr/X11R6/bin/convert"
#
# CONVERTPATHの値を空から/usr/bin/convertに変更
CONVERTPATH=""

CONVERTPATH="/usr/bin/convert"

# configure the pathes of some additional applications which may be
# needed by HotSaNIC
#

# configure the full pathes to snmpwalk and snmpget binaries here.
# These may be needed to get data from remote machines.
#
# SNMPWALKの値をnot configuredから/usr/bin/snmpwalkに変更
SNMPWALK="not configured"

SNMPWALK="/usr/bin/snmpwalk"

# SNMPGETの値をnot configuredから/usr/bin/snmpgetに変更
SNMPGET="not configured"

SNMPGET="/usr/bin/snmpget"

# SNMPBULKWALKの値をnot configuredから/usr/bin/snmpbulkwalkに変更
SNMPBULKWALK="not configured"

SNMPBULKWALK="/usr/bin/snmpbulkwalk"

ファイルを保存してviエディタを終了します

HotSaNIC エイリアスの設定とアクセス制御

HotSaNICのエイリアスの設定とローカルネットワークからのみ参照できるようアクセス制御を行います。

[root@centos HotSaNIC]# vi /etc/httpd/conf.d/hotsanic.conf
Alias /hotsanic /var/www/hotsanic
<Location /hotsanic>
DirectoryIndex frame.html
Order deny,allow
Deny from all
Allow from 192.168.0.0/24

ファイルを保存してviエディタを終了します

Apacheを再起動してエイリアスの設定とアクセス制御を反映

[root@centos HotSaNIC]# /etc/rc.d/init.d/httpd restart
httpd を停止中: [ OK ]
httpd を起動中: [ OK ]

HotSaNIC インデックスページ作成

[root@centos HotSaNIC]# ./makeindex.pl
WEBDIR (path to HotSaNIC's output directory) does not exist.
Trying to create path...
generating index-files for each plugin...
apcusv
creating directory /var/www/hotsanic/apcusv
moving index-files to webdir

apps
print() on closed filehandle FILE at ./makeindex.pl line 80 (#1)
(W closed) The filehandle you're printing on got itself closed sometime
before now. Check your control flow.

print() on closed filehandle FILE at ./makeindex.pl line 82 (#1)
print() on closed filehandle FILE at ./makeindex.pl line 86 (#1)
print() on closed filehandle FILE at ./makeindex.pl line 88 (#1)
print() on closed filehandle FILE at ./makeindex.pl line 90 (#1)
creating directory /var/www/hotsanic/apps
moving index-files to webdir

bind
creating directory /var/www/hotsanic/bind
moving index-files to webdir

diskio
creating directory /var/www/hotsanic/diskio
moving index-files to webdir

dnet
creating directory /var/www/hotsanic/dnet
moving index-files to webdir

mailq
creating directory /var/www/hotsanic/mailq
moving index-files to webdir

netstat
creating directory /var/www/hotsanic/netstat
moving index-files to webdir

networks
creating directory /var/www/hotsanic/networks
moving index-files to webdir

part
creating directory /var/www/hotsanic/part
moving index-files to webdir

ping
creating directory /var/www/hotsanic/ping
moving index-files to webdir

sensors
creating directory /var/www/hotsanic/sensors
moving index-files to webdir

shoutcast
creating directory /var/www/hotsanic/shoutcast
moving index-files to webdir

system
creating directory /var/www/hotsanic/system
moving index-files to webdir

traffic
creating directory /var/www/hotsanic/traffic
moving index-files to webdir

worms
creating directory /var/www/hotsanic/worms
moving index-files to webdir

building /var/www/hotsanic/index.html ...
table-size: 117 lines.

Modules are added in this order:
traffic
system
part
ping
dnet
sensors
apcusv
apps
bind
diskio
mailq
netstat
networks
shoutcast
worms

done.

HotSaNIC 起動設定

#rrdgraphを/etc/rc.d/init.d/にシンボリックリンクする
[root@centos HotSaNIC]# ln -s /usr/local/HotSaNIC/rrdgraph /etc/rc.d/init.d/rrdgraph

#シンボリックリンクを確認する
[root@centos HotSaNIC]# ls -l /etc/rc.d/init.d/rrdgraph
lrwxrwxrwx 1 root root 28 10月 21 14:54 /etc/rc.d/init.d/rrdgraph -> /usr/local/HotSaNIC/rrdgraph

#HotSaNIC起動スクリプト自動起動
[root@centos HotSaNIC]# chkconfig rrdgraph on

#HotSaNIC起動スクリプト自動起動設定確認
[root@centos HotSaNIC]# chkconfig --list rrdgraph
rrdgraph 0:off 1:off 2:on 3:on 4:on 5:on 6:off

#HotSaNIC起動スクリプト実行
[root@centos HotSaNIC]# /etc/rc.d/init.d/rrdgraph start
Starting rrdtimer...
reading & checking config (/usr/local/HotSaNIC/settings) ...
evaluating cmdline arguments...
entering daemon mode...

サムネイル作成

はじめての自宅サーバ構築 - Fedora/CentOS - サーバ監視(HotSaNIC + RRDTool) より

サムネイルとは、インデックスページの各情報リンクのイメージ画像を作成します。
一度も実行しないとインデックスページの画像は表示されないので注意してください。

マシンの性能によるのかもしれませんが、rrdgraphのサービス起動直後にconvert.plを実行すると一部のサムネイルしか作成されません。
数分~数十分くらいしてから実行するとよいかもしれません。

[root@centos HotSaNIC]# ./convert.pl
resizing /var/www/hotsanic/worms/cmd.exe-week.png
resizing /var/www/hotsanic/worms/default.ida-week.png
resizing /var/www/hotsanic/worms/root.exe-week.png
resizing /var/www/hotsanic/mailq/bytes-week.png
resizing /var/www/hotsanic/mailq/req-week.png
resizing /var/www/hotsanic/netstat/connections-week.png
resizing /var/www/hotsanic/apcusv/outv-week.png
resizing /var/www/hotsanic/apcusv/battv-week.png
resizing /var/www/hotsanic/apcusv/timeleft-week.png
resizing /var/www/hotsanic/apcusv/temp-week.png
resizing /var/www/hotsanic/apcusv/loadpct-week.png
resizing /var/www/hotsanic/apcusv/battpct-week.png
resizing /var/www/hotsanic/system/proc-week.png
resizing /var/www/hotsanic/system/mem-week.png
resizing /var/www/hotsanic/system/cpu1-week.png
resizing /var/www/hotsanic/system/load-week.png
resizing /var/www/hotsanic/system/swap-week.png
resizing /var/www/hotsanic/system/cpu3-week.png
resizing /var/www/hotsanic/system/users-week.png
resizing /var/www/hotsanic/system/cpu2-week.png
resizing /var/www/hotsanic/system/cpu0-week.png
resizing /var/www/hotsanic/system/cpu-week.png
resizing /var/www/hotsanic/system/uptime-week.png
resizing /var/www/hotsanic/apps/dovecot-week.png
resizing /var/www/hotsanic/apps/ps-week.png
resizing /var/www/hotsanic/apps/init-week.png
resizing /var/www/hotsanic/apps/klogd-week.png
resizing /var/www/hotsanic/apps/perl-week.png
resizing /var/www/hotsanic/apps/hald-week.png
resizing /var/www/hotsanic/apps/master-week.png
resizing /var/www/hotsanic/apps/kauditd-week.png
resizing /var/www/hotsanic/apps/hald-runner-week.png
resizing /var/www/hotsanic/apps/atd-week.png
resizing /var/www/hotsanic/apps/kjournald-week.png
resizing /var/www/hotsanic/apps/httpd-week.png
resizing /var/www/hotsanic/apps/mingetty-week.png
resizing /var/www/hotsanic/apps/mysqld-week.png
resizing /var/www/hotsanic/apps/sh-week.png
resizing /var/www/hotsanic/apps/gpm-week.png
resizing /var/www/hotsanic/apps/dovecot-auth-week.png
resizing /var/www/hotsanic/apps/yum-updatesd-week.png
resizing /var/www/hotsanic/apps/imap-login-week.png
resizing /var/www/hotsanic/apps/hd-audio0-week.png
resizing /var/www/hotsanic/apps/mysqld_safe-week.png
resizing /var/www/hotsanic/apps/clamd-week.png
resizing /var/www/hotsanic/apps/kstriped-week.png
resizing /var/www/hotsanic/apps/ata_aux-week.png
resizing /var/www/hotsanic/apps/pickup-week.png
resizing /var/www/hotsanic/apps/irqbalance-week.png
resizing /var/www/hotsanic/apps/squid-week.png
resizing /var/www/hotsanic/apps/lockd-week.png
resizing /var/www/hotsanic/apps/named-week.png
resizing /var/www/hotsanic/apps/kthread-week.png
resizing /var/www/hotsanic/apps/dbus-daemon-week.png
resizing /var/www/hotsanic/apps/nfsiod-week.png
resizing /var/www/hotsanic/apps/qmgr-week.png
resizing /var/www/hotsanic/apps/khubd-week.png
resizing /var/www/hotsanic/apps/mcstransd-week.png
resizing /var/www/hotsanic/apps/pop3-login-week.png
resizing /var/www/hotsanic/apps/syslogd-week.png
resizing /var/www/hotsanic/apps/xfs-week.png
resizing /var/www/hotsanic/apps/avahi-daemon-week.png
resizing /var/www/hotsanic/apps/hald-addon-acpi-week.png
resizing /var/www/hotsanic/apps/kswapd0-week.png
resizing /var/www/hotsanic/apps/hidd-week.png
resizing /var/www/hotsanic/apps/rpc_idmapd-week.png
resizing /var/www/hotsanic/apps/khungtaskd-week.png
resizing /var/www/hotsanic/apps/kmpath_handlerd-week.png
resizing /var/www/hotsanic/apps/kseriod-week.png
resizing /var/www/hotsanic/apps/kacpid-week.png
resizing /var/www/hotsanic/apps/krfcommd-week.png
resizing /var/www/hotsanic/apps/cupsd-week.png
resizing /var/www/hotsanic/apps/mdadm-week.png
resizing /var/www/hotsanic/apps/auditd-week.png
resizing /var/www/hotsanic/apps/md0_raid1-week.png
resizing /var/www/hotsanic/apps/portmap-week.png
resizing /var/www/hotsanic/apps/audispd-week.png
resizing /var/www/hotsanic/apps/imap-week.png
resizing /var/www/hotsanic/apps/gam_server-week.png
resizing /var/www/hotsanic/apps/unlinkd-week.png
resizing /var/www/hotsanic/apps/sshd-week.png
resizing /var/www/hotsanic/apps/restorecond-week.png
resizing /var/www/hotsanic/apps/tlsmgr-week.png
resizing /var/www/hotsanic/apps/pcscd-week.png
resizing /var/www/hotsanic/apps/udevd-week.png
resizing /var/www/hotsanic/apps/kpsmoused-week.png
resizing /var/www/hotsanic/apps/khelper-week.png
resizing /var/www/hotsanic/apps/ntpd-week.png
resizing /var/www/hotsanic/apps/hald-addon-keyb-week.png
resizing /var/www/hotsanic/apps/acpid-week.png
resizing /var/www/hotsanic/apps/crond-week.png
resizing /var/www/hotsanic/apps/pdflush-week.png
resizing /var/www/hotsanic/apps/saslauthd-week.png
resizing /var/www/hotsanic/apps/rpc_statd-week.png
resizing /var/www/hotsanic/apps/hcid-week.png
resizing /var/www/hotsanic/apps/smartd-week.png
resizing /var/www/hotsanic/apps/automount-week.png
resizing /var/www/hotsanic/apps/bash-week.png
resizing /var/www/hotsanic/apps/su-week.png
resizing /var/www/hotsanic/dnet/csc-week.png
resizing /var/www/hotsanic/dnet/rc5-week.png
resizing /var/www/hotsanic/dnet/des-week.png
resizing /var/www/hotsanic/dnet/ogr-week.png
resizing /var/www/hotsanic/traffic/lo-week.png
resizing /var/www/hotsanic/traffic/eth0-week.png
resizing /var/www/hotsanic/part/_dev_md0-week.png

ブラウザからHotSaNICで取得している情報を確認します。

あれ?
systemの情報が表示されない・・・。

少し時間をおいて再度インデックスページ作成(makeindex.pl)処理を実行したらsystemの情報が表示されました。

せっかくhddtempをインストールしたのにハードディスクの温度は測れてないや。
これはまた次回。

squidのログファイルをapache形式にする

投稿者:yasu 更新日時:2010年10月7日 12時14分42秒
カテゴリCentOS, Squid
タグ

以前CentOS5にインストールしたsquidですが、squidのログファイルっていつアクセスしたかわからないですよね?
これをapache形式にして時間がわかるようにしたいと思います。
初期状態のログはこんな感じ
↓↓↓↓↓
1285922644.977 4 127.0.0.1 TCP_MISS/503 1379 POST http://safebrowsing.clients.google.com/safebrowsing/downloads? - NONE/- text/html

これが設定を変更するとこんな感じになります。
↓↓↓↓↓
127.0.0.1 - - [01/Oct/2010:17:44:37 +0900] "GET http://www.sh.turbolinux.com/support/image_support/side_caption_4c_4_f2.gif HTTP/1.1" 200 1118 TCP_MISS:DIRECT

squidの設定ファイルを編集します

[root@centos ~]# vi /etc/squid/squid.conf

~ 中略 ~

# TAG: access_log
# These files log client request activities. Has a line every HTTP or
# ICP request. The format is:
# access_log [ [acl acl ...]]
# access_log none [acl acl ...]]
#
# Will log to the specified file using the specified format (which
# must be defined in a logformat directive) those entries which match
# ALL the acl's specified (which must be defined in acl clauses).
# If no acl is specified, all requests will be logged to this file.
#
# To disable logging of a request use the filepath "none", in which case
# a logformat name should not be specified.
#
# To log the request via syslog specify a filepath of "syslog":
#
# access_log syslog[:facility.priority] [format [acl1 [acl2 ....]]]
# where facility could be any of:
# authpriv, daemon, local0 .. local7 or user.
#
# And priority could be any of:
# err, warning, notice, info, debug.
#
# Note: 2.6.STABLE14 and earlier only supports a slightly different
# and undocumented format with all uppercase LOG_FACILITY|LOG_PRIORITY
#access_log /var/log/squid/access.log squid ←先頭に#を追記してコメント化
access_log /var/log/squid/access.log auto ←追記

~ 中略 ~

# TAG: emulate_httpd_log on|off
# The Cache can emulate the log file format which many 'httpd'
# programs use. To disable/enable this emulation, set
# emulate_httpd_log to 'off' or 'on'. The default
# is to use the native log format since it includes useful
# information Squid-specific log analyzers use.
#
#Default:
emulate_httpd_log on ←追記

ファイルを保存してviエディタを終了します

squidのサービスを再起動して設定を反映します

[root@centos ~]# /etc/rc.d/init.d/squid restart
squid を停止中: ................ [ OK ]
init_cache_dir /var/spool/squid/coss... squid を起動中: . [ OK ]

ログファイルの確認

[root@centos ~]# cat /var/log/squid/access.log

ログファイルを確認してapache形式の表示になっていれば設定完了です。

squid キャッシュストレージをCOSSに変更してみる

投稿者:yasu 更新日時:2010年10月6日 12時13分44秒
カテゴリCentOS, Squid
タグ

Squid/キャッシュストレージとして COSS を使う - maruko2 Note.
上記ページにも記載されているようにsquidはページキャッシュを1オブジェクト(1ページとイコール?)1ファイルで保持するらしいのだが、ディスクI/Oの負荷が高いため1ファイルでまとめて管理可能なCOSSタイプに変更してみます。
とはいっても、上記ページに書いてある事をそのままやっただけで、かつ体感で早くなったとかはなく気分の問題って気もする。

[root@centos ~]# vi /etc/squid/squid.conf

# TAG: cache_dir
# Usage:
#
# cache_dir Type Directory-Name Fs-specific-data [options]
#
# You can specify multiple cache_dir lines to spread the
# cache among different disk partitions.
#
# Type specifies the kind of storage system to use. Only "ufs"
# is built by default. To enable any of the other storage systems
# see the --enable-storeio configure option.
#
# 'Directory' is a top-level directory where cache swap
# files will be stored. If you want to use an entire disk
# for caching, this can be the mount-point directory.
# The directory must exist and be writable by the Squid
# process. Squid will NOT create this directory for you.
# Only using COSS, a raw disk device or a stripe file can
# be specified, but the configuration of the "cache_swap_log"
# tag is mandatory.
#
# The ufs store type:
#
# "ufs" is the old well-known Squid storage format that has always
# been there.
#
# cache_dir ufs Directory-Name Mbytes L1 L2 [options]
#
# 'Mbytes' is the amount of disk space (MB) to use under this
# directory. The default is 100 MB. Change this to suit your
# configuration. Do NOT put the size of your disk drive here.
# Instead, if you want Squid to use the entire disk drive,
# subtract 20% and use that value.
#
# 'Level-1' is the number of first-level subdirectories which
# will be created under the 'Directory'. The default is 16.
#
# 'Level-2' is the number of second-level subdirectories which
# will be created under each first-level directory. The default
# is 256.
#
# The aufs store type:
#
# "aufs" uses the same storage format as "ufs", utilizing
# POSIX-threads to avoid blocking the main Squid process on
# disk-I/O. This was formerly known in Squid as async-io.
#
# cache_dir aufs Directory-Name Mbytes L1 L2 [options]
#
# see argument descriptions under ufs above
#
# The diskd store type:
#
# "diskd" uses the same storage format as "ufs", utilizing a
# separate process to avoid blocking the main Squid process on
# disk-I/O.
#
# cache_dir diskd Directory-Name Mbytes L1 L2 [options] [Q1=n] [Q2=n]
#
# see argument descriptions under ufs above
#
# Q1 specifies the number of unacknowledged I/O requests when Squid
# stops opening new files. If this many messages are in the queues,
# Squid won't open new files. Default is 64
#
# Q2 specifies the number of unacknowledged messages when Squid
# starts blocking. If this many messages are in the queues,
# Squid blocks until it receives some replies. Default is 72
#
# When Q1 < Q2 (the default), the cache directory is optimized # for lower response time at the expense of a decrease in hit # ratio. If Q1 > Q2, the cache directory is optimized for
# higher hit ratio at the expense of an increase in response
# time.
#
# The coss store type:
#
# block-size=n defines the "block size" for COSS cache_dir's.
# Squid uses file numbers as block numbers. Since file numbers
# are limited to 24 bits, the block size determines the maximum
# size of the COSS partition. The default is 512 bytes, which
# leads to a maximum cache_dir size of 512<<24, or 8 GB. Note # you should not change the COSS block size after Squid # has written some objects to the cache_dir. # # overwrite-percent=n defines the percentage of disk that COSS # must write to before a given object will be moved to the # current stripe. A value of "n" closer to 100 will cause COSS # to waste less disk space by having multiple copies of an object # on disk, but will increase the chances of overwriting a popular # object as COSS overwrites stripes. A value of "n" close to 0 # will cause COSS to keep all current objects in the current COSS # stripe at the expense of the hit rate. The default value of 50 # will allow any given object to be stored on disk a maximum of # 2 times. # # max-stripe-waste=n defines the maximum amount of space that COSS # will waste in a given stripe (in bytes). When COSS writes data # to disk, it will potentially waste up to "max-size" worth of disk # space for each 1MB of data written. If "max-size" is set to a # large value (ie >256k), this could potentially result in large
# amounts of wasted disk space. Setting this value to a lower value
# (ie 64k or 32k) will result in a COSS disk refusing to cache
# larger objects until the COSS stripe has been filled to within
# "max-stripe-waste" of the maximum size (1MB).
#
# membufs=n defines the number of "memory-only" stripes that COSS
# will use. When an cache hit is performed on a COSS stripe before
# COSS has reached the overwrite-percent value for that object,
# COSS will use a series of memory buffers to hold the object in
# while the data is sent to the client. This will define the maximum
# number of memory-only buffers that COSS will use. The default value
# is 10, which will use a maximum of 10MB of memory for buffers.
#
# maxfullbufs=n defines the maximum number of stripes a COSS partition
# will have in memory waiting to be freed (either because the disk is
# under load and the stripe is unwritten, or because clients are still
# transferring data from objects using the memory). In order to try
# and maintain a good hit rate under load, COSS will reserve the last
# 2 full stripes for object hits. (ie a COSS cache_dir will reject
# new objects when the number of full stripes is 2 less than maxfullbufs)
#
# The null store type:
#
# no options are allowed or required
#
# Common options:
#
# read-only, no new objects should be stored to this cache_dir
#
# min-size=n, refers to the min object size this storedir will accept.
# It's used to restrict a storedir to only store large objects
# (e.g. aufs) while other storedirs are optimized for smaller objects
# (e.g. COSS). Defaults to 0.
#
# max-size=n, refers to the max object size this storedir supports.
# It is used to initially choose the storedir to dump the object.
# Note: To make optimal use of the max-size limits you should order
# the cache_dir lines with the smallest max-size value first and the
# ones with no max-size specification last.
#
# Note that for coss, max-size must be less than COSS_MEMBUF_SZ
# (hard coded at 1 MB).
#
#Default:
#cache_dir ufs /var/spool/squid 200 16 256 ←先頭に#を追記してコメント化する
cache_dir COSS /var/spool/squid/coss 100 max-size=1048576 ←追記する

# TAG: cache_swap_state
# Location for the cache "swap.state" file. This index file holds
# the metadata of objects saved on disk. It is used to rebuild
# the cache during startup. Normally this file resides in each
# 'cache_dir' directory, but you may specify an alternate
# pathname here. Note you must give a full filename, not just
# a directory. Since this is the index for the whole object
# list you CANNOT periodically rotate it!
#
# If %s can be used in the file name it will be replaced with a
# a representation of the cache_dir name where each / is replaced
# with '.'. This is needed to allow adding/removing cache_dir
# lines when cache_swap_log is being used.
#
# If have more than one 'cache_dir', and %s is not used in the name
# these swap logs will have names such as:
#
# cache_swap_log.00
# cache_swap_log.01
# cache_swap_log.02
#
# The numbered extension (which is added automatically)
# corresponds to the order of the 'cache_dir' lines in this
# configuration file. If you change the order of the 'cache_dir'
# lines in this file, these index files will NOT correspond to
# the correct 'cache_dir' entry (unless you manually rename
# them). We recommend you do NOT use this option. It is
# better to keep these index files in each 'cache_dir' directory.
#
#Default:
# none
cache_swap_log /var/spool/squid/cache_swap_log ←追記する

ファイルを保存しviエディタを終了します

COSSキャッシュストレージの作成

COSSキャッシュストレージを作成します。

#サービスを停止しないと作成できないのでsquidを停止します
[root@centos ~]# /etc/rc.d/init.d/squid stop
squid を停止中: ................ [ OK ]

#COSSキャッシュストレージを作成します
[root@centos ~]# squid -z
2010/10/04 16:05:54| Creating Swap Directories

#サービスを起動します
[root@centos ~]# /etc/rc.d/init.d/squid start
init_cache_dir /var/spool/squid/coss... squid を起動中: . [ OK ]

これで設定完了です。

[CentOS5 で自宅サーバ] IPv6を無効にするには

投稿者:yasu 更新日時:2010年6月5日 10時54分15秒
カテゴリCentOS, 自宅サーバー
タグ

かなり今更感満載ではありますが、下記サイトを参考にCentOS5で構築した自宅サーバとNASサーバのIPv6を無効にしてみた。
れぶろぐ - [CentOS] CentOS 5 で IPv6 を本当に無効にする
poohSec » Blog Archive » CentOS 5 : IPv6 サーバでない場合は IPv6 を無効にする
centOS5でIPv6を無効化 | プログラムブログ

1./etc/sysconfig/network ファイルのNETWORKING_IPV6をnoに変更。
2./etc/modprobe.conf ファイルにalias ipv6 off と alias net-pf-10 off を追記。
3.システム再起動(IPv6が無効になる)
4.ifconfigやnetstat -anでIPv6のアドレスやIPv6といった表示がされていないことを確認

WordPressのバックアップとリストア

投稿者:yasu 更新日時:2010年6月3日 16時49分17秒
カテゴリCentOS, Linux, MySQL, Windows, Windows Web Server 2008 R2, WordPress, 自宅サーバー
タグ

当ブログは現在Windows Web Server 2008 R2にWordPressをインストールして稼働しています。
元々はCentOS5で稼働させていたのだけれど、インストールマニアックス3に応募して借りているサーバー機をタダでもらうにはWindows Web Server 2008 R2で構築したWebサーバーを80番ポートで1年間公開しないといけない。
1年公開し終わったらWordPressをCentOSの環境に戻したいと思っているので、今の内にWindowsからCentOSに戻る手順を確立しておこうかと思います。

Windows Web Server 2008 R2側の作業

MySQLのバックアップ

コマンドプロンプトからMySQLのバックアップを行います。

C:\Users\Administrator> mysqldump -B wordpress -h localhost -u root -p --opt -r wordpress.db.bak
Enter password: mysqlのrootユーザのパスワード

mysqldumpのオプション
-B wordpress・・・WordPressのデータベース名
-h localhost・・・WordPressデータベースがあるMySQLサーバーのサーバー名
-u root・・・MySQLのユーザ名
-p・・・上記ユーザのログインパスワード
--opt・・・オプション--add-drop-table --add-locks --create-options --disable-keys --extended-insert --lock-tables --quick --set-charsetと同等
-r wordpress.db.bak・・・Windowsの場合改行コードが\r\nになるのを防止する(Linuxに移行するので必要かと思った)

WordPressのバックアップ

エクスプローラからWordPressのバックアップを行います。
C:\inetpub\wwwroot\blog フォルダをblog.zipの名前でアーカイブします。
※上記WordPressフォルダ(C:\inetpub\wwwroot\blog)は各自の環境にあわせて読み替えてください

バックアップファイルの転送

wordpress.db.bakとblog.zipをCentOSの/rootディレクトリ(どこでもよいです)にコピーします。

CentOS 5 側の作業

WordPressをリストア

WordPressをリストアします。

WordPressのバックアップファイルを公開ディレクトリにコピーします
[root@centos ~]# cp blog.zip /var/www/html/

WordPressのバックアップファイルを解凍します
[root@centos ~]# unzip /var/www/html/blog.zip

WordPressフォルダ(ここでは名前がblogとなっていますがWordPressが入っています)の所有者を変更します
[root@centos ~]# chown -R apache.apache blog

WordPressのバックアップファイルを削除します
[root@centos ~]# rm -f /var/www/html/blog.zip

MySQLのリストア

MySQLをリストアします。

WordPressのデータベースをDrop/Createして新しく作り直します
[root@centos ~]# mysql -u root -p
Enter password: MySQLのrootユーザのパスワード
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 42
Server version: 5.0.77 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> drop database wordpress;
Query OK, 11 rows affected (0.13 sec)

mysql> create database wordpress;
Query OK, 1 row affected (0.05 sec)

mysql> grant all privileges on wordpress.* to wordpress@localhost identified by 'wordpressユーザのパスワード';
Query OK, 0 rows affected (0.02 sec)

mysql> exit
Bye

作り直したWordPress用データベースにデータをリストアします
[root@centos ~]# mysql -h localhost -u root -p wordpress < wordpress.db.bak
Enter password: MySQLのrootユーザのパスワード

リストアが正常に完了しているかテーブル一覧を確認します
[root@centos ~]# mysql -h localhost -D wordpress -u root -p
Enter password: MySQLのrootユーザのパスワード
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 67
Server version: 5.0.77 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> show tables;

+-----------------------+
| Tables_in_wordpress   |
+-----------------------+
| wp_commentmeta        |
| wp_comments           |
| wp_links              |
| wp_options            |
| wp_postmeta           |
| wp_posts              |
| wp_term_relationships |
| wp_term_taxonomy      |
| wp_terms              |
| wp_usermeta           |
| wp_users              |
+-----------------------+

11 rows in set (0.00 sec)

これでCentOSにWordPressのリストアは完了です。

なお現状yasuの環境ですとCentOSは別のポートで公開しています。
このままですとCentOS側のWordPressのログインをしようとしてもWindows側のWordPressに飛んでいってしまうので、サイトURL設定を変更します。

mysql> select option_name, option_value from wp_options where option_name = 'siteurl' or option_name = 'home';

+-------------+-----------------------------+
| option_name | option_value                |
+-------------+-----------------------------+
| home        | http://www.sa-sa-ki.jp/blog |
| siteurl     | http://www.sa-sa-ki.jp/blog |
+-------------+-----------------------------+

2 rows in set (0.00 sec)

mysql> update wp_options set option_value = 'https://sa-sa-ki.jp:8443/blog' where option_name = 'siteurl';
mysql> update wp_options set option_value = 'https://sa-sa-ki.jp:8443/blog' where option_name = 'home';

これで別ポートで公開しているCentOS側のWordPressでログインできるようになりました。

[CentOS5で自宅サーバ]yum-utilsのpackage-cleanupで古いカーネルを削除する

投稿者:yasu 更新日時:2010年5月31日 17時53分40秒
カテゴリCentOS, 自宅サーバー
タグ

USBメモリにCentOS 5をインストールして作成したNASサーバのルート領域のサイズが40%近くのサイズになっているので、古いカーネルを削除してみることにした。

現在のディスクサイズを確認
[root@nas ~]# df -h
Filesystem サイズ 使用 残り 使用% マウント位置
/dev/sda1 5.3G 2.0G 3.1G 39% / ←これがUSBドライブ
/dev/md0 4.5T 900G 3.4T 21% /nas
tmpfs 1.6G 0 1.6G 0% /dev/shm

yum-utilsパッケージをインストール(インストール済みの場合は不要)
[root@nas ~]# yum -y install yum-utils
Loaded plugins: fastestmirror
Determining fastest mirrors
* addons: ftp.tsukuba.wide.ad.jp
* base: ftp.tsukuba.wide.ad.jp
* extras: ftp.tsukuba.wide.ad.jp
* updates: ftp.tsukuba.wide.ad.jp
addons | 951 B 00:00
addons/primary | 202 B 00:00
base | 1.1 kB 00:00
base/primary | 920 kB 00:00
base 2599/2599
extras | 2.1 kB 00:00
extras/primary_db | 180 kB 00:00
updates | 1.9 kB 00:00
updates/primary_db | 127 kB 00:00
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package yum-utils.noarch 0:1.1.16-14.el5.centos.1 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

==========================================================================================
Package Arch Version Repository Size
==========================================================================================
Installing:
yum-utils noarch 1.1.16-14.el5.centos.1 base 69 k

Transaction Summary
==========================================================================================
Install 1 Package(s)
Upgrade 0 Package(s)

Total download size: 69 k
Downloading Packages:
yum-utils-1.1.16-14.el5.centos.1.noarch.rpm | 69 kB 00:00
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : yum-utils 1/1

Installed:
yum-utils.noarch 0:1.1.16-14.el5.centos.1

Complete!

package-cleanupで古いカーネルを削除します
[root@nas ~]# package-cleanup --oldkernels
Setting up yum
Not removing kernel 2.6.18-164.el5 because it is the running kernel
I will remove the following 4 kernel related packages:
kernel-2.6.18-164.11.1.el5
kernel-2.6.18-164.10.1.el5
kernel-devel-2.6.18-164.10.1.el5
kernel-devel-2.6.18-164.11.1.el5
Is this ok [y/N]: y

ディスクサイズを再確認
[root@nas ~]# df -h
Filesystem サイズ 使用 残り 使用% マウント位置
/dev/sda1 5.3G 1.8G 3.3G 36% / ←USBドライブ 200MB程容量が増えた
/dev/md0 4.5T 900G 3.4T 21% /nas
tmpfs 1.6G 0 1.6G 0% /dev/shm

200MBか。
もう少し効果があるとよかったんだけど。
NAS領域の容量も1TB近くデータがあるし、そろそろルート領域は16GBもしくは32GBのUSBメモリを2つ挿してミラーリングにしようかな。