私は多くのLinuxサーバーを持っています稼働時間を確認したいただし、それぞれログインする必要があります。 Linuxサーバーの稼働時間を確認できますか?SSHログインは不要それに?
PS。私のディストリビューションはRHEL 7/8とOL 8です。
答え1
サーバーが1つまたは複数のネットワークセグメントにある信頼できる安全なネットワークにある場合は、以前のrwhod
サービスとそのクライアント(rwho
および.net ruptime
)をインストールすることも資格がある可能性があります。 Debian では、2 つのパッケージ (rwhod
と ) をインストールしてこれらのサービスをパッケージ化してインストールすることができるので、rwho
ディストリビューションで提供して要件を満たしている場合は、最も簡単なソリューションになります。
RHEL 7(および関連ディストリビューション)は、サービスとクライアントを単一のrwho
パッケージにパッケージ化します。 RHEL 8以降では、このパッケージは含まれていないようです。
rwhod
毎分ブロードキャストパケットを送信し、ログインしたユーザーと現在の稼働時間を一覧表示し、他の同様のブロードキャストを受信します。コマンドは、rwho
過去11分間にブロードキャストしたすべてのホストruptime
から収集したレポートを取得して出力します。最後に受信したレポートに基づいて、各ブロードキャストホストにログインしたユーザーを一覧表示します。各レポートホストの稼働時間を一覧表示します。rwhod
rwho
ruptime
答え2
次のように「xinetd」サービスを作成します。
# cat /etc/xinetd.d/uptime
service uptime
{
port = 10200
disable = no
socket_type = stream
protocol = tcp
log_on_success += USERID
log_on_failure += USERID
server = /usr/bin/uptime
user = root
instances = UNLIMITED
wait = no
log_type = SYSLOG daemon debug
}
# service xinetd restart
# netstat -ant | grep 10200
tcp6 0 0 :::10200 :::* LISTEN
# telnet localhost 10200
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
08:59:39 up 23 days, 16:36, 1 user, load average: 0.00, 0.01, 0.05
答え3
サーバーが多く、稼働時間だけに興味がないと仮定する場合正しいこのツールは各デバイスにSNMPをロードし、snmptrap応答用の監視ステーションを設定します。これはメインプレイヤーが使用します。表示された方法のどれもブート損失を表示しませんが、SNMPは表示します。
答え4
パーティーに遅れていますが(稼働時間が大規模なサーバーファームの状態に関する唯一の関心事ではないと仮定)、作業に適したツールを使用することをお勧めします。
使用を検討してくださいプロメテウス、稼働時間などの指標を含め、5分ごとにデバイスからさまざまな指標を取得します。
素晴らしい。マシンの稼働時間node_time() - node_boot_time()
(つまり、秒単位の稼働時間、さまざまな時間単位で自由に計算可能)を照会するには、これが本質的にあなたが必要とするものです。