เหตุใดยูทิลิตี้ NTFS ACL `icacls 'จะเปลี่ยนพาร์ติชั่นระบบเบื้องหลัง


2

ฉันแนบ hdd กับเครื่อง win7 ของฉันและกำหนดอักษรชื่อไดรฟ์ I: ไปยังพาร์ติชันเท่านั้นบน hdd HDD เดิมมาจากคอมพิวเตอร์เครื่องอื่นและเพื่อหลีกเลี่ยงกล่องโต้ตอบ "คุณไม่ได้รับอนุญาต ... " ฉันตัดสินใจที่จะใช้ icacls เพื่อล้าง ACL ทั้งหมด

ฉันวิ่ง icacls I:\ /reset /t /c /l. หลังจากผ่านไประยะหนึ่ง Chrome ก็หยุดทำงาน Safari ขัดข้อง ฉันติดตามปัญหาและพบว่า ACL ของโฟลเดอร์บ้านของฉัน (ใน C:\Users ) ทั้งหมดจะเลอะ Chrome และ Safari ไม่สามารถเขียนไปยังโฟลเดอร์แคชได้ ฉันแก้ไข ACL ของโฟลเดอร์โฮมและทุกอย่าง ดูเหมือนว่า เพื่อตกลงตอนนี้

ทำไมจะ icacls ยุ่งกับโฟลเดอร์บ้านของฉันเมื่อฉันบอกให้ทำงานบน I: ไดรฟ์? ฉันยังใส่ใน /L สลับเพื่อไม่แก้ไขลิงก์สัญลักษณ์ ฉันเข้าใจผิดสวิตช์หรือไม่

สำหรับการอ้างอิงของคุณด้านล่างเป็นส่วนที่เกี่ยวข้องของหน้าจอความช่วยเหลือ

ICACLS name /reset [/T] [/C] [/L] [/Q]
    replaces ACLs with default inherited ACLs for all matching files.

    /T indicates that this operation is performed on all matching
        files/directories below the directories specified in the name.

    /C indicates that this operation will continue on all file errors.
        Error messages will still be displayed.

    /L indicates that this operation is performed on a symbolic link
       itself versus its target.

คำตอบ:


5

ตกลงฉันพบคำตอบ ...

ที่ซ่อนเร้น Documents and Settings ใน I:\ เป็นจุดเชื่อมต่อที่ชี้ไปที่ C:\Users. เป้าหมายของการแยกเป็นพา ธ สัมบูรณ์ (ตรงข้ามกับเส้นทางสัมพัทธ์) ตั้งแต่ /L ดูแลการเชื่อมโยงสัญลักษณ์เท่านั้น icacls การแก้ไข I:\Documents and Settings เข้าไป C:\Users และรีเซ็ต ACL ทั้งหมดที่นั่น

ดังนั้นอย่าใช้ icacls นอกเสียจากคุณจะตรวจสอบทางแยกทั้งหมดในโฟลเดอร์ที่คุณต้องการ icacls ไปทำงาน! สิ่งนี้ทำให้ icacls ไม่มีประโยชน์จริง ๆ เป็นเครื่องมือปรับเปลี่ยน ACLs แบบเรียกซ้ำ ... หากโฟลเดอร์มีจุดเชื่อมต่อที่ชี้ไปที่ C:\ ลึกเข้าไปในโครงสร้างโฟลเดอร์คุณอาจฆ่า Windows ของคุณโดยไม่ต้องรู้สาเหตุ!

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.