修正する:

修正する:

.Xauthorityの位置を、以外の位置に変更できますか$HOME/.Xauthority? AFAIU、LXDE私のログインマネージャはログインするたびにこのファイルを生成しますslim

私が経験した問題は次のとおりです。

拡張属性を使って家を「不変」にしたいです。

chattr +i /home/martin/

これにより、どのアプリケーションでもファイルを直接保存することはできませんが、/home/martin/自宅のより低いレベルのディレクトリ(例:/home/martin/.config/

LXDE現在のホームを不変に設定すると、ログインマネージャ()がslim作成されず、ログインできません。ログインマネージャは古いファイルを新しいデータで上書きできますが、実際にはそうではありません。新しいファイルを作成し、既存のファイルを削除します。 /home/martinが変更できない場合は許可されません(既存のファイルの上書きが許可されています)。/home/martin/.Xauthority.Xauthority

.Xauthorityしたがって、他の場所に保存したいと思います.config/.Xauthority。たとえば、これは可能ですか?

xauthファイルパスを指定するためのパラメータが必要であることがわかります。-f

修正する:

.Xauthorityslimのソースコードを見ると、それが削除され、再生成された場所が見つかったようです。

string xauthority = pw->pw_dir;
xauthority.append("/.Xauthority");

...

/* reinitialize auth file */
authfile = cfg->getOption("authfile");
remove(authfile.c_str());
putenv(StrConcat("XAUTHORITY=", authfile.c_str()));
Util::add_mcookie(mcookie, ":0", cfg->getOption("xauth_path"),
  authfile);

ファイルを削除/生成せずに上書きするようにソースコードをどのように変更しますか?

答え1

X Cookieファイルの場所はXAUTHORITY環境変数を使用して設定できます。デフォルト値はです~/.Xauthority

もちろん、アプリケーションに渡す場所は、Cookieが保存されている場所と一致する必要があります。 SLiMは他のファイルにCookieを追加する方法を提供しません。これは~/.Xauthorityハードコードされています。他のファイルを使用する場合は、SLiMにパッチを適用するか、この設定オプションを含むディスプレイマネージャを使用してください。たとえば、GdmはXクッキーを/var/run/gdm

.Xauthority変更可能なファイルをホームディレクトリに配置したくない場合は、シンボリックリンクを作成できます。

ホームディレクトリを不変にするのは無駄な運動。他の同様の質問が多く発生する可能性があります。構成ファイルとステータスファイルの標準的な場所はホームディレクトリです。ここでは、ドットファイルの名前が指定され、aで始まるため、デフォルト.lsは表示されません。

関連情報