変更可能なファイルの所有者の変更を無効にする方法は?

変更可能なファイルの所有者の変更を無効にする方法は?

時にはルートでQt Creatorを実行する必要があります。その後、Qt Creatorの一部の設定ファイルが突然ルートを所有者として持つようになりました。そのため、Qt Creatorをユーザーとして実行すると、これらのファイルに書き込めないという警告が表示されます。これらのファイルの所有者が変更されるのを防ぐことはできますか?

答え1

gdbserverrootとして実行して問題を修正しました。

sudo gdbserver :1234 <path_to_program>

その後、QtCreatorメニューから127.0.0.1:1234にアクセスしてデバッグを開始しました。 QtCreatorは通常のユーザーによって実行されます。答えてくれてありがとう。

答え2

上記のようにQt Creatorをrootとして実行することはできませんが、質問に答えるには不変属性(chattr + iファイル名)を設定してファイルの所有者が変更されるのを防ぎます。これによりファイルの修正が防止されます。

答え3

rootこれらのファイルの所有権は明示的に変更できません。ほとんどの場合、削除または名前を変更し、同じ名前で再作成します。

rootこの場合、強制的に元のバージョンに再生成するのは簡単ではありませんuiduidオリジナルが何であるかを覚えておく必要があります。

おそらく最良の方法は、root生成されたファイルを追跡し、その後に所有権を変更することです。

もちろん、すでに指摘したように、Qt Creatorのようなものを実行するのはrootとにかく悪い考えです。

関連情報