นี่คือคำสั่ง bindfs ที่สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้เวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS
โครงการ:
ชื่อ
bindfs ‐ mount --bind ในพื้นที่ผู้ใช้
เรื่องย่อ
ผูกมัด [ตัวเลือก] dir จุดขึ้นเขา
DESCRIPTION
ระบบไฟล์ FUSE สำหรับการมิเรอร์เนื้อหาของไดเร็กทอรีไปยังไดเร็กทอรีอื่น
นอกจากนี้ คุณสามารถเปลี่ยนการอนุญาตของไฟล์ในไดเร็กทอรีที่ทำมิเรอร์ได้
ไฟล์ เจ้าของ
-ยู, --force-ผู้ใช้ -o บังคับผู้ใช้ =...
ทำให้ไฟล์ทั้งหมดเป็นเจ้าของโดยผู้ใช้ที่ระบุ ยังทำให้เกิดการเคี้ยวบนเมานต์
ระบบไฟล์ล้มเหลวเสมอ
-NS, --force-กลุ่ม=กลุ่ม, -o แรงกลุ่ม=...
ทำให้ไฟล์ทั้งหมดเป็นเจ้าของโดยกลุ่มที่ระบุ ยังทำให้เกิด chgrp บนเมานต์
ระบบไฟล์ล้มเหลวเสมอ
-NS, --perms=สิทธิ์, -o ดัด =...
นำรายการข้อกำหนดการอนุญาตที่เหมือน chmod คั่นด้วยเครื่องหมายจุลภาคหรือโคลอนเพื่อ
ถูกนำไปใช้กับบิตการอนุญาตตามลำดับ ดู อนุญาต คุณสมบัติ ด้านล่างสำหรับ
รายละเอียด
สิ่งนี้มีผลเฉพาะกับการเปลี่ยนแปลงบิตการอนุญาตของไฟล์ที่มีอยู่เมื่อแสดง
ในไดเร็กทอรีที่เมาท์ คุณสามารถใช้ --create-with-perms เพื่อเปลี่ยนการอนุญาต
ไฟล์ที่สร้างขึ้นใหม่จะอยู่ในไดเร็กทอรีต้นทาง
โปรดทราบว่าตามปกติ ผู้ใช้รูทจะไม่ถูกผูกมัดด้วยการอนุญาตที่ตั้งไว้ที่นี่ คุณ
สามารถรับเมานต์แบบอ่านอย่างเดียวอย่างแท้จริงโดยใช้ -r.
-NS, --กระจก=ผู้ใช้1:ผู้ใช้2:..., -o กระจก=...
ใช้รายการผู้ใช้ที่คั่นด้วยเครื่องหมายจุลภาคหรือทวิภาคที่จะมองว่าตนเองเป็น
เจ้าของไฟล์ทั้งหมด ผู้ใช้ที่ไม่ได้ระบุไว้ที่นี่จะยังสามารถเข้าถึง
เมานต์หากการอนุญาตเป็นอย่างอื่นอนุญาตให้ทำได้
คุณยังสามารถตั้งชื่อกลุ่มที่นำหน้าด้วย '@' เพื่อมิเรอร์สมาชิกทั้งหมดของa
กลุ่ม. ซึ่งจะไม่เปลี่ยนกลุ่มที่ไฟล์จะแสดง
-NS, --กระจกเท่านั้น=ผู้ใช้1:ผู้ใช้2:..., -o กระจกเท่านั้น=...
Like --กระจก แต่ไม่อนุญาตให้ผู้ใช้รายอื่นเข้าถึงได้ (ยกเว้นรูท)
--แผนที่=ผู้ใช้1/ผู้ใช้2:@group1/@group2:..., -o แผนที่=...
รับการทำแผนที่ ผู้ใช้1/ผู้ใช้2ไฟล์ทั้งหมดที่ผู้ใช้เป็นเจ้าของ 1 จะแสดงว่าเป็นเจ้าของโดยผู้ใช้2
เมื่อ user2 สร้างไฟล์ ไฟล์เหล่านั้นจะถูกเปลี่ยนเป็น user1 ในไดเร็กทอรีพื้นฐาน
เมื่อไฟล์ถูกเรียกเป็น user2 ไฟล์เหล่านั้นจะถูกเรียกไปยัง user1 ในไฟล์อ้างอิง
ไดเร็กทอรี ทำงานคล้ายกันสำหรับกลุ่ม
ผู้ใช้หรือกลุ่มเดียวอาจปรากฏทางด้านซ้ายไม่เกินหนึ่งครั้งและหนึ่งครั้งบน
ด้านขวาของเครื่องหมายทับในรายการการแมป ปัจจุบันตัวเลือก --บังคับ-ผู้ใช้,
--กลุ่มพลัง, --กระจก, --สร้าง-สำหรับ-*, --ชอว์น-* และ --chgrp-* แทนที่
พฤติกรรมที่สอดคล้องกันของตัวเลือกนี้
ต้องมีการติดตั้งเป็นรูท
ไฟล์ CREATION นโยบาย
ไฟล์และไดเร็กทอรีใหม่ถูกสร้างขึ้นเพื่อให้เป็นเจ้าของโดยเมานท์ bindfs สามารถปล่อยให้
สิ่งนี้เกิดขึ้น (ค่าเริ่มต้นสำหรับผู้ใช้ทั่วไป) หรืออาจลองเปลี่ยนเจ้าของเป็น
uid/gid ของกระบวนการที่ต้องการสร้างไฟล์ (ค่าเริ่มต้นสำหรับรูท) ยังเป็น
เป็นไปได้ที่จะมี bindfs พยายามเปลี่ยนเจ้าของเป็นผู้ใช้หรือกลุ่มเฉพาะ
--สร้างในฐานะผู้ใช้ -o สร้างในฐานะผู้ใช้
พยายามเปลี่ยนเจ้าของและกลุ่มของไฟล์และไดเร็กทอรีใหม่เป็น uid และ gid
ของผู้โทร วิธีนี้ใช้ได้ก็ต่อเมื่อเมานต์เป็นรูท นอกจากนี้ยังเป็นค่าเริ่มต้น
พฤติกรรม (เลียนแบบการเมานต์ --bind) หากเมานต์เป็นรูท
--create-as-เมานต์ -o สร้างเป็นเมานต์
ไฟล์และไดเร็กทอรีใหม่ทั้งหมดจะเป็นของผู้เมานท์ นี่คือค่าเริ่มต้น
พฤติกรรมสำหรับผู้เมานต์ที่ไม่ใช่รูท
--สร้างสำหรับผู้ใช้=ผู้ใช้งาน, -o สร้างสำหรับผู้ใช้ =...
พยายามเปลี่ยนเจ้าของไฟล์และไดเร็กทอรีใหม่เป็นผู้ใช้ที่ระบุที่นี่
วิธีนี้ใช้ได้ก็ต่อเมื่อเมานต์เป็นรูท ตัวเลือกนี้จะแทนที่
--create-as-user และ --create-as-mounter ตัวเลือก
--สร้างสำหรับกลุ่ม=กลุ่ม, -o สร้างสำหรับกลุ่ม=...
พยายามเปลี่ยนกลุ่มที่เป็นเจ้าของไฟล์และไดเร็กทอรีใหม่เป็น group
ระบุไว้ที่นี่ วิธีนี้ใช้ได้ก็ต่อเมื่อเมานต์เป็นรูท ตัวเลือกนี้จะแทนที่
ตัวเลือก --create-as-user และ --create-as-mounter
--create-with-perms=สิทธิ์, -o สร้างด้วยสิทธิ์=...
ทำงานเหมือน --perms แต่ใช้กับบิตการอนุญาตของไฟล์ใหม่ที่ได้รับใน
ไดเรกทอรีต้นทาง โดยปกติการอนุญาตของไฟล์ใหม่จะขึ้นอยู่กับการสร้าง
การตั้งค่าและ umask ของกระบวนการ ตัวเลือกนี้สามารถใช้เพื่อแก้ไขสิ่งเหล่านั้นได้
สิทธิ์หรือแทนที่อย่างสมบูรณ์ ดู อนุญาต คุณสมบัติ ด้านล่างสำหรับ
รายละเอียด
CHOWN/CHGRP นโยบาย
พฤติกรรมในการเรียก chown/chgrp สามารถเปลี่ยนแปลงได้ โดยค่าเริ่มต้น พวกมันจะถูกส่งผ่านไปยัง
ไดเร็กทอรีต้นทางแม้ว่าจะตั้งค่า bindfs ให้แสดงเจ้าของ/กลุ่มปลอมก็ตาม การโทรแบบchown/chgrp
จะสำเร็จก็ต่อเมื่อผู้ใช้มีสิทธิ์มิเรอร์เพียงพอที่จะ chmod ไฟล์ที่ทำมิเรอร์
และเมานต์มีสิทธิ์เพียงพอที่จะ chmod ไฟล์จริง
--chown-ปกติ, -o chown-ปกติ
พยายามเรียกไฟล์ต้นแบบ นี่คือค่าเริ่มต้น
--chown-ละเว้น, -o เมินเฉย
อนุญาตให้ chown สำเร็จ (หากผู้ใช้มีสิทธิ์มิเรอร์เพียงพอ) แต่ทำจริง
ไม่มีอะไร. chown/chgrp ที่รวมกันจะเปลี่ยนเป็นคำขอ chgrp เท่านั้นอย่างมีประสิทธิภาพ
--chown-ปฏิเสธ, -o chown-ปฏิเสธ
ทำให้ chown ล้มเหลวเสมอโดยมีข้อผิดพลาด 'การปฏิเสธการอนุญาต' chown/chgrp . รวมกัน
คำขอก็จะล้มเหลวเช่นกัน
--chgrp-ปกติ -o chgrp-ปกติ
พยายาม chgrp ไฟล์ต้นแบบ นี่คือค่าเริ่มต้น
--chgrp-ละเว้น, -o chgrp-ละเว้น
ให้ chgrp สำเร็จ (หากผู้ใช้มีสิทธิ์มิเรอร์เพียงพอ) แต่ทำได้จริง
ไม่มีอะไร. chown/chgrp ที่รวมกันจะเปลี่ยนเป็นคำขอเฉพาะอย่างมีประสิทธิภาพ
--chgrp-ปฏิเสธ -o chgrp-ปฏิเสธ
ทำให้ chgrp ล้มเหลวเสมอโดยมีข้อผิดพลาด 'การอนุญาตถูกปฏิเสธ' chown/chgrp . รวมกัน
คำขอก็จะล้มเหลวเช่นกัน
ซีเอ็มโอดี นโยบาย
การเรียก Chmod จะถูกส่งต่อไปยังไดเร็กทอรีต้นทางโดยค่าเริ่มต้น ซึ่งอาจทำให้ไม่คาดคิด
พฤติกรรมหาก bindfs กำลังเปลี่ยนบิตการอนุญาต
--chmod-ปกติ, -o chmod-ปกติ
พยายาม chmod ไฟล์ต้นแบบ สิ่งนี้จะสำเร็จหากผู้ใช้มี
สิทธิ์มิเรอร์ที่เหมาะสมในการ chmod ไฟล์ที่ทำมิเรอร์และเมานต์มี
สิทธิ์เพียงพอที่จะ chmod ไฟล์จริง นี่คือค่าเริ่มต้น (เพื่อที่จะประพฤติตัว
เช่น mount --bind โดยค่าเริ่มต้น)
--chmod-ละเว้น, -o chmod-ละเว้น
ให้ chmod สำเร็จ (หากผู้ใช้มีสิทธิ์มิเรอร์เพียงพอ) แต่ทำได้จริง
ไม่มีอะไร
--chmod-ปฏิเสธ -o chmod-ปฏิเสธ
ทำให้ chmod ล้มเหลวเสมอโดยมีข้อผิดพลาด 'การปฏิเสธการอนุญาต'
--chmod-ตัวกรอง=สิทธิ์,, -o chmod-กรอง=...
เปลี่ยนบิตการอนุญาตของคำขอ chmod ก่อนที่จะนำไปใช้กับต้นฉบับ
ไฟล์. ยอมรับไวยากรณ์การอนุญาตเช่นเดียวกับ --perms ดู อนุญาต คุณสมบัติ
ด้านล่างสำหรับรายละเอียด
--chmod-อนุญาต-x, -o chmod-อนุญาต-x
อนุญาตให้ตั้งค่าและล้างแอ็ตทริบิวต์ที่สามารถเรียกทำงานได้ในไฟล์ (แต่ไม่ใช่
ไดเร็กทอรี) เมื่อใช้กับ --chmod-ignore chmods จะมีผลกับบิตของการดำเนินการเท่านั้น
ในไฟล์และการเปลี่ยนแปลงไปยังบิตอื่น ๆ จะถูกละทิ้ง ด้วย --chmod-deny chmods ทั้งหมด
ที่จะเปลี่ยนบิตใด ๆ ยกเว้น excecute บิตในไฟล์จะยังคงล้มเหลวด้วยa
'การอนุญาตถูกปฏิเสธ' ตัวเลือกนี้ไม่ทำอะไรกับ --chmod-normal
XATTR นโยบาย
แอ็ตทริบิวต์แบบขยายจะถูกมิเรอร์ตามค่าเริ่มต้น แม้ว่าจะไม่ใช่ระบบไฟล์พื้นฐานทั้งหมดก็ตาม
สนับสนุน xattrs
--xattr-ไม่มี, -o xattr-ไม่มี
ปิดใช้งานแอตทริบิวต์แบบขยายทั้งหมด การดำเนินการทั้งหมดจะส่งคืน 'การดำเนินการไม่
ได้รับการสนับสนุน'.
--xattr-ro, -o xattr-ro
ให้แอตทริบิวต์แบบขยายเป็นแบบอ่านอย่างเดียว
--xattr-rw, -o xattr-rw
ให้แอตทริบิวต์เพิ่มเติมเป็นแบบอ่าน-เขียน (ค่าเริ่มต้น) สิทธิ์ในการอ่าน/เขียน
ถูกตรวจสอบกับการอนุญาตไฟล์ (อาจแก้ไข) ภายในการเมานต์
อัตรา ขีด จำกัด
สามารถควบคุมการอ่านและเขียนผ่านจุดต่อเชื่อมได้ การควบคุมปริมาณทำได้โดยการนอนหลับ
ระยะเวลาที่ต้องการในคำขออ่านหรือเขียนแต่ละครั้ง การควบคุมปริมาณกำหนดหนึ่ง global
จำกัดผู้อ่าน/ผู้เขียนทั้งหมด เมื่อเทียบกับขีดจำกัดต่อกระบวนการหรือต่อผู้ใช้
ปัจจุบันการดำเนินการไม่ยุติธรรมทั้งหมด ดู ข้อบกพร่อง ด้านล่าง
--อัตราการอ่าน=N, -o อัตราการอ่าน =N
อนุญาตมากที่สุด N ไบต์ต่อวินาทีที่จะอ่าน N อาจมีข้อใดข้อหนึ่งต่อไปนี้
(1024-based) คำต่อท้าย: k, M, G, T.
--อัตราการเขียน=N, -o เขียนอัตรา=N
เช่นเดียวกับข้างบน แต่สำหรับการเขียน
เบ็ดเตล็ด OPTIONS
-ชม, --ช่วยด้วย
แสดงข้อความช่วยเหลือและออก
-วี --รุ่น
แสดงข้อมูลเวอร์ชันและการออก
-NS, --ไม่อนุญาต-อื่นๆ, -o ไม่อนุญาต-อื่นๆ
ไม่เพิ่ม -o Allow_อื่นๆ ไปที่ตัวเลือก FUSE สิ่งนี้ทำให้ภูเขาเป็น
เข้าถึงได้โดยผู้ใช้ปัจจุบันเท่านั้น
--realistic-การอนุญาต, -o สิทธิ์จริง
ซ่อนสิทธิ์ในการอ่าน/เขียน/ดำเนินการสำหรับไฟล์ที่มิเรอร์เมื่อเมานต์ไม่
มีการเข้าถึงแบบอ่าน/เขียน/ดำเนินการกับไฟล์พื้นฐาน ไร้ประโยชน์เมื่อติดตั้งเป็น
root เนื่องจาก root จะมีสิทธิ์เข้าถึงแบบเต็มเสมอ
(ก่อนหน้าเวอร์ชัน 1.10 ตัวเลือกนี้เป็นพฤติกรรมเริ่มต้น ฉันรู้สึกว่ามันละเมิด
หลักการของเซอร์ไพรส์น้อยที่สุดอย่างร้ายแรงพอที่จะรับประกันการหักหลังเล็กน้อย-
เข้ากันได้)
--ctime จาก mtime, -o ctime จาก mtime
จำได้ว่าไฟล์ unix มีการประทับเวลามาตรฐานสามแบบ: เวลา (เข้าถึงล่าสุดเช่นอ่าน
เวลา), เวลา (เวลาแก้ไขเนื้อหาล่าสุด) เวลา (เนื้อหาล่าสุดหรือข้อมูลเมตา
(ไอโหนด) เปลี่ยนเวลา)
ด้วยอ็อพชันนี้ ctime ของแต่ละไฟล์และไดเร็กทอรีจะถูกอ่านจาก mtime ใน
กล่าวคือ เฉพาะการแก้ไขเนื้อหา (ตรงข้ามกับการเปลี่ยนแปลงข้อมูลเมตา) จะเป็น
สะท้อนให้เห็นใน ctime ของไฟล์มิเรอร์ ctime ของไฟล์ต้นแบบจะยังคงเป็น
อัพเดทตามปกติ
--ซ่อนฮาร์ดลิงก์ -o ซ่อนฮาร์ดลิงค์
แสดงจำนวนฮาร์ดลิงก์ของไฟล์ทั้งหมดเป็น 1
--มัลติเธรด -o มัลติเธรด
รัน bindfs ในโหมดมัลติเธรด ในขณะที่ bindfs ได้รับการออกแบบให้เป็นอย่างอื่น thread-
ปลอดภัยขณะนี้มีสภาพการแข่งขันที่อาจก่อให้เกิดความเสี่ยงด้านความปลอดภัยสำหรับบางคน
กรณีการใช้งาน ดู ข้อบกพร่อง ด้านล่าง
ฟิวส์ OPTIONS
-o ตัวเลือก
ตัวเลือกฟิวส์
-NS, -o ro
ทำให้การเมานท์เป็นแบบอ่านอย่างเดียวอย่างเคร่งครัด สิ่งนี้ยังป้องกันไม่ให้รูทเขียนถึงมัน ถ้า
นี่คือทั้งหมดที่คุณต้องการ จากนั้น (ตั้งแต่ Linux 2.6.26) คุณจะได้รับการเมานต์ที่มีประสิทธิภาพมากขึ้น
กับ ภูเขา --ผูก แล้วก็ ภูเขา -o เมานต์,ro.
-NS, -o การแก้ปัญหา
เปิดใช้งานการดีบักเอาต์พุต (หมายถึง -f)
-f การทำงานเบื้องหน้า
อนุญาต คุณสมบัติ
เทศกาล -p ตัวเลือกใช้รายการที่คั่นด้วยเครื่องหมายจุลภาคหรือโคลอนของการอนุญาตตัวเลขฐานแปดอย่างใดอย่างหนึ่ง
บิตหรือการแสดงสัญลักษณ์ของการดำเนินการบิตการอนุญาต สัญลักษณ์
การเป็นตัวแทนอยู่บนพื้นฐานของ chmod(1) คำสั่ง setuid, setgid และบิตเหนียว
จะถูกละเว้น
โปรแกรมนี้ขยายการแสดงสัญลักษณ์ chmod ด้วยตัวถูกดำเนินการต่อไปนี้:
`D' (ด้านขวามือ)
ทำงานเหมือน X แต่ใช้กับไดเร็กทอรีเท่านั้น (ไม่ใช่กับไฟล์เรียกทำงาน)
`d' และ `f' (ด้านซ้ายมือ)
ทำให้คำสั่งนี้ใช้กับไดเร็กทอรี (d) หรือไฟล์ (f) เท่านั้น
เช่น จีดี-ดับเบิลยู จะลบกลุ่มการเขียนบิตออกจากไดเร็กทอรีทั้งหมด
`u', `g', `o' (ด้านขวามือ)
ใช้ผู้ใช้ (u) กลุ่ม (g) หรืออื่น ๆ (o) บิตการอนุญาตของ
ไฟล์ต้นฉบับ
เช่น ก=คุณ จะคัดลอกบิตการอนุญาตของผู้ใช้ไปยังกลุ่ม
อั๊ก+โอ จะเพิ่มการอนุญาตของผู้อื่นให้กับเจ้าของและกลุ่ม
ตัวอย่าง
หรือ-rwx ลบบิตการอนุญาตทั้งหมดออกจากผู้อื่น
ก.=rD อนุญาตให้กลุ่มอ่านไฟล์ทั้งหมดและป้อนไดเร็กทอรีทั้งหมด แต่ไม่มีอย่างอื่น
0644,ก+เอ็กซ์
ตั้งค่าบิตการอนุญาตเป็น 0644 และเพิ่มบิตดำเนินการสำหรับทุกคน
ไดเร็กทอรีและไฟล์ปฏิบัติการ
og-x:og+rD:u=rwX:g+rw
ลบรันบิตสำหรับผู้อื่นและกลุ่ม เพิ่มอ่านและเรียกใช้ไดเร็กทอรีสำหรับ
อื่นๆ และกลุ่ม กำหนดสิทธิ์ผู้ใช้ในการอ่าน เขียน และดำเนินการ
ไดเร็กทอรี/ปฏิบัติการ เพิ่มการอ่านและเขียนสำหรับกลุ่ม
ตัวอย่าง
ผูกมัด -u www -g nogroup -p 0000,u=rD ~/เว็บไซต์ของฉัน ~/public_html/mysite
เผยแพร่เว็บไซต์ใน public_html เพื่อให้เฉพาะผู้ใช้ 'www' เท่านั้นที่สามารถอ่านไซต์ได้
ผูกมัด -M ฟู,บาร์,1007,@mygroup -p 0600,u+X dir ม
ให้สิทธิ์เข้าถึง 'foo', 'bar' ผู้ใช้ที่มี UID 1007 รวมถึงทุกคนใน
กลุ่ม 'mygroup' ตั้งค่าบิตการอนุญาตเป็น 0600 จึงให้ผู้ใช้ที่ระบุ
การเข้าถึงแบบอ่าน/เขียน และเพิ่มบิตรันผู้ใช้สำหรับไดเร็กทอรีและไฟล์เรียกทำงาน
ผูกมัด -ono-allow-other,perms=aw ซอมดีร์ ซอมดีร์
ทำให้ไดเร็กทอรีเป็นแบบอ่านอย่างเดียวและเข้าถึงได้โดยผู้ใช้ปัจจุบันเท่านั้น
/home/bob/แชร์ /var/www/shared/bob ฟิวส์.bindfs สิทธิ์=0000:u+rD 0 0
ตัวอย่าง / etc / fstab รายการ. โปรดทราบว่าต้องใช้โคลอนเพื่อแยกอาร์กิวเมนต์
ในการอนุญาต เนื่องจากเครื่องหมายจุลภาคเป็นตัวคั่นตัวเลือกใน / etc / fstab.
bindfs#/home/bob/แชร์ /var/www/shared/bob ฟิวส์ สิทธิ์=0000:u+rD 0 0
ระบบที่เก่ากว่าอาจต้องใช้ไวยากรณ์ fstab ที่เลิกใช้แล้วนี้
หมายเหตุ
บิต Setuid และ setgid ไม่มีผลภายในการเมานท์ นี่คือความปลอดภัยที่จำเป็น
คุณสมบัติของฟิวส์
MacFuse แคชเนื้อหาไฟล์ตามค่าเริ่มต้น ซึ่งหมายความว่าการเปลี่ยนแปลงในไฟล์ต้นฉบับไม่ใช่
มองเห็นได้ทันทีใต้จุดต่อเชื่อม -o nolocalaches สามารถใช้เพื่อปิดการใช้งาน
แคช
เมื่อใช้ --กระจก[-เท่านั้น] @บางกรุ๊ป, bindfs จะไม่เห็นการเปลี่ยนแปลงสมาชิกของกลุ่ม
รายการ. ส่ง bindfs a ซิกุสร์1 สัญญาณจะทำให้อ่านฐานข้อมูลผู้ใช้ซ้ำ
ใช้ bindfs ออนไลน์โดยใช้บริการ onworks.net