Dalam drive NTFS, tingkah lakunya adalah ketika file dipindahkan, file tersebut akan tetap memiliki izin dari file asli, jika perpindahan tersebut dilakukan ke folder dengan volume yang sama.
Saya tahu ini berdasarkan pengalaman dan bisa dilihat di sini: https://support.microsoft.com/en-us/kb/310316
Tetapi saya berusaha menunjukkan perilaku ini hari ini kepada seorang kolega dan itu tidak berhasil. Setiap kali file itu hanya memiliki izin dari folder baru yang terkait dengannya.
Saya sudah mencoba di 3 mesin yang berbeda dan tidak lagi berfungsi seperti itu. Kapan itu berubah? Dan tidak, pengaturan registri yang disebutkan sebelumnya tidak diatur.
Adakah yang tahu kapan ini berubah?
[Sunting]
Hanya sebuah contoh untuk membuatnya lebih jelas
Misalkan saya punya folder ini, di drive C saya.
- C: \ Dibagi-pakai
- \Kerja
- \Terakhir
Dan saya memiliki empat grup: - Magang - Karyawan - Manajer - Staf (yang sebelumnya memiliki 3 anggota).
Sekarang, mari pertimbangkan izin (disederhanakan).
- C: \ Dibagi-pakai
- Tidak mewarisi
- Secara eksplisit memungkinkan Kontrol Total untuk Admin
- Secara eksplisit memungkinkan Modifikasi ke Manajer
- C: \ Shared \ Working
- Warisan dari Dibagikan
- Secara eksplisit memungkinkan Ubah ke Karyawan
- C: \ Shared \ Final
- Warisan dari Dibagikan
- Secara eksplisit memungkinkan Baca untuk Staf
Sekarang, anggap saja saya memiliki file di folder Bekerja, yang disebut Bullshit.doc.
Sebelumnya, jika file dipindahkan (dipotong / disisipkan) dari folder Bekerja ke Final, itu akan mempertahankan izin asli, yaitu, Manajer dan Staf dapat Memodifikasi dan Interns tidak akan memiliki izin.
Sekarang, ketika saya mencoba memindahkan Bullshit.doc, ketika dipindahkan, hanya akan mewarisi izin dari folder Final, yaitu, itu hanya memaafkan bahwa Interns seharusnya tidak memiliki akses.
Pertanyaan saya adalah: ini berubah, bukan? Atau saya menjadi gila? Saya 99% yakin itu berfungsi seperti yang dijelaskan dalam KB.
Saya tahu saya punya masalah yang mirip dengan ini di masa lalu, ketika pengguna tingkat atas memindahkan file di antara folder (dengan set izin yang berbeda) dan kemudian mengeluh bahwa karyawan magang tidak bisa membaca file. Saya harus menjelaskan lebih dari sekali bahwa cut / paste tidak berfungsi, bahwa mereka perlu menyalin / menempel / menghapus. Itu kembali pada Windows 2003 pasti, tetapi saya bisa setidaknya 2008 R2.
[Sunting 2] Sekarang dengan gambar !!!
Ok, jadi saya memutuskan untuk mencoba dan meniru. Dengan file aktual dan bukan contoh sederhana. Ini dia...
Jadi ini folder sumber. Lihat semua izin implisit dan satu izin eksplisit.
Sekarang, mari kita buat file di sana. Dan periksa izinnya.
Saatnya memindahkan file ke tujuan. Folder asli hanyalah folder temp. Mari kita periksa izin folder tujuan.
Setelah memindahkan folder, mari kita periksa izinnya ...
Hum ... tidak seperti yang kuharapkan. Bahkan jika itu hanya sebuah file, dari apa yang saya kumpulkan di KB di atas, itu harus menjaga izin. Dan itulah yang saya ingat berperilaku.
Tapi sepertinya itu berubah. Dan saya tidak dapat menemukan sumber resmi ketika itu terjadi.
Ini membuat saya meragukan kewarasan saya.
sumber
Jawaban:
NTFS masih terus berevolusi dan berubah. Saya percaya bahwa perubahan dalam penanganan izin yang diwarisi pertama kali muncul di Vista dan telah berkembang lebih lanjut di Windows 7. Pengaturan registri pada tanggal tautan Anda dari XP, sejauh yang saya tahu diabaikan dalam versi yang lebih baru.
Untuk memahami apa yang terjadi ketika seseorang menyalin / memindahkan file, kita harus terlebih dahulu memahami perbedaan antara izin implisit dan eksplisit.
Izin implisit diwarisi dari folder induk, jadi disimpan dengan folder induk. Mereka tidak disimpan bersama anak-anak dan karenanya tidak dapat digerakkan / disalin. Dengan kata lain, izin ini hanya berlaku saat anak berada di folder induknya, karena izin tersebut berasal dari induknya.
Izin eksplisit diberikan secara manual ke folder / file dan disimpan di Access Control Lists (ACL) sebagai atribut NTFS. Mereka dapat dianggap sebagai milik item dan dalam beberapa kasus dapat dipindahkan dengan itu jika sistem file target juga NTFS.
Beberapa konsekuensi dari arsitektur NTFS ini adalah:
Ini bertentangan dengan sebagian besar dokumentasi yang sudah ada, di mana biasanya diklaim bahwa ketika suatu folder / file dipindahkan dalam volume yang sama, itu akan mempertahankan izin NTFS aslinya, baik implisit maupun eksplisit. Ini mungkin pernah benar di versi Windows yang lebih lama, tetapi telah diverifikasi oleh saya sendiri dan oleh poster karena tidak lagi menjadi kasus untuk izin implisit di Windows 7 dan Windows 10.
Untuk contoh aturan pemindahan yang salah didokumentasikan, lihat artikel Bagaimana izin file dan folder ditangani saat memindahkan atau menyalin file pada Windows 2008 R2 dan Windows 7 . Artikel ini adalah sumber diskusi saya di bawah ini dengan poster, di mana kami menemukan bersama aturan yang mengatur copy dan move di NTFS.
sumber
Ada detail penting tambahan untuk ditambahkan ke penjelasan harrymc yang sangat baik dan komprehensif, dan detail ini akhirnya menyebabkan perilaku split, di mana pemindahan file kadang-kadang berperilaku dalam gaya 2003 dan kadang-kadang dalam gaya 2008.
Cara perpindahan intra-volume NTFS telah diperbarui pada 2008 / Vista dan di atasnya bukan perombakan total, tetapi hanya menambahkan langkah kedua di latar belakang.
Langkah 1) MFT diperbarui; file dipindahkan dan mempertahankan izin asli
(Sama seperti pada 2003 / XP dan sebelumnya. Bergerak pada OS tersebut berhenti pada langkah ini.)
Langkah 2) ACL diperbarui untuk menjatuhkan izin yang diwarisi folder induk asli dan menerapkan izin warisan folder orangtua baru.
(Ini adalah langkah tambahan yang ditambahkan 2008 / Vista sehingga file akan memiliki izin folder target.)
Namun, jika pengguna yang melakukan pemindahan memiliki hak Ubah dan tidak secara eksplisit memiliki Hak Izin Ubah , langkah 2 akan gagal (tetapi tidak memberi tahu Anda), dan Anda akan berakhir dengan perilaku old-school sehingga sepertinya ada beberapa hal. kembali pada 2003 lagi.
Dalam skenario yang sama ini, jika seseorang menyalin file dan kemudian menghapus yang asli (cara yang sama sistem file menangani perpindahan antar volume), semuanya bekerja seperti yang Anda harapkan.
Tidak ada solusi yang bagus - Anda memberikan hak Ubah Izin kepada pengguna sehingga Langkah 2 dapat berhasil, atau file apa pun yang dipindahkan di antara folder izin berbeda pada volume server file yang sama akan mempertahankan izin asli mereka sampai diperbanyak secara paksa.
sumber