More from: linux

指定したのとは別のプリンタから印刷される

先日仕事で行った先で、
「印刷なんですけど、たまに違うほうのプリンタから出るときがあるんですよ。」
と言われた。
問題の印刷はサーバー上のプログラムから出しているもので、ユーザーが操作するクライアントPC側では出力先のプリンタの指定をすることは出来ない。
しかもサーバ上での設定で違うプリンタを指定しているなら毎回違うほうのプリンタから出るはずなのだが、毎回ではなく”たまに”だということなので単純な設定ミスでは無い。
不思議なこともあるものだと思っていたら、思わぬところに原因があった。
件の印刷は本社のサーバ上で動作するプログラムが出力し、その際に出力先を現場に置いてある別のサーバに定義してあるプリンタを指定している。
この現場のサーバでのプリンタの定義に問題があった。
現場のサーバは古く、印刷システムがlpdなので、プリンタは/etc/printcapで定義している。
この定義の中にはプリンタのエントリが2台分あるのだが、スプールディレクトリの指定(sd=/var/spool/lpd/hogeの部分)が2台とも同じディレクトリになっていた。
仮に1台目をプリンタA、2台目をプリンタBとした場合、プリンタAに対して印刷要求を出した場合もプリンタBに出した場合も実際の印刷データは同じディレクトリに置かれることになる
このためプリンタAに対して印刷要求を出した際に、たまたまプリンタBに対応するデーモンが動作していると、プリンタAに出力する筈のデータもプリンタBに出力してしまい、データをプリンタBに送り終わるとデータを消去することになる。
しかもプリンタは直付けではなくプリンタサーバ経由での接続の為、データの転送はプリンタに直接送るよりも早く終わる。
このため本来印刷する筈のプリンタAではなく、もう一方のプリンタBで印刷されるということが起きてしまっていた。

いやぁ、最初は目的のプリンタにデータを送れない場合に自動で切り替えているのかと思ったが、そんな設定をした覚えはないし、lpdはそんな頭の良いことはしてくれない(爆)。
判明してみれば初歩的な設定のミスだったが、今後は気をつけないとなぁ。

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

sambaサーバに接続できない・・・・・・・

職場のPCの一台からLinuxで構築してあるファイルサーバに接続できない・・・・・・
クライアントのOSはWindows7Proの64bit版(だった筈)。
サーバ側のログを見る限りパスワードが間違っているということになっているが、設定したパスワードと入力したパスワードは同じ(筈、クライアントの操作は他人に依頼している)。
ちなみにXpのPCで同じユーザーアカウントを作成して同じようにアクセスすると問題無く接続出来るので、サーバ側よりもクライアント側に問題があるようだが、自由に触れるPCでは無いので原因調査に時間がかかりそうだ(操作を他人に依頼しているのもそのため)。

駄目元で「guest ok = yes」に設定してもパスワードが違うといってはじかれてしまう・・・・・・
うーん、謎だ・・・・・・・・

こういうことは時折あるが、大抵はちょっとした設定のミスとか見逃しが原因なんだよなぁ、、、、(汗)

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

vacationが動かないぃーーーーーー!!!

職場のメールサーバにvacationプログラムを入れたが、いくら試しても自動返信がされない。
maillogを見ると
“attempt to use “vacation -r 0 hoge” (stat failed)”
と出ている。
デーモンから来たメールには
“smrsh: “vacation” not available for sendmail programs (stat failed)”
となっているので、これをヒントに調べたら”smrsh”で動作を許可するプログラムを置いておくディレクトリにvacationプログラムが入っていなかったのでsmrshがファイルを見つけられなかったためと判明した(このため”stat failed”が出ている)。

職場で使っているサーバではsmrshで動作を許可するディレクトリは
/etc/smrsh
だったので、そこにvacationを置いたところ無事に動作した。
実際はvacationプログラムの本体をそこに入れるのも何なので、
ln -s /usr/sbin/vacation /etc/smrsh/vacation
でシンボリックリンクを張った。

プログラムを入れるディレクトリは環境によって異なるみたいで、
/usr/adm/sm.bin (smrshのソースに付いてくるREADMEファイルに書かれているのはここ)
/usr/libexec/sm.bin (man smrshに書かれているディレクトリはここ)
とかがあるみたいだ。
今回は
#man smrsh
で出てくるのと違うディレクトリだったので見つけるまで時間がかかったよー!

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

Linuxでのパーティション作成メモ

Linux上でのパーティション作成手順のメモ。
/sbin/fdisk  パーティション分割
/sbin/mkfs -t ext3 /dev/sda1 (size:必要なら) フォーマット
/sbin/e2label /dev/sda1 ラベル名  ラベル付け

ここまですれば後は
mount /dev/sda1 マウントポイント
とすれば使えるようになる。
/etc/fstab

LABEL=ラベル名 マウントポイント ext3 defaults 1 2
の行を追加して次回起動時に自動でマウントされるようにしておく。

それにしてもUSBの外付けHDD(ミラーリングユニット)へのアクセスが遅いのかmkfsコマンドの実行にえらく時間がかかるなあ、、、、たった400GBのパーティションなのに・・・・・
この後さらに5つのパーティションのフォーマットもしなくちゃならないんだけど、全部で何時間かかるのやら・・・・・

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

設定忘れてた(爆)

今朝方職場のサーバーを再起動したところ、別ネットワークのPCから接続できなくなってしまった。
route情報を見るとものの見事にrouteが設定されていない。
どうもネットワークを分割した時には手動で/sbin/routeコマンドを使ってroute情報を設定して、その際に設定ファイルには書いていなかったようだ(設定ファイルそのものが存在していなかった)。
なので、以前書いた「ネットワークの分離」の記事を参考にroute情報の設定と設定ファイル(/etc/sysconfig/static-routes)の作成を行った。

今日が土曜日で良かった・・・・・・・・

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

さてと、パーティション構成をどうするかな?

職場のファイルサーバ用に外付けHDDユニットを買ってきたけど、どのように分割するかで悩んでいる。
スペース効率を考えると1つの大きなパーティションだけを作って、その中に各部門用のディレクトリを作れば無駄なく使えるんだけど、そうすると特定の部門が大容量のデータを置いてしまい、他の部門で使える容量が減ってしまう危険がある。
かといって細かく分割すると空きが点在する形になり、効率が悪くなる。
うーん、どうしようかなぁ?
とりあえず、自分達用のパーティションだけは最初に確保しようっと(爆)。

fdisk->mkfsの順だっけか?(爆)
fstabも書き換えなくては・・・・・・・・・

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

メモ:aliasのチェック

sendmailでaliasを使用している場合の設定のチェック方法のメモ。
#sendmail -bv alias名
これを実行すると指定したalias名がどのように展開されるかが分かる(-bvはベリファイモードの指定)。
aliasesファイル内に記述してあっても、上記コマンドで出て来ない場合は
#newaliases
でエイリアスデータベースを作り直してみる。

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

-Fもしくは–flushオプションだったのね

一個前の記事「fetchmailで取得済みのメールを削除するには?」に書いたことは、-Fもしくは–flushオプションを付けてfetchmailを起動することで実現出来た。
man fetchmailでオプションを調べたときにこのオプションにも気付いてはいたんだけど、-kもしくは–nokeepと同じだと思っていた。
Manpageをよく読むと
-k or –nokeep
「取得したメッセージをリモートのメールサーバから削除します。」
-F or –flush
「新しいメッセージを取得する前に、古い (以前に取得した) メッセージをメールサーバから削除します。」
となっており、この二つの意味は違うことに気付いた(良く嫁!<自分)
試しに
fetchmail -Fv
を実行したところ、数千通ものメールがサーバから削除されていく様子を見ることが出来、終了後にホームディレクトリにあった「.fetchids」ファイルも消えていた。
うーん、最初にManpageを見たときに気付いていれば悩まずに済んだのになぁ(汗)。

#「.fetchids」ファイルは取得済みでサーバに残してあるメールのエントリを記録しているファイル。

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

fetchmailで取得済みのメールを削除するには?

いやまぁタイトルの件が判らなくてサーバと格闘中。
受信するクライアントPCが複数台ある関係で”keep”オプションを.fetchmailrcに書いてあるユーザーがいるが、サーバ内に数千通溜まってしまって、受信にえらく時間が掛かってしまうので消してくれといわれて消そうとしてる。
単純に
fetchmail -avK (Kはnokeepと同じ)
とすると、過去に受信したメールを再取得してしまい、数千通を再受信するので少々困る。
いつもはnPopというソフトで古いメールを消しているが、今日に限ってエラーを起こしてしまい作業が出来ない。
うーん、fetchmailで取得済みのメールをサーバから削除する手段があると思うんだけどなぁ、、、、、、

解決策はこちら「-Fもしくは–flushオプションだったのね」

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

MXレコードの設定が終わったようだ

昨日書いたMXレコードを設定していないDNSサーバは昨日の内に設定が完了したようで、nslookup -type=mx hogehoge.comで見ても、host -t mx hogehoge.comで見てもMXレコードが見えるようになった。
これでメールの送信元に昨日のようなエラーが返ることもなくなるだろう。

それにしてもDNSサーバの設定をしたのは経験1年のほぼ新人なんだけど、私の「MXレコードが設定されていない」の一言で理解したようなのには少々驚いた。
けっこう出来の良い新人らしい・・・・・・・

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