1件のコメント

コピー&ペーストとカット&ペーストではNTFSアクセス権が異なる

Windows上でフォルダをコピーする、移動するというのは日常的によく行う動作ですが、実はコピー&ペーストとカット&ペーストでは結果が異なるということを知っていましたでしょうか?

  • コピー&ペースト → ペースト先のアクセス権を上位フォルダから継承
  • カット&ペースト(同一ドライブ上) → ペースト先のアクセス権には依存せず(上位からの継承は無効にした状態で)、カットした元のNTFSアクセス権が設定される。
  • カット&ペースト(別ドライブへ) → ペースト先のアクセス権を上位フォルダから継承

実はこのようにコピー&ペーストとカット&ペーストは動きが明確に異なるし、別ドライブへのカット&ペーストでも動きが異なるのです。面白いですね。

おそらく、コピーというのは結局元のファイルとは別のものを「新規作成」することになるのだと思います。で、「新規作成」されたファイル、フォルダは上位のNTFSアクセス権を継承するのが規定の動作であるため、コピー&ペーストの時には継承になるのだと思います。

一方カット&ペーストの場合には別のものを新規作成するわけではなく、既存のファイル、フォルダの位置情報だけを書き換えるのではないかと思います。で、その際にNTFSアクセス権をどうするか・・・というところで、「継承を切って、今のアクセス権をそのまま」という動きをするようにロジックが組まれているのだと思います。(おそらく。)

さらにカット&ペーストでもドライブをまたぐ場合には完全に新しく作成して、元のものを消す、という操作が必要なので、コピー&ペーストと同じ結果になるものと思われます。(おそらく。)

個人的にはカット&ペーストの時だって、上位のフォルダのアクセス権を継承したっていいじゃないか、と思わないでもないのですが、そうなっていないということは継承であっても、NTFSのアクセス権はきちんとそれぞれのファイル、フォルダに書き込まれているということなのではないかと思います。なぜならそのほうが個別の処理がはやそうだから、アクセスがあるたびにいちいちアクセス権が本当に設定してあるところまで上へ上へ・・・とたどっていたら遅そうですものね。

というわけで、「なるべく早く動くように」と考えた結果がこの動作の違いになっているのでは、というのが私の予想です。

もしかしたらおおはずれかもしれませんが、このように裏側のロジックを予想した上で動きを覚えると記憶に定着します。ルールというか考え方だけ覚えておけばいいわけですからね!

子供3人。家族優先。都内SIer勤務。Windows系中心のインフラよりの何でも屋。脱原発。 Microsoft MVP for Cloud and Datacenter Management.

1件のコメント

コメントを残す

メールアドレスが公開されることはありません。