さくです。 At Fri, 30 Jun 2000 19:22:21 +0900, Takahiko Sawayanagi <sawa _at_ tokki.jrc.co.jp> wrote: > 他のユーザ所有の許可モード644に設定された、あるファイルをrm > コマンドで削除しようとしたり、エディタなどで編集上書しようとした時に、 > 下記のようなメッセージが出てきて、「許可権モードを無視して削除するか?」 > と聞いてきます。 > ”y”と答えると、許可権を無視して簡単に削除、上書が出来てしまいます。 > (削除、上書するユーザは、”あるファイル”の置いてあるディレクトリの > 許可権は持っています。) > > "rm: rebove `ファイル名` , overriding mode 0644?" > > 通常は"Permission denied"と言って許可権が無いと削除、上書は出来ない > ように思います。(よく使用しているHP−UXのマシンは出来ませんでした。) ファイルのwは、そのファイルの内容を変更できるかどうかを決定します。 ディレクトリのwは、そのディレクトリ(という特殊ファイル。本来は名簿の意)の 内容を変更できるかどうかを決定します。つまり、そのディレクトリにファイルを 作ったり、そのディレクトリにあるファイルを削除する権限を司ります。 ということをふまえて、以下例題で説明します。 aaaaaaaさんの所有する、誰でも書けるディレクトリAに、 aaaaaaaさんの所有する、aaaaaaaさんのみw許可を持ったファイルxがある とします。 $ pwd A $ ls -ldiF . x 1234567 drwxrwxrwx 2 aaaaaaa aaaaaaa .....(省略).. ./ 1234568 -rw-r--r-- 1 aaaaaaa aaaaaaa .....(省略).. x # iはファイルのiノードを表示するlsのオプションです(数値は適当) このとき、bbbbbbbさんは、 ・x自身を直接書き換えることはできない。 のですが、 ・ディレクトリAにあるファイルxを削除できる。 ・ディレクトリAに新規ファイルを作成できる。 ので、エディタの上書き機能の実装が 1. オリジナルファイルを削除して、 2. 編集済みのデータを新規ファイルを作成して書き込む。 # 保存処理中の異常終了でデータが失われないように、実際にはもうちょっと細工 # が必要なだったはず。 となっていると、xを置き換えることができてしまうのです。 $ ls -ldiF . x 1234567 drwxrwxrwx 2 aaaaaaa aaaaaaa .....(省略).. ./ 1234569 -rw-r--r-- 1 bbbbbbb bbbbbbb .....(省略).. x rmでファイルxを削除できてしまうのも、同じ原理です。 -- OZAWA -Crouton- Sakuro E-Mail: mailto:crouton _at_ duelists.org mailto:crouton _at_ isoternet.org mailto:crouton _at_ serika.ne.jp Web: http://www.duelists.org/~crouton/ PGP: C98F 74E0 AEEB 4578 1DFC F650 3BE0 9627 11FC C9F5
Follow-Ups:
- [linux-users:70957] Re:ファイルの許可権についてTakahiko Sawayanagi
- [linux-users:70951] ファイルの許可権についてTakahiko Sawayanagi
- Prev by Subject: [linux-users:70953] Re: [linux-users:70951] ファイルの許可権について
- Next by Subject: [linux-users:70955] Re:ヘルプ(擬態アドレス?)
- Previous by thread: [linux-users:70953] Re: [linux-users:70951] ファイルの許可権について
- Next by thread: [linux-users:70957] Re:ファイルの許可権について
- Indexes:[Main][Thread]