สร้างการแบ่งปันแซมบ้าชั่วคราว


9

มีความเป็นไปได้ไหมที่จะแบ่งปันไดเรกทอรีต่อSambaชั่วคราว?

ด้วยPython 3ฉันสามารถให้บริการไดเรกทอรีปัจจุบันต่อHTTPโดยใช้:

python -m http.server.

ฉันต้องการที่จะทำสิ่งเดียวกันกับแซมบ้า


เป็นnet share addคำสั่งที่คุณต้องการหรือไม่?
Derobert

หรืออาจเป็นnet usershare...
Derobert

คำตอบ:


1

ดูเหมือนจะไม่มีทางที่จะสร้างส่วนแบ่งโฆษณาแบบเดียวกับที่exportfsทำกับ NFS บน Linux และshareทำได้บน Solaris เหตุผลอาจแตกต่างกันไป แต่คุณสามารถทำสิ่งต่าง ๆ ทางเทคนิคตามที่อธิบายไว้ในหน้าสำหรับการเรียกใช้เซิร์ฟเวอร์หลายเครื่องบนเครื่องเดียวกันและด้วยการกำหนดเองให้smb.confบรรลุสิ่งที่คุณต้องทำ

นอกจากนี้ยังมีตัวเลือกในการสร้างและลบการแชร์แบบไดนามิกโดยใช้ SWATซึ่งจะต้องมีการเปลี่ยนแปลงเพื่อsmb.confเพื่อให้สิ่งนี้เกิดขึ้นดูในส่วนadd share commandและdelete share command

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


1

ขึ้นอยู่กับว่า samba daemon ของคุณมีอายุเท่าไรและตัวเลือกการกำหนดค่าที่ใช้เมื่อสร้างขึ้นคุณอาจยังมีตัวเลือกในการกำหนดการแชร์ "ไดนามิก" ใน smb.conf ของคุณชี้ไปที่ say / var / dynamic / ดูด้านล่าง จากนั้นเพิ่มลิงก์สัญลักษณ์ไปยังไดเรกทอรีที่คุณต้องการแชร์ในไดเรกทอรีชั่วคราว

แฮ็คนี้ต้องการตัวเลือกการเชื่อมโยงแบบกว้างเพื่อตั้งค่าเป็นใช่เพื่ออนุญาตให้แซมบ้าติดตามลิงก์ภายนอกรูทการแชร์ โชคไม่ดีที่สองสามปีที่ผ่านมาทีมแซมบ้าได้ปรับเปลี่ยนการตั้งค่าเริ่มต้นเพื่อป้องกันการแชร์ที่กว้างเนื่องจากอาจถูกนำไปใช้ประโยชน์ Google สำหรับ: แซมบ้าและ "ลิงก์แบบกว้าง"สำหรับประวัติและการทำงานอื่น ๆ

[dynamic]
    comment = Somewhere to park dynamic shares 
    path = /var/dynamic
    read only = Yes
    inherit acls = Yes
    follow symlinks = yes
    wide links = yes

การทดสอบอย่างรวดเร็วควรดูว่าคุณดีเช่น

mkdir -p /var/dynamic/test
cd /var/dynamic
ln -s test a_link
ln -s /tmp/  tmp_test

0

ให้บอกว่าคุณต้องการแชร์ / บางโฟลเดอร์กับ someuser ชั่วคราวแบบอ่านอย่างเดียวอย่างรวดเร็ว

เพิ่มผู้ใช้ระบบ:

useradd -r someuser

บ่อยครั้งที่ค่าเริ่มต้นโฟลเดอร์อื่นสามารถอ่านได้ (ตรวจสอบด้วย ls -ld / somefolder) หากคุณต้องการบังคับ:

chmod -R o+r /somefolder

เพิ่มผู้ใช้ไปยัง samba ด้วยรหัสผ่านบางอย่างเช่น:

smbpasswd -a someuser

แก้ไข smb.conf อย่างรวดเร็วและเพิ่มที่ด้านล่าง

[someshare]
path = /somefolder
read list = someuser

ออกบันทึกและเรียกใช้ในที่สุด

smbcontrol smbd reload-config

และ voila

เห็นได้ชัดว่าคุณอาจต้องการลบส่วน "someshare" เมื่อเสร็จแล้วและรันคำสั่ง reload-config อีกครั้ง

ข้อจำกัดความรับผิดชอบ: ฉันไม่ได้ทดสอบอย่างเต็มที่ แต่ฉันประหลาดใจที่คำตอบของคำถามนั้นง่ายเพียงใด คุณสามารถข้ามบางขั้นตอนและดำดิ่งสู่การแก้ไขของ smb.conf หากคุณมีผู้ใช้ที่มีการเข้าถึง samba อยู่แล้ว - สิ่งที่ฉันเพิ่งพบ

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