![書き込み専用ファイルと書き込み実行可能ファイルのユースケースは何ですか? [繰り返し]](https://linux33.com/image/81587/%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E5%B0%82%E7%94%A8%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%A8%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%81%BF%E5%AE%9F%E8%A1%8C%E5%8F%AF%E8%83%BD%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%AE%E3%83%A6%E3%83%BC%E3%82%B9%E3%82%B1%E3%83%BC%E3%82%B9%E3%81%AF%E4%BD%95%E3%81%A7%E3%81%99%E3%81%8B%EF%BC%9F%20%5B%E7%B9%B0%E3%82%8A%E8%BF%94%E3%81%97%5D.png)
r--
および権限のユースケースは理解されますr-x
が、-w-
ユースケースは理解されません-wx
。
答え1
-w-
FIFO または次でのみ開くことができるファイルに便利です。追加モード(chattr +a
Linuxの場合)。
prw--w--w- me me /var/run/sendstufftome
他の人はデータを送信できますが、実行中の専用プロセスme
(他の人はいません)がそのデータを読み取ります。
tty
デバイスにも一般的です。
$ ls -l "$TTY"
crw--w---- 1 stephane tty 136, 25 Jan 18 14:06 /dev/pts/25
$ mesg n
$ ls -l "$TTY"
crw------- 1 stephane tty 136, 25 Jan 18 14:07 /dev/pts/25
tty
グループ(または一部のシステムの全員)が書き込む可能性があるため、またはwrite
(wall
setgid実行可能ファイル)などのアプリケーションがtty
メッセージを送信できます。
-wx
特定のディレクトリに適しています。
$ ls -dl /var/lib/php5/sessions
drwx-wx-wt 4 root root 4096 Aug 25 2014 /var/lib/php5/sessions
ディレクトリは誰でも書くことができますが、そこにどのファイルがあるかは誰も知りません(まだroot
)。アイデアは、プロセスが自分が入れたファイルだけを知っているということです。多くの場合、ファイル名はランダムに推測するのが困難です(例:PHPセッションファイル)。 (プロセスは、同じユーザーに対して別のプロセスで現在開いているファイルが何であるかを判断できます/proc/*/fd
。)
答え2
ファイルの場合、ユーザーがファイルに書き込むことはできますが読み取ることができない、よく知られている状況を考えることはできません。さらに、読み出しビットを設定せずにファイルの実行ビットを設定することは意味がありません。これは、シェルがファイルを実行するためにファイルを読み取る必要があるためです。
ディレクトリに関する限り、可能なシナリオは匿名性によるセキュリティの一種です。おそらく匿名FTPユーザーです。-w-
ユーザーはフォルダーの内容を更新(ファイルの挿入など)し、その-wx
フォルダーにcd
フォルダーにアクセスする機能(おそらくユーザーの開始位置)を許可できますが...ディレクトリの内容をリストしない、ディレクトリに読み取りビットを設定する必要があります(おそらく私たちは彼らが見たくない)その他ユーザーのファイル)。