このフォルダとは何ですか:Fedoraシステムの/run/user/1000
とは何ですか?
~ $ df -h
Filesystem Size Used Avail Use% Mounted on
tmpfs 1.2G 20K 1.2G 1% /run/user/1000
編集:2019年6月7日
私の2つの答えは、この場所に保存されているファイルがどこのディレクトリまたはどこにあるかについて同意しません。
パトリック :
systemd
より前のバージョンでは、これらのアプリケーションは通常、/tmp
にファイルを保存していました。
そして再びここに:
/tmp
は、FHS
によって指定されたローカルな唯一の場所であり、すべてのユーザーが書き込み可能です。
ブライアム :
このディレクトリの目的は、かつて
/var/run
によって提供されていました。一般に、プログラムは/var/run
を引き続き使用して、下位互換性のために/run
に設定された要件を満たすことができます。
そして再びここに:
/run
を使用するように移行したプログラムは、/var/run
のセクションに記載されている場合を除き、/var/run
の使用を中止する必要があります。
/run/user/1000
の親であるのか、どちらの回答にも/run/user
の前に使用されていたディレクトリについて他の人が何を言っているのか、なぜ言及されていないのでしょうか。/run/user/$uid
は pam_systemd
によって作成され、そのユーザーの実行中のプロセスが使用するファイルを格納するために使用されます。これらは、キーリングデーモン、pulseaudioなどです。
systemd 以前は、これらのアプリケーションは通常、ファイルを/tmp
に保存していました。ホームディレクトリはネットワークファイルシステムを介してマウントされることが多く、これらのファイルをホスト間で共有してはならないため、/home/$user
の場所を使用できませんでした。 /tmp
は [〜#〜] fhs [〜#〜] によって指定された唯一の場所であり、ローカルであり、すべてのユーザーが書き込み可能です。
ただし、/tmp
は誰でも書き込み可能であるため、これらすべてのファイルを/tmp
に保存すると問題が発生します。作成中のファイルの所有権とモードを変更することはできますが、操作が難しくなります。
Systemdが登場し、/run/user/$uid
が作成されました。このディレクトリはシステムに対してローカルであり、ターゲットユーザーのみがアクセスできます。そのため、ファイルをローカルに保存しようとするアプリケーションは、アクセス制御について心配する必要がなくなります。
また、物事をすばらしく整理します。ユーザーがログアウトし、アクティブなセッションが残っていない場合、pam_systemd
は/run/user/$uid
ディレクトリを消去します。 /tmp
にはさまざまなファイルが散在しているため、これを行うことはできません。
FHS(File Hierarchy Standard)の最新のドラフトに準拠 、/ run:
このディレクトリには、システムが起動されてからのシステム情報データが含まれています。このディレクトリの下にあるファイルは、起動プロセスの最初にクリア(必要に応じて削除または切り捨て)する必要があります。
このディレクトリの目的は、かつて/ var/runによって提供されていました。一般に、プログラムは/ var/runを引き続き使用して、下位互換性のために/ runに設定された要件を満たすことができます。/runを使用するように移行したプログラムは、/ var/runのセクションに記載されている場合を除き、/ var/runの使用を中止する必要があります。
プログラムには/ runのサブディレクトリがある場合があります。これは、複数のランタイムファイルを使用するプログラムに推奨されます。ユーザーは/ runのサブディレクトリを持つこともできますが、/ run自体と他のサブディレクトリの不正使用を防ぐためにアクセス権を適切に制限するように注意する必要があります。
/run/user
ディレクトリの場合、dconf、Pulse、systemdなど、ロックファイルとソケット用の場所を必要とするさまざまなユーザーサービスによって使用されます。異なるユーザーUIDがシステムにログインしているのと同じ数のディレクトリがあります。