snmpdの起動成功後にすぐ落ちる

CentOS4.5のsnmpdの設定ではまった。

原因は、

# rpm -qa |grep snmp
net-snmp-5.1.2-11.el4_6.11.2
net-snmp-libs-5.1.2-11.EL4.10.0.1

4.6と4.10でずれてるのが問題

# yum remove net-snmp-libs-5.1.2-11.EL4.10.0.1
# yum install net-snmp-libs

で起動後、落ちることはなくなった。

解決できるまでの過程で、

# /etc/init.d/lm_sensors stop

で解決した人もいれば、IPv6SELinuxの何かが原因だっと人もいたみたいだけど今回は関係なかった。

Domain0のeth0が応答しなくなった

CentOS 5 2.6.18-53.1.6.el5xen

症状としては、Domain0のeth0にpingが飛ばない
Domain0にログインして他サーバにpingしても飛ばない
もちろんDomainU側もだめ

ifconfig でeth0見るとIPなどは割り当てられてる
物理的なLAN線は確認済み

/etc/init.d/networking restart

エラーなどは出ずリスタートできたけどやっぱりpingは飛ばない
message xenログ見たけどそれらしいのがない

で、再起動したら直った。。
いろいろぐぐっているとこんなの見つけた

4.NIC のscatther/gather 機能
●対処方法
仮想マシン(VM) で使用するNIC のscatther/gather 機能は、ドメイン0にて無効化してくださ
い。
● 対応しなかった場合の影響
ネットワーク通信時に、データが破壊されるなどの予期しない異常が発生することがありま
す。
●説明
ドメイン0において以下の設定を行い、scatter/gather 機能を必ず抑止してください。

http://primeserver.fujitsu.com/primergy/software/linux/technical/support/pdf/rhel5-vmnote.pdf

これは、富士通のサーバでRHEL5の場合。ドメイン0って書いてあるからXenの事なのかな。
で書いてあるとおりに確認してみると

# ethtool peth0
Offload parameters for peth0:
Cannot get device udp large send offload settings: Operation not supported
rx-checksumming: on
tx-checksumming: on
scatter-gather: on
tcp segmentation offload: off
udp fragmentation offload: off
generic segmentation offload: off

確かに、「scatter-gather: on」ONだけどこれがどういう機能かよくわかってない。
ぐぐっても誰もそんなこと書いてないしなぁ。
1ヶ月以上運用してきて、NICの応答なくなるなんて初めてだしもう少し様子見かな。

複数人でアップロードを行う場合のアカウント管理 2

前回のアカウント管理では、-gメイングループを変更したがあまりうまくないことがわかった。

レッドハットのページにこのような場合の対処方法があった。
http://www.jp.redhat.com/support/manuals/RHL62/ref-guide/s1-sysadmin-usr-grps.html

umask

wwwはやはりサブグループとして登録する

usermod -g userA userA
usermod -G www userA

userAの.bashrcにumaskの設定002で設定
.bashrcの最下行に以下を追記

umask 002

これによりファイルを作ると664、ディレクトリを作ると775になる

setgid

/var/www/htmlの下をwwwグループで作りたいならsetgidを設定する

chmod 2775 /var/www/html

これで/var/www/htmlの下で作られるファイル・ディレクトリは全てwwwグループで作られる

まとめ

初期設定にちょっと手間がかかるけどユーザ側で何も意識しなくていいのでこちらを推奨

複数人でアップロードを行う場合のアカウント管理

WEBサーバ等へのアップロードを複数人で行う場合のアカウント管理について、
共通アカウントを使わない方が手間はかかりますが、より好ましい姿です。

例として、WEBサーバ(/var/www)へuserAとuserBのみアップロードできるようにしたい場合

1.Linux標準のファイルシステムext3では、1ファイルに複数ユーザの権限を追加できないため、グループを作成しユーザを追加する方法を用います。

# groupadd www
# usermod -g www userA
# usermod -g www userB

注:ここで-gメイングループを変更したのは、WinSCPなどでアップする場合にサブグループをデフォルト設定とできないためです。ただしscpプロトコルを用いればサブグループにも変更は可能です。


2.wwwグループのユーザがアップロードを行えるようにパーミッションを変更
アップロード先が「/var/www」の場合、既に配置されているファイルのパーミッションを一括して変更する。

# cd /var/www
# chown -R root:www .
# find -type d |xargs chmod 775
# find -type f |xargs chmod 664

これでサーバ側の準備は完了です。
あとはWinSCPなどでアップ時のパーミッション設定を664か775にすればOKです。

参考:
http://begi.net/modules/linux_basic_knowledge2/index.php?id=4
http://www.tab2.jp/~winscp/protocols.html