システムファイルの権限、所有者、グループをリセットする

システムファイルの権限、所有者、グループをリセットする

Mac には、システムにインストールされたファイルの権限をチェックして、インストールごとに適切な権限があるかどうかを確認するユーティリティがあります。LinuxMint にはそのような機能がありますか。権限が何であるべきかがわからないため、chown を探していません。また、パッケージを調べてすべてを把握することもできません。

ありがとう

答え1

LinuxMintはDebianをベースにしていますが、どうやらこのためのツールはないようです。関連パッケージを再インストールすることができます。Debian システムでの権限の復元再インストールするとすべて:

sudo apt-get --reinstall install `dpkg --get-selections | grep install | grep -v deinstall | cut -f1`

RPMベースのシステムであれば、原理的には変更されたパッケージを再インストールし、再インストールの手間を軽減します。ただし、Debian でのパッケージの再インストールは、最初のインストールよりも手間がかかりません。

最近インストールしたパッケージを特定したい場合は、dpkgのログを検索することで確認できます。インストール日順にパッケージを一覧表示する

答え2

使用するパッケージ マネージャーと環境によって異なります。

Linux 自体にはそのようなツールはありません。Linux には多くのソフトウェアが存在し、それらの多くは特別なファイル処理または実行モード (setuid バイナリまたは特別な権限が割り当てられたメールボックスのようなディレクトリなど) を必要とするためです。一方、Mac (OS X だと思います) はよりクローズドなプールであり、OS X の設計者は一般的な Mac にどのようなソフトウェアがプリロードされるかを知っており、パッケージをインストールするためのガイドラインを持っているため、Linux にはそのようなツールはありません。

パッケージ マネージャーがそのような問題をデバッグできる場合は、パッケージ マネージャーのドキュメントを確認してください。

ルート ファイル システムを操作している場合は、まず現在の権限リストをバックアップしておくと安全です。

find / -xdev -exec ls -ld '{}' ';' >>/root/perms.lst
(do that for each mount point related to system binaries, for example, /usr)

その後、すべてをルート (0:0) にリセットします。このようなリセットによって影響を受ける特別な setuid バイナリがある場合は、後で /root/perms.lst ファイルを調べることで、それらのステータスをリセットできます。

chmod 権限の場合、chmod 644 や chmod 755 のようなものをアドバイスするのは難しく、セキュリティ上の懸念が生じる可能性があるため、変更を加える前にファイルを調べる必要があります。

関連情報