誤ってchownを実行した後のファイル所有権の回復

誤ってchownを実行した後のファイル所有権の回復

私は最近PostgreSQLのインストールをアップグレードし、次のコマンドを実行する予定です。

sudo chown -R postgres:postgres /var/lib/postgres

残念ながら、タブの完成計算エラーのため、誤って最後に「postgres」部分を忘れてしまいました...結局、次のようになりました。

sudo chown -R postgres:postgres /var/lib

言うまでもなく、これはそれ自体で一連の質問を提起します。たとえば、オペレーティングシステムから起動できません。


    修正する:

    申し込み、chown -R gdm:gdm /var/lib/gdm正常にログインできます!しかし、これがどの程度まで問題を引き起こすかはわかりません。


私はi3をウィンドウマネージャとして、GDMをディスプレイマネージャとして使用してArch Linuxを実行しています。 /var/libにある必要なディレクトリの元の所有権を取得するのを手伝ってくれてありがとう。これまでは、プロセスのこの部分で永久に中断されました。
         Starting User Manager for UID 120...
[  OK  ] Started Session c1 of user gdm.
[  OK  ] Started User Manager for UID 120.

起動中のコンソール写真

LUKSを使用しており、ファイルシステムが暗号化されています。

ただし、もちろんinit=/bin/bashカーネルラインに追加して grub を使ってシェルを作成することもできますので、正しい所有権要件を知ったら簡単に修正できます。

今私/var/lib

  • colord有色人種に属し、
  • gdmgdm所有、
  • locatemlocateルートが所有しており、
  • redisredisに属し、
  • systemdルートが所有
  • 他のすべてはpostgresの所有です。

バラよりls -ho写真のエクスポート 権限と編集時間について学びます。

1つの問題は、/var/lib/gdmディレクトリがgdmの所有であり、一般的なホームディレクトリサブディレクトリ(、、、、、、、およびDesktop)が含まれており、すべてpostgresが所有していることDocumentsです。  バラよりDownloadsMusicPicturesPublicTemplatesVideosls -ho写真のエクスポート 権限と編集時間について学びます。

/var/libファイル所有権を実行前の状態に復元する方法

chown -R postgres:postgres /var/lib

?どんな助けでも大変感謝します。

ベストアンサー1

ディレクトリ内の chown コマンドを使用して、/etc/passwords のユーザー名と /etc/groups の対応するグループから知っている情報を返すことができ、残りは root:root に属します。

しかし、バグを作成できるまでは少し面倒です。忘れてしまった変更により、数日間表示されます。

私はpostgres gdmが大丈夫だと思います。残りはおそらくルートredisからredisに属します。 Torにも専用ユーザーがいると思います。


簡単な方法:すべてを再インストールします(もちろん/ homeをフォーマットせずにデータベースをバックアップした後)

おすすめ記事