システムを再起動していないことをシステム管理者はどのように知るのですか?


35

システム管理者から、パッチを適用するためにシステムを再起動する必要があるというメールを受け取りました。私はそれを忘れていましたが、数時間後、私はまだシステムをリブートしていないことを知らせる別のメールを受け取りました。

それ以来、システムをリブートしましたが、マシンをリブートしたかどうかを彼らがどのように知っているのか驚いています。誰かがこれがどのように機能するか説明できますか?


10
たぶん、あなたは彼に尋ねるべきでしょうか?
マルコセッピ

1
うわー、私はこれほど多くの方法があることに気づきませんでした。みんなありがとう!
ニキル

回答:


43

これをリモートで簡単に確認する方法は、SNMPを使用して実行できます(SysAdminがネットワーク上でこれを設定している場合)。

admin@yourcompany:~$ snmpwalk -v 2c -c <snmpstring> MachineName sysUpTimeInstance
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (9461615) 1 day, 2:16:56.15

ほとんどの場合、データはポーリングされ、何らかのネットワーク管理/監視システム(つまり、NagiosまたはCacti)に保存されます。

場合には誰が遊んで興味を持っているsnmpwalkコマンド、答えを参照してくださいここでは、あなたのシステムに設定、SNMPの基本設定を取得します。


良いですね。ここで誰かが維持するために少し難しい見て、この1つのライナーが素敵に見えるスクリプト作成:Dのおかげとupvoteを持っています。)
Rinzwind

@Rinzwindありがとう。私が時々使用する別のワンライナーがありますsudo hping3 -c 2 -p 80 --tcp-timestamp -S <IPaddress> 2>&1 | grep uptime
ケビンボーウェン

監視ソフトウェアのすべての通常の部分はこれを行うことができますが、SNMPは最も一般的なものであり、これは良い例です。+1。
gertvdijk

28

単純な方法は、uptimeコマンドの出力を確認することです。これは、シャットダウン/再起動なしでシステムを実行している時間を示します。

サンプル出力:

saji@geeklap:~$ uptime
12:41:29 up  3:08,  2 users,  load average: 1.06, 0.85, 0.86

システムの電源が3時間8分間オンになっていると表示されます。

管理者はuptime、このリンクで詳しく説明されているように、シェルスクリプトをセットアップして、他の方法を使用するか、他の方法を使用できます。管理者が利用できるもう1つの方法は、システムのシャットダウンまたは再起動時に送信されるメールを設定することです。詳細はこのリンクで入手できます。


彼らが私のマシンにログインするためのアクセス権を持っていなかった場合、これはリモートで行われますか?
-nikhil

1
管理者は、管理目的でシステムにアクセスすることができます。:)
saji89

5
ありそうにない@ saji89管理者は、すべてのシステムの稼働時間をローカルでチェックするために行うべきより良いことがあります...
Rinzwind

2
@Rinzwind、私は彼がそれを使うべきだと言っていませんでした。私は彼がマシンにアクセスできることを指摘していました。この特定のケースでは、管理者が確認する理由がありました。:)
saji89

1
わかった しかし、システムの稼働時間をチェックするために、もっと良いことがありました;)@ saji89
Rinzwind

9

@ saji89uptimeコマンドについて言及しました。1つ下に進み、sysadminが各コンピューターに接続してcat /proc/uptime(または同等の)処理を行うスクリプトをどこかに持っていると仮定します。出力の最初のフィールドは、システムが最後に再起動されてからの時間(秒単位)ですuptime。これは、の出力よりも解析がはるかに簡単です。たとえば、私のコンピューターは、の最初の稼働時間フィールド1441218.24uptime返しup 16 days, 16:20ます。1441218秒は16日と58818秒であり、58818秒は16 1/3時間です。16日16 1/3時間。

システム再起動してからの最大時間を知っている場合、このデータにより、それ以降システムが再起動されたかどうかを簡単に確認できます。

Nagiosなどの監視ツールを介して、またはシステム管理者が自分のコンピューターに保持している(または、アクセスしやすいと思います)スクリプトを使用して、各コンピューターに順番にまたは並列に接続し、時間を出力します何らかの形式で最後に再起動してから。それはすべて、それを作るのにどれだけ手の込んだかによって異なります。


8

もう1つの方法は、完全を期すために/var/log/wtmp最後の コマンドを使用して調べることです。例:

$ last reboot
reboot   system boot  3.2.0-36-generic Thu Jan 24 16:25 - 17:42 (1+01:17)   

wtmp begins Tue Jan  1 06:30:03 2013

この方法は、たまたま完璧なニーモニックでもあるため、お気に入りです。

Q: When did the last reboot occur? 
A: Just type 'last reboot'

7

再起動が必要なパッケージが経由aptで更新されると、というファイルreboot-requiredがに作成され/var/run/ます。sysadminは、このファイルの存在をリモートで確認して、更新のために再起動が必要かどうかを判断できます。


OPは、「いくつかのパッチを適用するために」コンピューターを再起動するようにシステム管理者から求められました。少なくとも私にとっては、これは実際の更新がブートプロセス中に何らかのメカニズムを介して行われることを意味します。(たぶん、apt-get -y upgrade。に沿って何かを実行するブートスクリプトです。)reboot-requiredaptの観点からは、まだリブートは必要ないので、何もありません。
CVn

2
更新プログラムのインストール後に再起動が必要な場合、ユーザーは2回再起動する必要があり、再起動が必要な更新プログラムがない場合、sysadminはバックグラウンドで同じスクリプトと更新プログラムをリモートで実行できます。 。もっと知ることなく、カーネルイメージのアップグレード(または再起動が必要な他の何か)があり、ユーザーは新しいカーネルを適用するために再起動する必要があったと思います。しかし、これは単なる当て推量です。
オニック

2

この ...

いくつかのパッチを適用する

重要な部分です。

管理者が優れている場合は、おそらくHISマシンから更新をセットアップし、PCがWebから同じファイルをダウンロードする必要がないようにします。その場合、彼は自分のマシンからパッチをダウンロードした人を見ることができます。

その後、パッチをロードしたシステムのIPアドレスだけを見て、ロードしていないシステムに電子メールを送信するだけで済みます。そのメールは自動的に生成されたメールでさえありえます。500台のマシンがあると想像してください。彼が自分のマシメからできる方法がいくつかある場合、それぞれを手動でチェックするのは時間の無駄です。

この方法で行う1つの非常に重要な理由:管理者は、維持する必要のあるシステムで何が起こっているかを制御する必要があります。したがって、彼は常に単一の制御ポイント(つまり、自分のすべてのツールを備えた自分のマシン)を持って、あらゆるマシンのステータスを確認できるようにする必要があります。


3
パッチを適用するために再起動が必要になる場合がありますが、ダウンロードが再起動時にのみ行われるという保証はありません。
カーシックT

2

回答にはいくつかの有効な方法が記載されています。ログインして稼働時間をチェックすることは、大企業にとっては奇妙ですが、小規模な企業にとっては実行可能です。sysadminはSNMPを介してチェックしている可能性がありますが、同じ「トラブル」引数をそこで使用できます。

私が懸念している限り、最も可能性の高い状況は次のとおりです。

  1. sysadminは、コンピューターのクラスターに問題がないかどうかをチェックする、ある種のチェックソフトウェア(おそらくNagios)を実行します。NRPEプラグインのようなものがほとんどのシステムで使用され、稼働時間を表示できます(ディスク、ログインユーザーなどは別として)。
  2. 同様の方法を使用して、どこで何が実行されているかを確認できます。更新パッチを確認できる場合(使用しているカーネル)、「すべてのユーザーは更新されていますか?」スクリプトは、「悪い」状態にあることをコンピューターに指示しています。

1

システムが彼が制御するネットワークに接続されている場合、sysadminは単にスイッチまたはdhcpサーバーを見て、ネットワーク接続がアクティブである時間を確認できます。また、再起動していないことを伝えます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.