Score:0

เพิ่มสิทธิ์การเขียนกลุ่มสำหรับไดเร็กทอรีที่ใช้ร่วมกันที่เมาท์ได้อย่างไร (กรณีไคลเอ็นต์/เซิร์ฟเวอร์)

ธง kz

ฉันมี แมคโอเอส ด้วยไดเร็กทอรีที่ใช้ร่วมกัน เข้าได้แล้วค่ะ อูบุนตู ลินุกซ์ กับ:

#จากลินุกซ์สู่แมคโอเอส
sudo mount -t cifs //192.168.1.X/directory_shared
                   /mnt/192.168.1.X/directoryname
                   -o ชื่อผู้ใช้=ชื่อผู้ใช้
                   แถว,
                   uid=####,
                   gid=####,
                   nounix,sec=ntlmssp

ปัญหาคือถ้าฉันทำ ls -l ในกลุ่มลูกค้าอยู่เสมอ r-x.

ถ้าฉันทำในเซิร์ฟเวอร์ (macOS) sudo chmod -R g+w XXX มันไม่ได้สะท้อนให้เห็นในไคลเอนต์ และถ้าในไคลเอนต์ sudo chmod -R g+w XXX คำสั่งถูกดำเนินการ ไม่ได้ใช้การตั้งค่าใหม่ ดังนั้นจึงถูกละเว้น (ยังคงอยู่กับ r-x). ฉันต้องการ สิทธิ์ในการเขียนกลุ่ม ในไดเร็กทอรีที่เมาท์เพื่อเขียน/แก้ไขเนื้อหาใดๆ ที่สร้างในเซิร์ฟเวอร์

บันทึก: ชื่อผู้ใช้ในเซิร์ฟเวอร์และไคลเอ็นต์แตกต่างกัน - เจ้าของสามารถเป็นได้ อัลฟ่า และในไคลเอนต์สามารถ เบต้า, แต่ เบต้า มีอยู่วิธีที่ผู้ใช้สร้างขึ้นในเซิร์ฟเวอร์ก็เพื่อให้การเชื่อมต่อจากไคลเอ็นต์ไปยังเซิร์ฟเวอร์ ดังนั้นเพื่อความปลอดภัยก็คือ ไม่ อนุญาตให้ทำการเชื่อมต่อจากไคลเอ็นต์ไปยังเซิร์ฟเวอร์โดยใช้ อัลฟ่า พิมพ์แค่กับ เบต้าและเจ้าของไฟล์ในเซิร์ฟเวอร์เป็นส่วนใหญ่ อัลฟ่า (อยู่ใน /ผู้ใช้/แชร์ ตำแหน่งใน Mac สำหรับผู้ใช้ใดๆ) ผู้ใช้เหล่านี้ (เซิร์ฟเวอร์และไคลเอ็นต์) ใช้ชื่อกลุ่มเดียวกันร่วมกัน (ประเภทกลุ่มรอง) ดังนั้น ไม่สำคัญว่าใครเป็นผู้สร้างไฟล์/ไดเร็กทอรีใหม่ พวกเขาต้องอนุญาตให้ผู้ใช้ทั้งหมดเข้าถึงได้อย่างสมบูรณ์ เนื่องจากกลุ่มหลักของไฟล์นั้นเหมือนกันซึ่งกำหนดวิธีการให้กลุ่มรองสำหรับผู้ใช้เหล่านี้

ฉันจะบรรลุเป้าหมายนี้ได้อย่างไร ไม่ว่าจะผ่านทาง sudo mount -t cifs ... [ตัวเลือก] หรือสิ่งที่ขาดหายไปผ่านทาง chmod สั่งการ.

Score:1
ธง es

CIFS เป็นระบบไฟล์เสมือนที่สร้าง "มุมมอง" ของการแชร์ระยะไกลด้วยชุดสิทธิ์เฉพาะสำหรับไคลเอ็นต์ ไม่ใช่เซิร์ฟเวอร์ คุณไม่สามารถ chown / chmod ระบบไฟล์เสมือน และ cifs ไม่สามารถมองเห็นการอนุญาตบนเซิร์ฟเวอร์

ตามค่าเริ่มต้น การเมานต์ cifs จะสร้าง "มุมมอง" ที่มี เจ้าของ = ราก (เว้นแต่คุณจะระบุ uid / gid ตามที่คุณได้ทำไปแล้ว) และสิทธิ์ของ 755

คุณสามารถแก้ไขสิทธิ์เหล่านั้นได้โดยใช้ dir_mode และ file_mode พารามิเตอร์

ตัวอย่างเช่น ถ้าคุณต้องการให้สิทธิ์ในการเขียนไปยังการแชร์ที่เมาท์สำหรับทุกคนใน gid=#### กลุ่ม:

sudo mount -t cifs //192.168.1.X/directory_shared /mnt/192.168.1.X/directoryname -o ชื่อผู้ใช้=ชื่อผู้ใช้,rw,uid=####,gid=####,nounix,sec= ntlmssp,dir_mode=0775,file_mode=0664

โปรดทราบว่าสิ่งนี้สะท้อนถึงสิ่งที่ผู้ใช้ไคลเอนต์เห็น ผู้ใช้ระบุโดย uid=#### และทุกท่านที่เป็นสมาชิกของ gid=### กลุ่ม - บนไคลเอนต์ - จะมีสิทธิ์เขียนไปยังการแชร์ที่ติดตั้ง

อย่างไรก็ตาม ผู้ใช้คนเดียวที่เซิร์ฟเวอร์เห็นคือผู้ใช้ที่ระบุโดยข้อมูลรับรองที่ส่งผ่านไปยังเซิร์ฟเวอร์: ชื่อผู้ใช้=ชื่อผู้ใช้. หากผู้ใช้นั้นไม่มีสิทธิ์ในการเขียนไปยังโฟลเดอร์จริงที่ใช้ร่วมกันบนเซิร์ฟเวอร์ จะไม่มีใครเข้าถึงไคลเอนต์ได้ หากเขามีสิทธิ์ในการเขียน เขาและผู้ใช้ไคลเอ็นต์ของกลุ่มจะบันทึกไฟล์ด้วยชื่อเจ้าของ = ชื่อผู้ใช้บนเซิร์ฟเวอร์

Manuel Jordan avatar
kz flag
ขอบคุณ ตอนนี้ฉันใช้ `dir_mode=0770,file_mode0770` ส่วนใหญ่ฉันทำงานผ่านการควบคุมการเข้าถึงกลุ่ม

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา