Edit
cron(定期的なスクリプトの実行などの管理)

Edit
cronie-anacronの設定

Centos6 からcronie-anacronという仕組みが取り入れられ、実行時に指定した範囲での時間で起動時間がランダムに割り振られるようになった。cron.weekly、cron.daily、cron.monthlyの設定が変わった。

# vi /etc/anacrontab
必要経過日数起動時の基本遅延分前回実行時の時刻保存の識別子(/var/spool/anacronに保存される)実行文
15cron.dailynice run-parts /etc/cron.daily
725cron.weeklynice run-parts cron.weekly
@monthly45cron.monthlynice run-parts cron.monthly

※cron.monthly の @monthly は、当該月が30日なら、30が入り、31日なら31が入る。

はっきりいって、anacronは、いまいち使えない機能。 土日にバックアップをさせるような場合、曜日指定ができない。また毎月1日に先月分のデータベースを保存など日付指定も出来ない。 その場合は、いままで通りcrontab に cron 方式で指定が必要。

Edit
固定IPでマシンを設定する。

DHCPサーバーを立ち上げるマシンは、IPアドレスをDHCP取得から固定IPに変更する必要があります。CentOSでは、以下のフォルダにイーサネットカードの設定が保存されているので、ここを設定します。

Edit
ネットワーク全体の設定

# vi /etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=dns.domain.com
NISDOMAIN=domain.com

またホスト名を変更したときにはここも直しておいたほうが良いでしょう。

# vi /etc/hosts
127.0.0.1 dns.domain.com localhost

設定が終わったらインターフェイスの再起動を行う。

# /etc/init.d/network restart

Edit
ネットワークカードの設定

Edit
固定IPの設定

# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.1.1
NETMASK=255.255.255.0
NETWORK=192.168.1.0
BROADCAST=192.168.1.255
GATEWAY=192.168.1.1
HWADDR=00:00:00:00:00:00
PEERDNS=no                         <- dhcpでresolv.confを修正しない

Edit
DHCP取得方式の設定

DEVICE=eth0
ONBOOT=yes
BOOTPROTO=dhcp
HWADDR=00:00:00:00:00:00

クライアントからのDHCPの解放

# dhclient -r

IPアドレスのDHCPからの再取得

# dhclient

この設定で一度、マシンを設定し直す場合には以下のコマンドを実行。

# /etc/rc.d/init.d/network start

またIPが正しく設定されたか確認するためには以下のコマンドを実行。

# /sbin/ifconfig eth0

次にIPのルーティングが正しく設定されているか確認するためには以下のコマンドを実行。

# /bin/netstat -nr

Edit
ポート番号と機能

代表的なポート番号と解説

port番号概要
7TCP,UDPecho
20TCP,UDPFTP 転送用データソケット
21TCP,UDPFTP コントロール用ソケット
22TCP,UDPssh 用の標準ポート
23TCP,UDPTelnet 用の標準ポート
25TCP,UDPsmtp 用の標準ポート
53TCP,UDPdns(名前解決) 用の標準ポート
67TCP,UDPBootstrap Protocol Server
68TCP,UDPBootstrap Protocol Client
69TCP,UDPTFTP 用の標準ポート
80TCP,UDPhttp 用の標準ポート
88TCP,UDPKerberos
110TCP,UDPPOP3 用の標準ポート
111TCP,UDPPORTMAP(RPC)用ポート
113TCP,UDPAuthentication Service
123TCP,UDPNTP 用の標準ポート(Network Time Protocol)
137TCP,UDPNETBIOS Name Service
138TCP,UDPNETBIOS Datagram Service
139TCP,UDPNETBIOS Session Service
2049TCP,UDPNFS Network File System(SunMicro)
3260TCP,UDPiSCSI port
3306TCP,UDPMySQL 用の標準ポート

※その他のポート番号についてはこちら

Edit
Yumについて

時々、yum list が起動しなくなる事があるが、この場合は、以下のコマンドを実行して PYTHONの環境変数をクリアすると動くことがある。

# unset PYTHONHOME
# unset PYTHONPATH

これは、Pythonを2.5以上のものをインストールすると起きる。yumは2.4にしか対応していないようだ。上記の環境変数にはよく2.5以上のライブラリがインストールされているためである。

Edit
ライブラリのインストール

Edit
libz

公式サイト

# wget http://zlib.net/zlib-1.2.5.tar.gz
# ./configure
# make
# make install

Edit
libserf

公式サイト

# wget http://serf.googlecode.com/svn/src_releases/serf-1.3.8.tar.bz2
# scons APR=/usr/local/apr APU=/usr/local/apu OPENSSL=/usr/local/ssl

Edit
ツールのインストール

Edit
cmake

# wget http://www.cmake.org/files/v2.8/cmake-2.8.6.tar.gz
# tar zxvf cmake-2.8.6.tar.gz
# cd cmake-2.8.6
# ./configure
# make
# make install

Edit
ログローテーション

Edit
cronに登録

# vi /etc/cron.daily/logrotate
   #!/bin/sh
   
   /usr/sbin/logrotate /etc/logrotate.conf
   EXITVALUE=$?
   if [ $EXITVALUE != 0 ]; then
       /usr/bin/logger -t logrotate "ALERT exited abnormally with [$EXITVALUE]"
   fi
   exit 0

Edit
設定ファイル

# vi /etc/logrotate.conf
   weekly
   rotate 4
   create
   include /etc/logrotate.d
   /var/log/wtmp {
       monthly
       minsize 1M
       create 0664 root utmp
       rotate 1
   }

Edit
個別ファイルの設定

# vi /etc/logrotate.d/app-name
   /var/log/app-name.log {
       missingok
       notifempty
       size 30k
       yearly
       create 0600 root root
   }

Edit
ICMP

Edit
OSIのレイヤーについて、L1~L3の説明

http://www.cisco.com/web/JP/news/cisco_news_letter/tech/l3switch/index.html

Edit
トラブルシューティング

Edit
外部にPINGは通るが、名前解決ができない場合

名前解決にDNSサーバ(BIND)を立ち上げて利用するマシンでない、クライアントマシンである場合には以下のファイルに利用するDNSサーバのIPアドレスを設定してあげればOKです。ちなみにDHCPサーバから自動でIPをもらってくる場合には、DHCPサーバによってDNSサーバアドレスもすでに設定されている場合が殆どです。

# vi /etc/resolv.conf
nameserver 192.168.1.1              <- ルータがDNSへの窓口のなる場合、ルータのアドレス
search 1.168.192.in-addr.arpa

このresolv.confの設定はこのページを見るとよくわかります。