重複の可能性:
ファイルシステム全体に設定された不正なアクセス許可からRHEL 4.3サーバーを回復するにはどうすればよいですか?
偶発的なchown-R user:group/*の後で、CentOSファイルシステムのデフォルトの所有権を復元する方法はありますか?
行って再インストールする前に、私は尋ねて、おそらく時間を節約したいと思いました。私は新しい開発マシンをセットアップしている最中です(ありがたいことに本番ではありません)。入力が速すぎるか、を見逃しました。キーか何か。キャッチしたらすぐにキャンセルしようとしましたが、/ bin/boot/devなどはすべて変更されていました。
希望はありますか、それとも単に再インストールして、本番マシンではなかったことを喜んでいますか?
"再インストールして、本番マシンではなかったことを嬉しく思いますか?"
はい。
rpm -a --setugids
そのマシンの正確なクローンがある場合は、他のマシンをモデルとして使用してアクセス許可を復元することができます。何かのようなもの:
server1:# find / /usr /home -xdev | xargs getfacl -Pp > /tmp/permissions_from_server1
server2:# setfacl --restore=/tmp/permissions_from_server1
-xdev
はfind 1つのファイルシステムにとどまるように指示します。-P
はフィジカルウォークの略です。つまり、シンボリックリンクを無視します。p
は、先頭のスラッシュを保持します。このスイッチがない場合、getfacl
のデフォルトの動作では、先頭のスラッシュが削除され、復元が失敗します。YMMV、これが出発点です。
再インストールは最終的には簡単で、私がとるルートです。これが運用サーバーであり、バックアップがない場合、/bin/su
および/usr/bin/Sudo
が機能しなくなる可能性があるため、最初のタスクはroot権限を取り戻すことです。
Rootとしてローカルにログインし、それらのバイナリの所有権をリセットして、ライブラリが機能しないなど、すぐに発生するエラーの処理を開始します。
同様のマシンから、Shell/Perl/Pythonスクリプトを使用してさまざまなシステムディレクトリにファイルのリストを作成し、影響を受けるシステムでスクリプトを逆に実行して、ファイルに適切な所有権を付与できます。
それは世界の終わりではありませんが、かなり近いです、そしてそれはお尻の大きな痛みです。