===========システムの詳細============

===========システムの詳細============

===========システムの詳細============

OS:Solaris 10、アップデート11 CPU_ARCH
:SPARC(sparcv9)
ハードウェア:Sun Fire V490(例:非常に 古い 学校
)2つの良い道がないかもしれないからです。

kill -9

質問:

私たちのシステムには終了できないプロセスが16個あります。バックアップチームは、NBマスターサーバーでこれらのタスクを終了し、新しいバックアップを作成できないことを伝えました。だから私たちは次のことを試してみまし./bp.kill_allた。

バッシュ-3.2#./bp.kill_all

終了する必要があるNetBackupプロセスを見つけます。
bpbkarプロセスを終了します...

次のプロセスはまだアクティブです。
ルート20346 1 0 02:02:33 ? 0:00 bpbkar32 -r 2678400 -ru root -dt 1047868 -to 0 -bpstart_time 1481767648 -clnt n
root 18689 1 0 12月9日? 0:00 bpbkar32 -r 8035200 -ru root -dt 0 -to 0 -bpstart_time 1481325879 -clnt nerp323
root 12618 1 0 12月7日? 0:00 bpbkar32 -r 2678400 -ru root -dt 357484 -to 0 -bpstart_time 1481077264 -clnt ne
root 29693 1 0 12月9日? 0:00 bpbkar32 -r 2678400 -ru root -dt 529430 -to 0 -bpstart_time 1481249210 -clnt ne
root 10168 1 0 12月9日? 0:00 bpbkar32 -r 2678400 -ru root -dt 530349 -to 0 -bpstart_time 1481250129 -clnt ne
root 1950 1 0 12月14日? 0:00 bpbkar32 -r 2678400 -ru root -dt 962300 -to 0 -bpstart_time 1481682080 -clnt ne
このスクリプトでそのユーザーを終了しますか? [y,n] (y) y は
残りのプロセスを終了します... プロセスの終了を待っています...
プロセスの終了を待っています... プロセスの終了を待ってい ます ... プロセスの終了を待っています。 まだ実行中のプロセスがあります。




...読みやすくするために出力を切り捨てます。

極度の偏見でこれらのプロセスを殺し続けようとしましたが、kill -9役に立ちませんでした。私は見たことがない終了できないジョブを終了する方法(無中断?)そして「kill -9」が動作しない場合はどうなりますか?「Solaris uninterruptable process」を検索して部分的な結果を得ることもできます。再起動は一般的なトピックであり、私たちの「トラブルシューティング」ソリューションのようです。

つまり、私は次のことをしたいと思います。
- 根本原因に対する私の論理と推論を検証します
。 - プロセスが停止した場所/実行しようとしたシステムコールを確認するより良い方法があることを確認してください
。 - 可能であれば再起動せずにI / Oを処理します。 、以降のプロセスを終了できません。
ほとんどの根本原因の分析と一種の「バックアップが実行されている場合、または2つの作業パスがない場合は、将来の移行操作を実行しないでください」の緩和策です。

私が得たもの/考えたものは次のとおりです。
1) /proc/1950/ ディレクトリに移動して状態を確認します。stringsランダムな文字を吹き出しても、サイコロはその出力を理解できません。 「cwd」はコンテンツのないリンクを表示し、以下を介してこれを解決しようとすると端末が中断さls -alL /proc/1950/cwdれ、生成が発生するという点に注目する価値があります。北を打つ別の中断のないプロセス。

2)aを実行すると、pstack 1950いくつかの有用な情報が生成されますが、aで表示または理解できない情報はありませんps -eaf。しかし、すべて0です。作業pidでできるように、アドレスやシステムコールを見ることができないので、良いことではありません。

バッシュ-3.2#pstack 1950

1950: bpbkar32 -r 2678400 -ru ルート -dt 962300 -to 0 -bpstart_time 1481682080 000000000000000 ????????(0, 0, 0, 0, 0, 0)

3)truss実行中のプロセスで実行しようとすると、プロセスが中断され、pfiles「pfiles:プロセス1950を制御できません」というエラーも生成されます。楽しいけどエキサイティングです。

4) 実行するとstrace「トラッカーが既に存在します」と表示されます。

5)aを実行してpwdxcwdを印刷し、以下を返します:
bash-3.2#pwdx 1950

1950: /バケット

私たちのdfにはそれが含まれているので、これは面白いです...
df -h /bucket

使用済みファイルシステムサイズ
バケットに搭載されている使用可能容量1.9T 31K 1.9T 1%/バケット

...しかし、/bucketにCDを移動して操作を実行しようとすると、ls同じ停止効果が発生します。

バッシュ-3.2#zpool list

名前サイズ割り当て無料制限ステータスALTROOT
Bucket 1.94T 308K 1.94T 0% Pause -
rpool 136G 58.0G 78.0G 42% Online -

バッシュ-3.2#umount /bucket

「バケット」を開けません。プールI / Oが現在一時停止中です。

バッシュ-3.2#zpool export bucket

'/bucket' をアンマウントできません。デバイスが使用中です。

バッシュ-3.2#zpool status -x

プール:バケット
ステータス:サスペンド
ステータス:IOエラーが原因で1つ以上のデバイスでエラーが発生しました。
処置:影響を受けるデバイスが接続されていることを確認してから、「zpoolclear」を実行してください。
望むより:http://www.sun.com/msg/ZFS-8000-HC
スキャン:要求なし
設定:
名前ステータスの読み取りと書き込み CKSUM
バケットが一時停止しました0 0 0 I/Oエラーが発生しました

うん…水の中に落ちたような感じがします。実際には、「切り替え操作」が発生したときにSANへのアクティブ/通常パスが2つなかったので、最終的にvdevの下から敷物を取り出すようになりました。ダイのバックアップはそこで機能しますが、すべてのプロセス(または同じls)は同じ動作を持ちます。

「この不明なコマンドを実行すると、再起動するのに役立ちます」という最後の瞬間に保存のアイデアがある人はいますか? ? ?

ベストアンサー1

Jeffが提案したように、zpoolclearはパスが返された場合に問題を解決するのに役立ちます。そうでないように聞こえるため、サーバーにLUNが表示されないことがあります。

Aはzpool clear -F -n bucketまた、最後のトランザクションセットを削除してプールをインポートできるかどうかを示します(-Fオプション)。

タスクの切り替えについて言及したので、実行されたタスクと変更のいずれかがそのパスを削除したかどうかを確認したい場合があります。 「luxadm display /dev/rdsk/c<____>s2出力」を見ましたか?それともcfgadmを使用してパスを再設定してみますか?または、パスに沿ってforcelipイベントを送信しますか?

aのフル出力は、プールのzpool status bucket種類(ミラー、猫、ストライプなど)を決定するのにも役立ちます。質問によると、鏡ではないと仮定します。

私はこれに関与していないので簡単に話すことができることを知っていますが、これは問題ではないと仮定すると、データはまだ配列にすべて存在する必要があるため、慌てないでください。ただし、最終的に一部のトランザクションを再インポートしてロールバックする必要があります。

頑張ってください!

おすすめ記事