More from: サーバー

ユーザー設定の移行(備忘録)

仕事で使っているサーバの負担が大きくなってきたので、処理を分散させるために仮想でもう一台作った。
新しいサーバに一部の処理を移行させるのだけど、やっているのがメールの代理受信なので、ユーザーデータも移行しなければならない。
スプールの中身は移さずに全て受信後に新しいサーバに移行して貰うつもり。
なので新しいサーバでユーザーを新たに登録する作業が必要で、いちいち手作業でやっていてはミスが出るので元のサーバのユーザー情報を元に登録用のスクリプトを作った。
最初に旧サーバから/etc/passwdファイルを新サーバにコピーしておく(実際には/etc/alisesや/etc/groupファイルもコピー)。
# ”awk -F : ‘{print “/usr/sbin/useradd -u ” $3 ” -g ” $4 ” -d ” $6 ” ” $1}’ passwd > hoge”
そうして上のコマンドを実行するとファイル”hoge”の中に
/usr/sbin/useradd -u 501 -g 501 -d /home/user1 user1
のような登録用のコマンドが作られるので、後はこれを実行すればユーザーの登録が出来る(移行させたくないユーザーの分は行を削除するかマスクしておけばOK)。
問題はパスワードの設定で、一つ一つ手で入力していたら大変(ユーザー数が三桁あるので)。
これをなんとかバッチで流し込めないか現在考え中・・・
これも旧サーバの/etc/shadowファイルから切り出して流し込めれば楽なんだけどなぁ・・・
一度
useradd -u 501 -g 501 -d /home/user1 -p ”切り出したパスワード文字列(暗号化済み)” user1
でやってみたらユーザーは登録出来るけどパスワードは正しく設定されなかったorz

さて、どうしたものか???

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

”ゴミ箱”機能を追加した

昨日ファイルサーバ内で大量のファイルを移動されて見えなくなった対策の一部として、ファイルサーバにゴミ箱機能を追加した。
ファイルサーバではsambaを使っているので、次のページ
「Sambaでごみ箱を使うには(Red Hat Linux編)」(@IT)
を参考に、/etc/samba/smb.confに記述を追加してユーザーが削除したファイルは実際に削除されずに指定したディレクトリに移動するようにした。
移動する際に同じ共有ドライブに移動されるとディスクスペースを圧迫してしまうので、容量に余裕のあるパーティションにゴミ箱用のディレクトリを作り、各共有ディレクトリのルートにはそこへのシンボリックリンクを張った。
試しにファイルを削除してみると無事にそのディレクトリにファイルが移動したので、ゴミ箱ディレクトリは同じファイルシステム上に無くても良いみたい。
後は削除してから一定以上の日数が経過したファイルの自動削除の仕掛けを作ればOKかな?

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

あれ?転送出来ない???

ユーザーから「FAXが受信したFAXデータがファイルサーバーに入っていない。」という連絡が来た。
使っているのはRICOHの「RIFAX EL-6000」というFAX専用機で、受信したFAXをtiff形式にしてファイルサーバーの特定ディレクトリにftpで転送するようにしてある。
この転送がどうもうまくいっていないようで、ファイルサーバーの中にはここ数日で受信しているデータが全く入っていない。
最初は転送設定が狂ってしまったかと思い見てみたが特に問題は無い。
このFAX機はスキャナとしても使えるので、スキャンデータ保存用の宛先も設定してあって、そちらにはちゃんと転送出来ているのでサーバー自体がftp接続を拒否しているわけでもない。
転送されないのはFAX受信データだけなので、試しに受信データ用の宛先にスキャンデータを転送してみたところ、下の写真のエラー(ED0601)が出てデータの送信が出来なかった。

EL-6000のエラー表示

EL-6000のエラー表示


つまり問題は受信データ用の宛先にあることが判明。
そこでサーバー内の受信データ用ディレクトリの中を見ると過去に受信して転送されたファイルが6000個余りあったので、ファイル数が多すぎて駄目なのかと思い試しに自サーバーからlocalhostにftp接続して適当なファイルを送信してみると問題無く送信された。
ということはファイル数が多すぎて駄目と言うわけでも無さそう・・・
うーん、なんだろう?としばらく悩んだ後で駄目元でディレクトリ内のファイルを整理して数を減らしてみたところあっさりと解決した。
FAX機の内部でどんな処理をしているのか判らないけど、smb転送の場合と同じくftp転送の場合もファイル数が多すぎると駄目らしい・・・
なのでユーザーには原因を説明してあまりファイルを溜めないようにお願いしておいた。

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

たまにしか書かないと忘れるなぁ(汗)

サーバーのログの中から特定の文字列を探すのにコマンドラインから
”grep ほげ げしょ | awk ‘{print $8}’ | uniq
と書くところを、最初は
”grep ほげ げしょ | sed ‘{print $8}’ | uniq
と書いてしまい
”sed: -e 表現 #1, 文字数 3: コマンドの後ろに余計な文字があります”
というエラーを返されてしまった(汗)。
それを見ておかしいな?と思って直したのが
”grep ほげ げしょ | sed {print $8} | uniq
で、これでも同じエラーが出る(当たり前)。
そもそも”sed”を使うつもりは無く”awk”と書いているつもりなので、そこが間違っているとは気付かなかった。
2回目のエラーでようやくawkではなくてsedと書いていることに気付いて直したと言う(汗)。
いやぁ、しばらくぶりに書くと忘れてるねぇ・・・

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

また満杯にされた・・・

メールサーバから配信不能のメールが来たので該当アカウントのスプールを見るとファイルサイズが限界に・・・orz
該当アカウントのユーザーに連絡して受信して貰おうとしてもログインに時間がかかり過ぎてメーラーがタイムアウトを起こしてしまう。
仕方が無いのでこちらでいつも使っているnPOPというメーラーで不要でサイズの大きなメールを削除しようとしてもやはりタイムアウト。
最終手段としてサーバーに入ってスプールファイルを直接編集して多少なりともサイズを減らす作戦に出た(汗)。
半日掛けても最後までは終わらなかったけど、取り敢えず編集を終わらせたが、ファイルの書き込みにまた時間が掛かる。
さて、どれくらいサイズが小さくなったかなぁ?

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

またまたgssftpの設定(汗)

またまた現場のサーバーにてftpサーバーを動作させる必要が出来た。
まずは明日行く福岡の現場にあるWindowsサーバーでは既にftpサーバーを動作させていると思いこんでいたら、実は動作しておらず接続拒否をされてしまう。
そこでIISマネージャーから設定しようとしたら、IISそのものが動作していない・・・
仕方が無いのでIISも含めてftpサーバーの設定を行った。

もう一か所はLinuxサーバーでパッケージとしてはgssftpなので、/etc/xinetd.d/gssftpファイルを編集して最後の行の
disable = no

disable = yes
に書き換えてxinetdを再起動・・・で済む筈が、これだけではユーザー認証で弾かれてしまうので、先月二十日に書いた記事「gssftpの設定」を参考にさらに2行前の
server_args = -l -a

server_args = -l
に書き換えてxinetdを再起動。
これで通常通りにログインが可能になった。

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

単純作業・・・orz

今日の仕事もそろそろ終わりと思っていたところにトラブルの連絡が入った。
急いで対応して当面の対策は済んだが、根本の原因に対しては数百個の設定ファイルの修正が必要になったorz
修正内容は一行だけ記述を追加するということなんだけど、悪いことに殆どのファイルの先頭に追加しなければならないので、単純に
$cat xxx >> 設定ファイル名
とすることが出来ない。
幸い追加する内容は全く同じだし、設定ファイルのファイル名も全く同じ。
ファイルの場所のみ異なるがディレクトリパスも最後のみ以外は同じなので、for文でファイル名を取り込みながらviで修正することにした。
追加する内容とコマンドの一部をクリップボードにコピーしておいて、単純にペーストと3回のキータッチだけで作業できるようにして一気に対象となる全部のファイルを書き換えた。
あー、めんど(爆)

#for i in `ls /ディレクトリ/*/設定ファイル名`;do vi $i;done
としたあとは単純作業の繰り返しだったよ・・・
1%ほど単純な修正で済まないファイルもあったので、目視でチェックしながらの作業の方が完全に自動化するよりも良かったな。

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

また落ちていたorz

年末にダウンしてくれたサーバーが年明けにも落ちていてくれた・・・
仕事始めの日に職場に出ると早速「サーバーが落ちていると連絡がありました」と言われた。
確認すると年末にダウンしたサーバーの電源が入っていなかったとのこと。
すぐに電源を入れたとのことだが、正規の手順でシャットダウンしていないので起動時に各パーティションのチェックが強制的に入ってしまい、これが終わらないとOSが起動しない。
悪いことに容量の大きなパーティションがいくつもあるサーバーで、チェックには1時間以上もかかってしまうので、電源を入れても使えるようになるには2時間は見なければならない。
その間は黙って待っていることしか出来ないのだが、その間にも散発的にユーザーから催促の電話が来る。
状況を説明してなんとか待って貰っている内に復旧したので助かった。

その後サポートをお願いしている業者さんも来てくれて当面の対策は打ってくれたので、しばらくは大丈夫とのことだ。

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

ヤマトを観に行ったはずが・・・(涙)

今夜はヤマトを観に行くつもりで夕方バスに乗って札幌駅に向かったが、途中で携帯に着信。
バスの中では電話に出られないので、職場に近いバス停で一度下車して折り返し電話を入れるとちょっと大きなトラブルが発生。
そのまま職場に行き状況を確認すると、道中で考えていた中で最悪の状況であることが判明orz。
自分一人では解決出来ないことは明らかだったので、思いつく関係者にTELしまくった。
幸い一人はすぐに来てくれたが、それでも解決出来なくて困っていたところにサポートを頼んでいる業者さんからの折り返しの電話があり、状況を説明して対処をお願いした。
なんだかんだで呼び出されてから3時間ほどで事態は収拾に向かい始めたが、サーバーの起動時間が長くて未だに終わらず。
サーバーの起動が終わればデータの確認をしなければならないのだが、現時点ではいつ始められるか目処がたたない(汗)。

楽しみにしていたヤマトも結局観れず仕舞い。
つーか、ネットでチケットを手配していたのがまるまる無駄になってしまった・・・
直接の原因となった操作をした人は謝ってくれてはいるんだけど、その人にチケット代を請求するわけにもいかないしなぁ、、、
ヤマトは年明けにでも観に行くことにするか。

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

富士通のMX-130S2が不調・・・

昨年の春に購入してから自宅でほぼ24時間稼働をさせているコンパクトサーバー「MX-130S2」が夏頃から不調になっている。
どんな不調かと言うといきなりブルースクリーンが出てOS(Windows7Pro)が落ちてしまい、自動的に再起動がかかっても起動ドライブを見つけられずにOSが起ち上がらない。
起動ドライブを見つけられないのはBIOSでの起動順位の設定を忘れてしまっているのが原因らしく、都度BIOS設定で起動ドライブの順位をOSをインストールしてあるドライブ(SSD)を再設定して保存している。
先日も操作している最中にいきなりフリーズし、自動的にリセットがかかったがやはり起動ドライブを忘れていたので再設定が必要だった。
度重なるいきなりのダウンでOS自体もある程度ダメージを受けているので、そろそろ危険かなぁ?と。
実際一度は再インストールしていて、その間はサーバーとして動作させることが出来なかった。
買った時は安くても「サーバー」として売っているのだから長時間の安定動作をしてくれると思っていたが、ちょっと当てが外れた感は否めない。
さらに昨日辺りからファンが異音を出し始めたので、そろそろ買い換えようかな?と思い始めた。
買い換えるなら省電力CPUオンボードのマザーで新規に組むのが良いかな?と思っている。
例えば
ASRock Intel マザーボード BayTrail-D クワッドコア Celeron J1900 Mini-ITX Q1900B-ITX
B00JQ19DG6
とか、
ASUSTeK Intel BayTrail J1900搭載マザーボード J1900I-C 【Mini-ITX】
B00KMIJR5Y
辺りかなぁ?と。
以前IntelのD510MOで組んだPCがあるので、そのケースや電源を流用すれば安く上げられそうだけど、先のマザーの対応メモリがDDR3のSODIMMなので流用が効かないのがちょっと痛いかな。

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