通常、運用サーバーで「apt-get upgrade」(安定性の観点から)を実行しても安全ですか?


18

私は頻繁にUbuntu 12.04.2サーバーにログインし(Postgres 9.2.4が稼働中の実稼働データで実行されている)、次のようなものを見ます:

4 packages can be updated.
4 updates are security updates.

もちろん、これは数日ごとに発生します。自動更新には興味がありません(眠っているときに変更できるものが少ないほど良い)が、サーバーを常に最新の状態に保つことに興味があるため、質問は次のとおりです。それは、実行することが常に安全であると考えられているapt-get upgradeか、それが物事を壊すことができる時がありますか。パッチは必ずしも完全ではないことを理解しています(そのためタイトルに「常に」引用されています)が、一般的なルールとして、これを実行しても安全であると想定されています(ESPがNginxを介してCSSファイルを提供するだけの場合) )?

回答:


9

通常、これは安全です。ただし、重要なパッケージ(Postgres、Nginxなど)については、更新されないようにそれらのパッケージを特定のバージョンに固定することをお勧めします。たとえば、Postgresが更新されると、データベースサーバーが再起動されます。これは、計画されたダウンタイムの前後にスケジュールできるようにするものです。

ただし、運用環境に昇格する前にステージングサーバーでアップグレードをテストすることが常に最善であるため、展開プロセスに追加することを検討する必要があります。


1
カーネルのアップグレードがある場合は再起動します。緊急時の介入なしにサーバーが起動しなくなるのを見つけることほど悪いことはありません。
Sirex

「これらのパッケージを特定のバージョンに固定して、更新されないようにすることをお勧めします」:方法
vcardillo

1
@vcardillo「apt pinning」をグーグル検索してください。
EEAA

5

Aptitudeはコマンドを覚えやすい:aptitude safe-upgradevs aptitude full-upgrade. apt-listchanges更新されたパッケージの変更に関する情報とアップグレードをキャンセルするオプションが提供されるように、インストールすることをお勧めします。


4

はいといいえ。ほとんどのアプリケーションは問題ありませんが、一部のアプリケーションはアップグレードするにはあまり満足していないかもしれません。

1.6.29から1.6.30のjavaを使用するアプリケーションがアプリケーションを破壊する例を見てきました。また、mysqlが5.0.X 5.0.X + 1の間で壊れているのを確認しました(ここで正確な数字を覚えてはいけません)。

システムアプリケーションはほとんど問題ないはずですが、サーバーが実際に提供しているアプリケーションのリリースノートを注意深くお読みください。

nginxの変更内容を読み、特定のセットアップに影響する可能性のある変更があるかどうかを理解してください。アプリケーションを高度に使用すればするほど、壊れやすくなります。

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