.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
修正する:
.Xauthority
slimのソースコードを見ると、それが削除され、再生成された場所が見つかったようです。
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
は表示されません。