質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

パーミッション

パーミッション(許可)は、ファイルシステム、データベース、そして他のコンピュータシステムに対するユーザーのアクセス権のことを指します。

Q&A

解決済

3回答

2739閲覧

dr--r--r-- と drw-rw-rw- の違い

nanikamado

総合スコア13

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

パーミッション

パーミッション(許可)は、ファイルシステム、データベース、そして他のコンピュータシステムに対するユーザーのアクセス権のことを指します。

3グッド

2クリップ

投稿2021/10/28 12:31

Linuxで、ディレクトリのパーミッションのdr--r--r--drw-rw-rw-は何が違いますか?

中のものを変更できないという点ではどちらも同じだと思うのですが。

hidezzz, angel_p_57👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hidezzz

2021/10/28 13:19 編集

回答は出来ないのでここに書きますが、 ・ディレクトリ配下のファイルを変更することなく、ディレクトリファイルが持つファイル名エントリだけを変更するようなコマンド(突き詰めればシステムコール)があるか? ・ディレクトリの書き込み権限はディレクトリ配下のファイルに対する書き込み権限で、ディレクトリが持つファイル名エントリは直接コマンド(システムコール)で書き換えることは出来ず、配下ファイルを変更後に自動でアップデートされるものなのか? という問いになるのかなと思いました。 答えはそれぞれNo,Yesのような気がなんとなくしていますが、断言するほどの知識は無いです
guest

回答3

0

内部のファイルのアクセスは実行権限が必要なので不可として、ディレクトリ自体に直接書くことは、今のLinuxのシステムコールでは無理なので(昔のUnixだと出来た気がする)、これも違いには該当せずですね。

書き込み権の無いファイルをrmすると削除することの確認を求められるので、それ相当が違いに該当するのではと思ったのですが、空で書き込み権限の無いディレクトリをrmdirしても確認を求められません。

ということで、少なくとも通常使うコマンドレベルでの差異は無いでしょう。
一般のコマンド以外でも、差異が出るような仕様のプログラムは無い気がします。

投稿2021/10/28 13:50

編集2021/10/28 13:56
otn

総合スコア85901

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nanikamado

2021/10/28 14:28 編集

ありがとうございます。確かに、w権限があるかどうかを見て動作を変えるプログラムがあれば、挙動が変わってくる可能性はありますね。書き込めないことには変わりありませんが。
guest

0

ベストアンサー

結論として、「違いがない」で良いと思います。

ディレクトリの w 権を要求する操作として、そのディレクトリの直下での

  • ファイル・ディレクトリの新規作成 ( open/creat, mkdir )
  • ファイル・ディレクトリのリネーム ( rename )
  • ファイル・ディレクトリの削除 ( unlink, rmdir )

が考えられますが、いずれの操作も「対象のパスの中のディレクトリのに検索許可 (x権のこと) が与えられている」ことを要件にしています。
これは、例えばunlink(2)のmanページのエラーの項の以下の記述等から分かります。

EACCES

pathname を含んでいるディレクトリの書き込み許可がプロセスの実効 (effective) ユーザー IDに与えられていないか、**pathname の中のディレクトリのどれかに検索許可が与えられていない**([path_resolution(7)](https://linuxjm.osdn.jp/html/LDP_man-pages/man7/path_resolution.7.html) も参照すること)。

だとすると、x権がなければw権が活かせないので、「違いがない」ということになります。
なお、「対象ディレクトリにchdir → ディレクトリのx権を消す」の場合、ディレクトリを経ずに直下のファイル等にアクセスできるように見えますが、その場合でもカレントディレクトリの権限チェックは働くようなので、やはりw権は活かせないまま、となるかと思います。

投稿2021/10/28 13:19

angel_p_57

総合スコア1681

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nanikamado

2021/10/28 14:06

ありがとうございます。もやもやが解消されました。
guest

0

パーミッションについて

追記

質問の意味がわかりました。

たしかにx属性が無ければw属性があろうと無かろうと同じですね。

Linux のディレクトリとファイルのパーミッション組み合わせと振る舞い - ぱと隊長日誌

投稿2021/10/28 12:41

編集2021/10/28 13:07
itagagaki

総合スコア8402

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nanikamado

2021/10/28 12:44

貼っていただいたページを読みましたが、よく分かりませんでした。
angel_p_57

2021/10/28 13:04

回答になっていないかと
otn

2021/10/28 13:22 編集

> パーミッションについて ディレクトリの実行権が、「カレントディレクトリにすることができる」と間違って書いてありますね。 他にも間違った記述があります。個人ブログかと思ったら、なんと大学のサイト? とりあえず、このページは質問と関係ないです。
angel_p_57

2021/10/28 13:21

> 「カレントディレクトリにすることができる」と間違って それ自体は間違ってないと思いますが…。それだけではないということで。
otn

2021/10/28 13:22

> Linux のディレクトリとファイルのパーミッション組み合わせと振る舞い - ぱと隊長日誌 このページも「実行ファイルの実行にはファイルのrx権限が必要となります。」と間違いが書いてある。 ディレクトリの実行権についても、無いと ls がエラーになるように書いてある。オプション無しのlsは名前の表示しかしないのでエラーになりません。
otn

2021/10/28 13:26

> それ自体は間違ってないと思いますが…。それだけではないということで。 それだけでは無いというか、実行ビットの意味では無い。 各ビットの意味を書いた表じゃなくて、各ビットが立っていれば出来ることの一例を挙げた表であれば合ってますが。もしかして、そういう表なのか??
itagagaki

2021/10/28 13:32

「実行ファイル」はスクリプトの話みたいですね。 「ls」は何かaliasでも設定していたんでしょうかね。
angel_p_57

2021/10/28 13:37

> 実行ビットの意味では無い。 「検索」と書け、とか。そういうことを言ってますか? ただ、その用語だけ見てもしようがないので「カレントディレクトリにできる、直下のファイルにアクセスできる」くらいの説明で十分だと思いますが。と見ると、半分欠けているのは大きな問題ですが「『カレントディレクトリにすることができる』と間違って」はツッコミとしておかしいですね。という話です。 ※「意味」と「できること」に差をつけてるんだとしたら、それこそよく分からん話です
otn

2021/10/28 13:54

> angel_p_57さん おっしゃること、ごもっともな気がします。 書き込みビットの説明で「ファイルの上書き、削除」と書いてあったので、表全体を色眼鏡で見ていたのかもしれません。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問