Posts Tagged ‘linux’

iptstate

February 15th, 2010 by naoya | No Comments | Filed in day

iptstate というコマンドがあることを始めて知りました。

iptstate は、netfilter の接続をトラックキングしているテーブルの情報を top のように表示してくれるコマンドです。

CentOS の場合は、すでに iptstate バージョン 1.4.1 が提供されていて、普通にインストールすると iptstate パッケージがインストールされています。

さっそく、試してみます。iptstate は、netfilter つまり iptables の接続トラックキングテーブルの情報を表示してくれるので、iptables が動作している必要があります。

$ sudo /usr/sbin/iptstate

IPTables – State Top
Version: 1.4          Sort: SrcIP           s to change sorting
Source                  Destination             Proto   State        TTL
127.0.0.1:33005         127.0.0.1:8020          tcp     ESTABLISHED  119:59:58
127.0.0.1:52326         127.0.0.1:8021          tcp     ESTABLISHED  119:59:56
192.168.161.1:60730     192.168.161.125:22      tcp     ESTABLISHED  119:59:12
192.168.161.1:54619     192.168.161.125:22      tcp     ESTABLISHED  119:59:55
192.168.161.1:17500     192.168.161.255:17500   udp                    0:00:09

な感じで、接続元の IP アドレス、経路情報、プロトコル、状態、TTL、を表示してくれます。

もちろん、top のように並び替えもできます。iptstate では、次の並び替えのキーが定義されています。

d   カラムのサイズを動的に変更して、古いデフォルトのサイズを使用する

f   loopback でフィルタリングする

l   IPアドレスの中で DNS を探している順にする

m   ホスト名を切り取った形でフィルタリングする

n   DNS に関連した表示にする

q   終了する

r   逆順に並び替える

space   表示をすぐに更新する

昔から存在するコマンドですが、どこから接続があるので、どのポートに接続しているのか、などがすぐに分かるので、とても便利なコマンドです。

Tags:

wget で保存先ディレクトリを指定する方法

June 7th, 2009 by naoya | No Comments | Filed in day

-P オプションを付けると、保存先ディレクトリを指定することができる。

$ wget http://example.com/hoge.tar.gz -P /tmp

Tags:

yum で特定のバージョンをインストール

May 8th, 2009 by naoya | No Comments | Filed in day

yum で最新版ではなくて、特定のバージョンをインストールするにはパッケージ名の最後にバージョン情報をつけるだけだということを初めて知った。

例えば、現在の kernel と同じ kernel-devel のバージョンをインストールするには、次のようにする。

$ sudo yum install kernel-devel-`uname -r`

Tags:

tty0 のパワーセーブを無効にする方法

April 21st, 2009 by naoya | No Comments | Filed in day

最近やっと IPMI を導入したこともあって、昔より 1U サーバの VGA コネクタにディスプレイをつなぐことは少なくなってきましたが、それでも何かあったときは直接ディスプレイをつないでサーバの状態を見ることがあります。

CentOS 5.x x86_64 では、デフォルトで tty0 にパワーセーブの状態が設定いるらしく、kernel panic になったときパワーセーブになっていると何を見ることができません。

/usr/bin/setterm -foreground green -background black -blank 0 -powersave off -powerdown 0 -store < /dev/tty0 > /dev/tty0 2>&1

これを応用するには、それぞれの tty に違う色をつけることで今表示している tty がすぐに分かるようになりますね。とはいっても IPMI SOL(Serial Over LAN) を使えばその恩恵に預かれる機会はほとんどないのですが。

ちなみに FreeBSD で同じようにスクリーンの色を変更するには vidcontrol を使います。/etc/rc.conf に次のように追記しておくと簡単にスクリーンの色を変更することができます。

allscreens_flags=”-c blink lightgreen”

この設定をしておくと、カーソルを点滅にして lightgreen な文字色に変更するという意味になります。setterm コマンドは、指定できる色に8色しかなくてすこし寂しい想いがしました(vidcontrol は 16 色指定できます)。

Tags:

Ctrl+Alt+Del で再起動を防止する方法

April 10th, 2009 by naoya | No Comments | Filed in day

サーバを運用しているときは、Ctrl+Alt+Del でサーバの再起動を防止したいもの。ついに、先日誤って Ctrl+Alt+Del でサーバを再起動してしまいました。。。これでいかんと思って、Ctrl+Alt+Del で再起動を防止する方法を調べてみました。

CentOS 5.3 x86_64 では、/etc/inittab に次のような変更するだけです。

— inittab     2009-04-09 22:29:32.000000000 +0900
+++ /etc/inittab        2009-04-02 11:09:54.000000000 +0900
@@ -29,7 +29,8 @@
l6:6:wait:/etc/rc.d/rc 6

# Trap CTRL-ALT-DELETE
-ca::ctrlaltdel:/sbin/shutdown -t3 -r now
+#ca::ctrlaltdel:/sbin/shutdown -t3 -r now
+ca::ctrlaltdel:/usr/bin/logger ‘CTRL-ALT-DELETE trap is disabled’

# When our UPS tells us power has failed, assume we have a few minutes
# of power left.  Schedule a shutdown for 2 minutes from now.

こうすることでよって Ctrl+Alt+Del を押してしまったときは、シスログに出力するだけの動作になります。変更を適応するには、再起動するか、再起動できないときは次のコマンドを実行します。

$ sudo telinit q

サーバを運用しているときは、基本的にリモートで作業することがほとんどですが、念のためやっておいたほうがいいでしょう。

こういう基本的なところができていないのはなさなけないということで、システム管理者として失格だと自覚させるためのエントリです。

Tags:

自作プログラムをデーモンにする

February 19th, 2009 by naoya | No Comments | Filed in day

自作のシェルスクリプトをデーモンにするプログラムに、start-stop-daemon というものがあるみたいです。しかし、これは CentOS では提供されていないので、何かいいのがないかなと思って調べてみたところ、start-stop-daemon を C 言語で実装し直したバージョンがあることが分かった。

さっそくインストールしてみた。

  1. プログラムを展開する
  2. gcc start-stop-daemon.c -o start-stop-daeemon してコンパイルするだけ

本番サーバに展開したかったので、RPM を作った。SPEC は start-stop-daemon,spec においておいた。

start-stop-daemon をインストールしたら、TokuLog にあるような簡単に sysinit スクリプトを書くだけでデーモンにできる。

これは、便利だわ。

Tags:

lshw

May 5th, 2008 by naoya | No Comments | Filed in day

Linux でハードウェア情報を見るコマンドで、lshw というのがあることを初めて知った。手元の CentOS 5.1 ではインストールされていなかったので、さくっとインストールした。

$ sudo yum install lshw

 

あとは、普通に使うだけ。

 

$ sudo lshw

description: Computer    width: 32 bits  *-core

description: Motherboard

physical id: 0     *-memory

description: System memory

physical id: 0

size: 520MiB     *-cpu

product: AMD Athlon(tm) 64 Processor 3500+

vendor: Advanced Micro Devices [AMD]

physical id: 1

bus info: cpu@0

version: 15.15.2

size: 18EHz

width: 64 bits

 

以下、略だが、なかなか便利。上の出力例は Xen の例です。 

Tags:

Get Adobe Flash playerPlugin by wpburn.com wordpress themes