通常のユーザーとしてUbuntuシステムで使用可能な更新の数を取得する方法


8

rootとして実行したくない単純な監視スクリプトにこれが必要です...


1
コマンドに制限されたnopasswd sudoが常に存在する
Michael Lowman

たくさんのご回答ありがとうございました。いくつかの提案を試し、もう少し掘り下げた後、依存関係が最も少なく、最も安全なソリューションは、単純に/ etc / motdを解析することです-しかし、それは私には非常にエレガントに見えません:)
Joe Kandaba

回答:


10

保留中のセキュリティ更新の数は、以下を使用して確認できます。

/usr/lib/update-notifier/apt-check 2>&1 | cut -d ';' -f 1

保留中の定期的な更新の数は、以下を使用して確認できます。

/usr/lib/update-notifier/apt-check 2>&1 | cut -d ';' -f 2

/superuser/199869/check-number-of-pending-security-updates-in-ubuntu


私よりはるかにエレガント:)
anthonysomerset '07 / 07/17

jlduggerが指摘したように、返信をありがとうございます。これは(ヘッドレス)サーバーであるため、apt更新の数を取得するためだけに多くのGUI要素を含む240を超えるパッケージをインストールすることは、実際にはオプションではありません。
Joe Kandaba

update-notifier-commonパッケージで提供されます。GUIの依存関係はないと思います。
sourcejedi 2013

1

sudoを使用するのがあなたの答えです。おそらく、スクリプトを実行するユーザーをsudoersファイルに追加し、おそらくnopasswdフラグを付けて、スクリプトが実行されるたびにパスワードを要求しないようにする必要があります。sudoの詳細については、こちらをご覧くださいhttps : //help.ubuntu.com/community/Sudoers


絶対に実行する必要のないサーバーでは、ルートとして何も実行しないでください。
Joe Kandaba

コマンドを実行するのに十分な長さのrootとしてのみ実行され、更新を取得するために必要な特定のコマンドに制限できるため、セキュリティ上の脅威を無力化できます
anthonysomerset

1

Ubuntuには、カスタムCプログラムである便利なcheck_aptなど、多くのパッケージ化されたnagiosプラグインがあります。依存関係が小さいという点でupdate-notifierより少し優れています。サーバーの監視に興味がある場合は、おそらくすでにインストール済みです。出力は次のようになります(気に入らない場合は、プログラムをフォークして必要なものを出力するのは簡単です)。

APT OK: 0 packages available for upgrade (0 critical updates).

nagiosアラートがあなたの好みではない場合は、私がすることを実行して、システムで使用可能な更新に関する電子メール通知を送信するapticronをインストールできます。


ありがとう!アプティクロンはオプションではありません。自分のスクリプトの情報が必要なので、電子メールではうまくいきません。同じ理由でnagiosを使用していませんが、「check_apt」を個別に使用できることを示唆しているように思われますか?
Joe Kandaba

@Joeすべてのnagiosプラグインは独立して実行できます
Michael Lowman

うん。これは/ usr / lib / nagios / check_aptにインストールされるプログラムです。古いユーザーと同じように問題なく実行されます。
jldugger
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.