これが私の問題です。私はproxmoxで2つのVMサーバーを管理します。最近は、apt update & apt upgrade
アップデートを通じて多くのVM Linuxカーネルをアップグレードしました。linux-image-4.9.0-13-amd64
linux-image-amd64/oldstable
4.9+80+deb9u11 amd64
ディストリビューションはDebianです。
lsb_release -a No LSB modules are available. Distributor ID: Debian
Description: Debian GNU/Linux 9.13 (stretch) Release: 9.13
Codename: stretch
仮想マシンの1つにmongoDBがあります。マシンをアップグレードして再起動した後(エラーなし)、mongoDBが消え(もうインストールされていない)、再インストールする必要がありました。
ちなみに、私はこのサーバーの管理を開始する前にapt upgrade
別のサーバーで管理していましたが、mysql
.Mysqlがインストールされているサーバーもアップグレード後に削除されました。
私の質問は:これを避けるためになぜそして何をすることができますか?
私のファイルの終わりは次のとおりです/var/log/apt/history.log
(7日前)。
Start-Date: 2020-07-22 12:00:07
Commandline: apt-get upgrade -y
Upgrade: nodejs:amd64 (10.21.0-1nodesource1, 10.22.0-1nodesource1)
Error: Sub-process /usr/bin/dpkg returned an error code (1)
End-Date: 2020-07-22 12:00:14
Start-Date: 2020-07-23 12:00:04
Commandline: apt-get upgrade -y
Upgrade: librsvg2-common:amd64 (2.40.16-1+b1, 2.40.21-0+deb9u1), librsvg2-2:amd64 (2.40.16-1+b1, 2.40.21-0+deb9u1)
Error: Sub-process /usr/bin/dpkg returned an error code (1)
End-Date: 2020-07-23 12:00:05
Start-Date: 2020-07-24 12:00:04
Commandline: apt-get upgrade -y
Error: Sub-process /usr/bin/dpkg returned an error code (1)
End-Date: 2020-07-24 12:00:04
Start-Date: 2020-07-27 10:17:29
Commandline: apt upgrade
Install: linux-image-4.9.0-13-amd64:amd64 (4.9.228-1, automatic)
Upgrade: libcomerr2:amd64 (1.43.4-2+deb9u1, 1.43.4-2+deb9u2), e2fsprogs:amd64 (1.43.4-2+deb9u1, 1.43.4-2+deb9u2), e2fslibs:amd64 (1.43.4-2+deb9u1, 1.43.4-2+deb9u2), libss2:amd64 (1.43.4-2+deb9u1, 1.43.4-2+deb9u2), linux-image-amd64:amd64 (4.9+80+deb9u10, 4.9+80+deb9u11)
End-Date: 2020-07-27 10:37:34
今日mongoDBを再インストールした後の状況は次のとおりです。
Start-Date: 2020-07-29 11:55:34
Commandline: apt-get install -y mongodb-org
Requested-By: user (1001)
Install: mongodb-org-mongos:amd64 (3.6.19, automatic), mongodb-org-tools:amd64
(3.6.19, automatic), mongodb-org-shell:amd64 (3.6.19, automatic), mongodb-org:amd64 (3.6.19), mongodb-org-server:amd64 (3.6.19, automatic)
End-Date: 2020-07-29 11:55:50
Start-Date: 2020-07-29 12:00:07
Commandline: apt-get upgrade -y
Upgrade: libcurl3:amd64 (7.52.1-5+deb9u10, 7.52.1-5+deb9u11), curl:amd64 (7.52.1-5+deb9u10, 7.52.1-5+deb9u11), libcurl3-gnutls:amd64 (7.52.1-5+deb9u10, 7.52.1-5+deb9u11)
End-Date: 2020-07-29 12:00:09
そして
> dpkg.log | grep remove
私には何も与えられませんでした。
必要に応じて、アップグレード前にVMをバックアップして、アップグレード前のファイルを公開できるようにしました。
stackexchangeを使うのは今回が初めてなので、許してくれて投稿に問題があれば教えてください!
この現象を理解するのを手伝ってくれてありがとう!
ありがとうございます。
編集する
バックアップの復元が完了したばかりですが、mongodb
バックアップはありません。とにかくいつ削除されたのか確認できますか?エラーが発生しました
[26] 12:00:35 R servername Exited with error code 100
この更新プログラムを管理するリモートサーバーから。関連がありますか?
編集2
> zgrep mongodb-org /var/log/apt/history.log.*
私はこれを以下で見つけましたhistory.log.4.gz
:
Start-Date: 2020-03-04 11:47:17
Commandline: apt autoremove
Remove: mongodb-org-mongos:amd64 (3.6.17), sgml-base:amd64 (1.29), libicu64:amd64 (64.1-0.1+0~20190410090943.5+stretch~1.gbp38f694), php7.3-mysql:amd64 (7.3.15-4+0~20200224.55+debian9~1.gbpbea824), mongo-tools:amd64 (3.2.11-1+b2), mongodb-org-shell:amd64 (3.6.17), libtcmalloc-minimal4:amd64 (2.5-2.2), xml-core:amd64 (0.17), libgoogle-perftools4:amd64 (2.5-2.2), libunwind8:amd64 (1.1-4.1), linux-image-4.9.0-8-amd64:amd64 (4.9.144-3.1), libstemmer0d:amd64 (0+svn585-1+b2), mongodb-org-server:amd64 (3.6.17), libyaml-cpp0.5v5:amd64 (0.5.2-4)
End-Date: 2020-03-04 11:47:27
それでは、犯人はどこにいますか?そのコマンドを実行した人が誰であるか、新しいバージョンをインストールせずにmongoDBを削除した理由を知る方法はありますか?最近のファイルにはアクティビティがhistory.log
表示されなくなりますmongo-db
。奇妙なことに、今日までどのユーザーも問題を見つけられなかったようです。カーネルの更新後に再起動すると、これを行うことができますか?どこかにキャッシュがありませんか?
答え1
コメントで述べたように、MongoDBの削除はカーネルのアップグレードとは何の関係もありません。質問の最後にログインしてください。
Commandline: apt autoremove
見せる最大MongoDBパッケージは自動的にインストールされましたが、もはや不要なので削除されました。これは依存関係としてインストールされていますが、mongodb-org
後で削除されたためです。削除はmongodb-org
3月4日に行われ、ログには表示されなくなります。
変化を検出する点では、重要な要素は再起動と考えられています。 Debian ポリシーに準拠したパッケージはアンインストール時にサービスが停止しますが、MongoDB パッケージ (Debian パッケージではない) には該当しません。その結果、パッケージは3月に削除されましたが、サービスは引き続き実行され、データを提供し、サーバーを再起動するまで停止しました。