เกี่ยวกับวัตถุประสงค์ในการติดตั้ง
หากไคลเอ็นต์และเซิร์ฟเวอร์เป็นทั้ง Linux (Ubuntu) และสมมติว่าผู้ใช้ในเซิร์ฟเวอร์เป็น โอไมครอน
กับ uid 1007 gid 1007
คำสั่งต่อไปนี้สามารถทำงานได้ในไคลเอ็นต์:
sudo mount -t cifs //192.168.1.X/samba_alias
/mnt/192.168.1.X/directoryname
-o ชื่อผู้ใช้ = omicron
แถว,
uid=1007,
gid=1007
uid
และ กิด
จำเป็นต้องเหมือนกันกับ omicron ในเซิร์ฟเวอร์ มิฉะนั้นจะไม่สามารถสร้างสิ่งใดในไดเร็กทอรีที่เมาท์ ดังนั้น เนื่องจากไฟล์ใหม่ใดๆ ที่สร้างจากไคลเอนต์มี uid และ gid เหมือนกันมากกว่าผู้ใช้ของเซิร์ฟเวอร์ เซิร์ฟเวอร์จึงสามารถใช้งานได้โดยไม่มีปัญหาใดๆ
หากเซิร์ฟเวอร์เป็น MacOS และไคลเอนต์ Ubuntu
หากใช้งานผ่าน GUI smb://hostname/directorynameshared
มันถูกติดตั้งและสามารถสร้างอะไรก็ได้และเรียกใช้สคริปต์ใด ๆ ใน:
*$XDG_RUNTIME_DIR/gvfs/smb-share:server=hostname,share=directorynameshared
ข้อเสียที่ไม่เหมือนใครคือในเซิร์ฟเวอร์ไม่สามารถแก้ไข/เข้าถึงเนื้อหาใหม่นั้นได้ เนื่องจากผู้ใช้/กลุ่มไม่เหมือนกัน แก้ไขด้วย เคี้ยว
ในฝั่งเซิร์ฟเวอร์ อย่างไรก็ตามไดเร็กทอรีจะถูกยกเลิกการต่อเชื่อมในภายหลัง
ตอนนี้เหตุผลของโพสต์นี้หากใช้สิ่งต่อไปนี้ (Ubuntu ถึง MacOS) - ผู้ใช้ในเซิร์ฟเวอร์คือ โอไมครอน
กับ uid 505 gid 507
:
sudo mount -t cifs //192.168.1.X/directorynameshared
/mnt/192.168.1.X/directoryname
-o ชื่อผู้ใช้ = omicron
แถว,
uid=505,
gid=507
เป็นไปได้ที่จะดำเนินการสคริปต์ แต่ไม่สามารถสร้างเนื้อหาใหม่:
mkdir: ไม่สามารถสร้างไดเร็กทอรี âxyzâ: ปฏิเสธการอนุญาต
วิธีแก้ไขสถานการณ์นี้?