クリーンインストール後にユーザーが作成したすべてのファイルを一覧表示するにはどうすればよいでしょうか?

クリーンインストール後にユーザーが作成したすべてのファイルを一覧表示するにはどうすればよいでしょうか?

使用していないマシンがあり、そのマシンに Linux をクリーン インストールしたいと考えています。マシンには重要なファイルがある可能性があります。

クリーンインストール後にユーザーが作成したすべてのファイルを一覧表示するにはどうすればよいでしょうか?

/私は、すべてのファイルを検索し、for ループで繰り返し処理して、ユーザーが作成したすべてのファイル (つまり、どの rpm のマニフェストにもリストされていないファイル) をリストするという単純な操作rpm -q --whatprovidesを実行しようと考えていました。これでうまくいくと思いますが、非常に遅く、8 時間以上かかる可能性があります。試してみる必要があります。

rpm をリストしましたが、これはどの Linux ディストリビューションにも当てはまると思います...ただし、短期的にはまず rpm ソリューションが必要です。

答え1

rpm -qlaは、rpm からのすべてのファイルをすばやく一覧表示します。両方のリストを並べ替えて、と比較することができますcomm。しかし、ユーザーが編集した rpm の設定ファイル (例: ) はどうでしょうか/etc/exports。 を使用して、rpm -qVaインストールされたファイルが変更されていないかどうかを確認できますが、変更される予定のファイル (例: ) は無視されます/etc/shadow。念のため、 全体のコピーを保持しておくことをお勧めします。特定のパッケージ (例: mysql や.../etc内のファイル) については、まだ心配する必要があります。/var

答え2

必要なものに応じて 2 つの方法があります。

  • あなたは時間(変更時刻) のファイルと、find最近変更されたファイル、および対応するパッケージを検索するコマンド。これにより、パッケージの一部ではないファイルを見つけることができます。たとえば、 の下にあるファイルを検索する場合などです/var

  • rpm -qaiを使用して、すべてのパッケージのインストール日を取得し、最近インストールされたパッケージのレポートを取得し、そのリストから を使用して、インストールされた各パッケージのファイルを一覧表示することができrpm -qlます。

    例えば、CentOS: インストール/更新の日付別にインストールされた RPM を一覧表示しますか?--lastこのオプションはリストをrpm -qa日付順に並べ替えるので、最初のインストールを行った時期に応じてパッケージを制限するにはリストをフィルタリングするだけでよいと指摘しています。

関連情報