smb.conf(5) บอกเป็นนัยว่าคุณไม่สามารถยับยั้งเส้นทางเฉพาะได้ เฉพาะชื่อไฟล์ (และ dir) เท่านั้น ปล่อยให้พวกมันอยู่ที่ไหนก็ได้
ไฟล์ยับยั้ง (S)
นี่คือรายการไฟล์และไดเร็กทอรีที่ไม่สามารถมองเห็นหรือเข้าถึงได้ แต่ละรายการใน
รายการต้องคั่นด้วย ´/´ ซึ่งทำให้สามารถรวมช่องว่างในรายการได้ ´*´ และ ´?´ ได้
ใช้เพื่อระบุไฟล์หรือไดเร็กทอรีหลายไฟล์เช่นเดียวกับไวด์การ์ดของ DOS
แต่ละรายการต้องเป็นพาธยูนิกซ์ ไม่ใช่พาธของ DOS และต้องไม่มีตัวคั่นไดเร็กทอรียูนิกซ์
ดังนั้นไม่ใช่สิ่งที่คุณกำลังมองหา เนื่องจากคุณไม่สามารถเปลี่ยนแปลงได้เช่นกัน เน็กซ์คลาวด์
ชื่อไดเร็กทอรี
มีตัวเลือกบางอย่าง:
ข้อสันนิษฐานของฉันคือคุณเข้าถึง samba ด้วยผู้ใช้เดียวกันกับผู้ใช้ระบบของคุณ ดังนั้นคุณจึงไม่สามารถเพิกถอน r/x bits จากผู้ใช้ samba เท่านั้นโดยไม่ส่งผลกระทบต่อสิทธิ์ของผู้ใช้ linux
เรียกใช้ samba ในเนมสเปซเมานต์แยกต่างหาก ซึ่งคุณเมาต์ไดเร็กทอรีที่คุณต้องการซ่อนมากเกินไป ดู เลิกแชร์(1)
และ เมานต์-ผูก
อาจต้องปรับแต่งสคริปต์ samba init เล็กน้อย
ผูกมัด /storage ทั้งหมดไปที่อื่นเช่น /smb/storage และโอเวอร์เมานต์ /smb/storage/users/trwnh/nextcloud และชี้แซมบ้าแชร์ไปที่ /smb/storage ด้วยวิธีนี้คุณไม่จำเป็นต้องเมานต์เนมสเปซแยกต่างหาก
ใส่ /storage/data และ /storage/users ในการแชร์แยกกัน
สร้างโมดูล samba vfs ซึ่งมีงานเดียวคือซ่อนไดเร็กทอรีที่ไม่ต้องการ