More from: linux

CENT OSのインストールCD

RED HAT系のフリーのOSであるCENT OSは現在5.5が最新らしいけど、インストール用のイメージファイルを見てびっくり。
なんとCD-ROMだと7枚にもなるのね、、、、、、
DVDのイメージだとファイル容量が約3.9GBなので、こっちだと一枚で済むけど、最近購入したサーバだとDVDからのインストールで躓くことが多いので、CD-ROMのインストールメディアを作ることにした。

それにしても7枚かぁ、、、、、、、、、、焼くのが面倒だなぁ(爆)

←クリックしてくれると嬉しいです。

タイムサーバに同期できないサーバがまだあった・・・・・

10/19付けの記事「NTPで時刻同期が出来ないサーバ」で書いたようなサーバがまだあった。
ファイルサーバにしているサーバの時刻が狂っていて、保存したファイルの更新時刻が未来の時刻になっていることに気付き、調べてみると前回と同様にタイムサーバに同期できない状態だった。
原因は前回と同じで自分自身のみしかアクセス出来ないようにしていたので、対処方法も前回と同じにしたところ、無事に同期動作が始まった。
うーん、普段問題なく動いていると監視が疎かになるなぁ、、、、、、

←クリックしてくれると嬉しいです。

delegatedがようやく動いた・・・・・・・

先月半ばに原因不明でハングアップしたサーバを無理やり再起動したが、それ以来delegatedが起動しなくなっていた。
とりあえず動かなくても支障は無かったのだが、今朝になって「○○にftpが繋がらないんだけど」と言われて調べてみると、delegated経由でftp接続していたことが判明した。
それで再度delegatedを動くようにしようとしたが、MD5値が違うというよくあるエラーで起動しない。
これは再コンパイルで解決することが多いのだが、実は前回もこのエラーで起動できずに再コンパイルは実施済み。
それでも起動に失敗するので、ダウンロードしてあった最新版のソースからmakeして実行モジュールを作り直した。
ところがこれでも起動できないので、「もしかして起動方法が間違っているのではなかろうか?」と思い、起動手順を見直してみた。
すると、設定ファイルで指定していると思ったポート番号が実際には設定されておらず、そのため「NO ACTIVE PORT」のエラーも出ていた(爆)。
しかも設定を外部ファイルに記述した場合に引数で渡す方法を間違っていたことが判明(汗)。
起動用スクリプトは環境変数の設定等を行うだけで、あとは渡された引数をそのままdelegatedに渡すだけ($*)だったので、起動時の引数の渡し方を変えたらすんなりと起動してくれた。
要は今まで
delegated.sh(起動用スクリプト名) 設定ファイル名
としていたところを
delegated.sh -Pポート番号 +=設定ファイル名
としただけ。
この設定ファイル名の渡し方が間違っていたために起動してくれなかった訳だ(ポート番号も指定していない)。
久しぶりに触ると忘れてるなぁー、というわけで備忘録代わりにここに書いておこう。

←クリックしてくれると嬉しいです。

sambaで繋がらなかったのは(汗)

先日ここに書いたサブネットをまたいで繋がらなかったsambaサーバーはなんとか繋がった。
いろいろと調べてマスタブラウザの設定やら、WINSサーバがどうたらとかの情報が出てきたが、結局のところそんな面倒なことでは無かった。
いろいろ調べた情報を見ながら/etc/samba/smb.confの内容を見ていたら、global sectionにある「hosts allow」で、自分が所属するサブネットと127.0.0.0(自分自身)のアドレスしか書いてなかった。
これは自分が所属するサブネットのクライアントと自分自身からのアクセスしか許可しないということなので、ここに繋げたいクライアントのサブネットを記述することで無事に接続できるようになった。
具体的には
hosts allow = 192.168.1. 127.
となっていたので、これを
hosts allow = 192.168.1. 192.168.2. 127.
のように「192.168.2.」の部分を書き加えたというわけ。
こんな単純なことで週末悩んでいたのはちと恥ずかしいかも(汗)

←クリックしてくれると嬉しいです。

ルーター越しでsmbサーバに接続できない・・・・・・

職場内のネットワークを分割することになり(っていうか、既に分割してあるが)、間のルーター越しにファイルの共有を行う必要が出てきた。
Windows系OS同士は既に接続できることは確認しており、実際に接続して使っている。
ところが、Linuxで構築したファイルサーバには接続が出来ない。
お互いにpingは通るし、Windows同士では接続できるので、ルータはWindows共有用のパケットを通していることになる。
まだ調べ始めたばかりなのでよく判っていないが、その内なんとかなるだろう(爆)。

←クリックしてくれると嬉しいです。

delegatedが起動しなくて悩んだ

職場のサーバの一台が非常に重くてクライアントから接続できないとの連絡があり、試しに自席のPCからログインしようとしたところ、タイムアウトでログインできない。
仕方が無いので現場に行ってみるとディスプレイに一瞬だけログイン画面が表示されたが、すぐにブラックアウトしてしまい状態の確認が出来ない。
かといって放っておく訳にも行かないので、電源SWを押して自動でシャットダウンをさせたが電源が落ちない。
最後の手段で電源SWを長押しして電源を切り、すぐに電源を入れなおしたところ無事に起動したが、やはりログイン画面が一瞬で消えてしまう(ディスプレイには信号が行っている)。
とにかく起動自体は出来たので、近くのPCからログインしてみると問題なく入れた。
これでひとまずは安心と思っていたが、午後になってそのサーバ経由での印刷が出来ないとの連絡が入ってきた。
サブネット間のルーターの役目もしているサーバなので、パケットの中継がうまくいっていないのが原因と思い、試しに他のサーバから反対側のサブネットの特定のホストにpingを打ったが返事が無い。
ということで中継に使っていたdelegatedが起動しているかをチェックしたところ全く起動していなかった。
以前このサーバを扱ったのはかなり前だったので、記憶を頼りにdelegated用の起動ファイルを探し、そのファイルを使って起動してみたが、
NG, this executable is not signed
のメッセージが出て起動しない。
これは以前から良く出ていた現象で、makeし直して実行ファイルを/usr/sbinの下にコピーすればとりあえず動くことを覚えていたので、早速その通りにしたがやっぱり動かない(あれ?)。
いろいろ調べて
/usr/sbin/delegated -Fesign -w
を実行してサインをし直したところ、上記のエラーは出なくなったが、今度は
ERROR: NO ACTIVE PORT
とのエラーでやはり起動しない。
うーーーーん、、、、、、、、、困った・・・・・・・・

で、気付いたのは
「要はパケットフォワーディングが出来ればいいんじゃないか!」
ということ。
で、
/proc/sys/net/ipv4/ip_forward
の中身をチェックすると”1”となっていたので、パケットフォワーディングは有効になっていた。
さらに
/etc/sysctl.conf
の中にも
net.ipv4.ip_forward = 1
と記述されている。
だとすると反対側のサブネットまでパケットは到達しているはず。
あれぇ?おかしいなぁ?と思い、それまで試さなかったホストへpingを打つとしっかり返事が来たorz
なんと複数のIPアドレスに向けてpingを打っていたが、全て動いていないホストだったらしい、、、、、、、
不調の連絡をくれた部署に連絡すると、すでに印刷は出来るようになっているということだった(設定を多少変更したとのこと)。
存在しない問題に1時間以上も時間を費やしてしまった、、、、、、

←クリックしてくれると嬉しいです。

kernelのコンパイルメモ

職場のサーバが時々サービスを停止してしまうことがあり、その都度再起動をせざるを得なくなっている。
以前も書いたけど時計が進まなくなってしまい、時計に依存する処理(cron等)が止まってしまう。
少々調べたところ時計モジュールはkernel組み込みらしいので、この際kernelを新しいものにしてしまうことにした。
そこでkernelのソースをダウンロードしてきてサーバーに転送し、/usr/src以下で展開してコンパイル~インストールをした。
手順を忘れないようにここにメモしておく。

ソースの展開
tar xvjf linux-2.4.37.10.tar.bz2 (2.4系の最終版ソース)

configファイルのコピー
cp linux-2.4/.config linux-2.4.37.10/.

ディレクトリのリンクし直し
rm linux-2.4
ln -s linx-2.4.37.10 linux-2.4

.configファイルの再設定
cd linux-2.4
make oldconfig
(旧kernelのconfigの引継ぎ。追加機能があればどうするかを聞いてくるので、y/n/mで答える)

コンパイル
make dep
make clean
make bzImage

モジュールのコンパイル
make modules

モジュールのインストール
make modules_install

kernelのインストール
make install

ブートローダーの設定変更
GRUBの場合は
/etc/grub.conf
LILOの場合は
/etc/lilo.conf
の内容を修正し、LILOの場合のみ
/sbin/lilo を実行し、修正した内容を反映させる。

なんだけど、現在はkernelのインストール時に
All of your loopback devices are in use.
のエラーで止まっている。
initrd(Initial RAMDISK)の作成時のエラーなので、最初はブロックデバイスとloopback deviceを有効にしていなかったためと思ったので.configを修正したが、それでもエラーになってしまうので行き詰まっている。
手動でmkinitrd /boot/initrd-2.4.37.10.img 2.4.37.10
を実行しても同様。
うーん、なにが問題だ?

←クリックしてくれると嬉しいです。

HDDの飛んだノートPC

一昨日の朝にHDDが飛んでしまったノートPCはメール専用だったので、特に大切なデータが入っていたわけでは無いが、メールの受信環境が無くなったのはちょっと不便かも。
そこでメインのアカウントだけはGmailに転送するようにした。
これだとブラウザさえあればどこからでもメールチェックが出来るが、操作性が悪いので頻繁には使いたく無い。
やはりpop3もしくはIMAPでローカルに取り込んで見るほうが楽なので、適当なPCにメールクライアントを入れてメール用端末として使うようにするつもり。
問題はOSやメーラーを何にするかだけど、今までのようにLinux+Sylpheedにするか、Winodws+EdMaxにするか、はたまた日和ってWindows+Outlook Expressにするか。
WIndows+Sylpheedってのもありかな?
どれにしても初期設定やフィルタリングの設定が面倒だなぁ・・・・・・

←クリックしてくれると嬉しいです。

NTPで時刻同期が出来ないサーバ

サーバの一台が不可思議なエラーでネットワークに接続できないので、そのサーバからHDDを抜き出し他のPCに入れて代わりのサーバとした。
ところがntpdは起動しているにもかかわらずいつまで経ってもタイムサーバとの時刻同期が取れない。
最初はタイムサーバ側で接続を拒否しているかと思ったが、クライアント(問題のサーバ)側からtelnetで123番ポートに接続を試すと一応「Connected to ”タイムサーバ名”」と出るのでタイムサーバ側は拒否していない。
反対にタイムサーバ側からクライアント側に同じ事をしてみると、「Unable to connect to remote host」と出たので、クライアント側は接続を拒否している。
ntpdateを使って手動で同期を取ることは出来るので、iptables等でブロックされているわけでも無い。

調べてみると案外単純なことで、/etc/ntp.conf内でのセキュリティ設定でntpdの接続をローカルホスト(自分自身)からのみ許可していて、外部へのアクセスを拒否するようになっていた。
これでは外部のタイムサーバと同期できるわけが無い。

具体的には/etc/ntp.confファイル内の
# restrict mytrustedtimeserverip mask 255.255.255.255 nomodify notrap noquery
の部分が上記のようにデフォルトのままになっていて、外部へのアクセスを許可していなかった。
この部分を
restrict ”タイムサーバのIPアドレス” mask 255.255.255.255 nomodify notrap noquery
と書き換え、
/etc/rc.d/init.d/ntpd stop
/etc/rc.d/init.d/ntpd start
を実行してntpdを再起動したところ程無く時刻の同期が出来た。
同時にタイムサーバ側での認証が必要という設定になっていたので、
authenticate yes

authenticate no
に書き換え認証不要としておいた。

←クリックしてくれると嬉しいです。

この大量のパケットはなんだろう?

先日からトラブル続きのサーバで、ループバックインターフェース(lo)に異常な量のパケットが流れている。
同様の機能を持たせている他のサーバに比べても非常に多い(100倍近い流量)ので、なにか異常なことが発生しているのかもしれない。
このあたりになにかトラブルの元があるような気がするが、まだ解明できていない。

←クリックしてくれると嬉しいです。