จากโปรแกรม C ฉันต้องการเพิ่มสิทธิ์ "อ่านและดำเนินการ" ใน Windows 7 สำหรับไฟล์ในไดรฟ์ Samba โปรแกรม "icacls" ถูกนำมาใช้ในตัวอย่างด้านล่าง แต่การเรียกใช้ไลบรารี C อาจเป็นไปได้ถ้ามี
สิทธิ์สามารถเปลี่ยนแปลงได้สำหรับผู้ใช้ Windows เช่นทุกคนด้วยโปรแกรม "icacls" ของ Windows (ใช้การเรียกของระบบ) แต่เมื่อฉันพยายามที่จะเปลี่ยนสิทธิ์สำหรับผู้ใช้ Samba ด้วยชื่อที่แสดงผ่าน Windows แล้ว "icacls" จะส่งกลับ:
U:\temp>icacls hello.exe /grant smbuser:RX
user: No mapping between account names and security IDs was done.
Successfully processed 0 files; Failed processing 1 files
ความคิดใด ๆ เกี่ยวกับวิธีเพิ่มสิทธิ์ "อ่านและเรียกใช้" ลงในไฟล์ใน Windows เพื่อให้ผู้ใช้และกลุ่ม Samba (Linux) ได้รับสิทธิ์ "x" ของ Linux
หากคุณตั้งค่าการอนุญาตที่คุณต้องการในด้าน Linux แล้ว icacls จะแสดงอะไร?
—
แฮร์รี่จอห์นสตัน
icacls hello.exe ให้ข้อมูล แต่ก็ยังบอกว่า:
—
มอร์เทนซิลเมอร์
hello.exe No mapping between account names and security IDs was done. (R,W) No mapping between account names and security IDs was done. (RX) Everyone:(RX)
ดูเหมือนว่า Windows อนุญาตการควบคุมบรรทัดคำสั่งของการอนุญาตแม้ผ่านการควบคุม GUI ได้รับการยอมรับ
อยากรู้อยากเห็น ลอง
—
แฮร์รี่จอห์นสตัน
cacls /s
และโพสต์ผลลัพธ์ที่นี่
ระบบเป็น Windows 7 จึง
—
นนนนนนนนนนนน
icacls
ถูกนำมาใช้ ฉันได้แรงบันดาลใจจากคุณแสดงความคิดเห็นและพยายามที่จะทำลึก ไดรฟ์ Samba เชื่อมต่อกับข้อมูลรับรองที่แตกต่างจากผู้ใช้ Win และปรากฏว่า Win7 จะไม่อนุญาตให้icacls
คำสั่งเปลี่ยนการอนุญาตไฟล์สำหรับผู้ใช้ Samba ของ SID อย่างไรก็ตาม GUI ผ่าน "เมนูบริบท => คุณสมบัติ => ความปลอดภัย => สิทธิ์" อนุญาตให้เปลี่ยนสิทธิ์ได้ และฉันยังสามารถบันทึก / กู้คืนสำหรับผู้ใช้ Samba (SID) ได้ในicacls
ภายหลัง แต่ฉันไม่สามารถเพียงแค่ใช้ SID icacls ... /save ...
ที่สกัดจาก หืมมมมมมมมมมม
Windows 7
—
Harry Johnston
cacls
ยังคงมี มันเลิกใช้แล้ว แต่อยู่ที่นั่น แต่icacls /save
ทำสิ่งเดียวกันโดยประมาณ (สะดวกน้อยกว่าเล็กน้อย) ดังนั้นคุณควรเห็น SID ในรูปแบบสตริง (S-1-something) สำหรับผู้ใช้ Samba icacls
อนุญาตให้คุณระบุ SID สตริงโดยนำหน้าด้วยเครื่องหมายดอกจัน