ฟรีโฮสติ้งออนไลน์สำหรับเวิร์กสเตชัน

<ก่อนหน้านี้ | Contents | ถัดไป>

3.4.2. เครื่องมือ


3.4.2.1. คำสั่ง chmod


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


ตัวอย่างด้านล่างใช้ตัวเลือกตัวเลขและตัวอักษรเพื่อแก้ปัญหาที่มักเกิดขึ้นกับผู้ใช้ใหม่:


asim:~> ./สวัสดี

bash: ./hello: ล่ามที่ไม่ดี: ปฏิเสธการอนุญาต


asim:~> สวัสดีแมว

#! / bin / ทุบตี

เสียงสะท้อน "สวัสดีชาวโลก"


asim:~> ls -l สวัสดี

-rw-rw-r-- 1 asim asim 32 ม.ค. 15 16:29 สวัสดี asim:~> chmod u+x สวัสดี

asim:~> ./สวัสดี

สวัสดีชาวโลก


asim:~> ls -l สวัสดี

-rwxrw-r-- 1 asim asim 32 ม.ค. 15 16:29 สวัสดี*

asim:~> ./สวัสดี

bash: ./hello: ล่ามที่ไม่ดี: ปฏิเสธการอนุญาต


asim:~> สวัสดีแมว

#! / bin / ทุบตี

เสียงสะท้อน "สวัสดีชาวโลก"


asim:~> ls -l สวัสดี

-rw-rw-r-- 1 asim asim 32 ม.ค. 15 16:29 สวัสดี asim:~> chmod u+x สวัสดี

asim:~> ./สวัสดี

สวัสดีชาวโลก


asim:~> ls -l สวัสดี

-rwxrw-r-- 1 asim asim 32 ม.ค. 15 16:29 สวัสดี*

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


asim:~> chmod u+rwx,go-rwx สวัสดี


asim:~> ls -l

สวัสดี

-rwx------

1 อาซิม

Asim

32 ม.ค. 15 16:29 น. สวัสดี*

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


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


ตารางที่ 3-9. การป้องกันไฟล์ด้วย chmod


คำสั่ง

ความหมาย

chmod 400 ไฟล์

เพื่อป้องกันไฟล์จากการเขียนทับโดยไม่ได้ตั้งใจ

chmod 500

ไดเรกทอรี

เพื่อป้องกันตัวเองจากการลบ เปลี่ยนชื่อ หรือย้ายไฟล์จากไดเร็กทอรีนี้โดยไม่ได้ตั้งใจ


chmod 600 ไฟล์

ไฟล์ส่วนตัวสามารถเปลี่ยนได้โดยผู้ใช้ที่ป้อนคำสั่งนี้เท่านั้น

chmod 644 ไฟล์

ไฟล์ที่อ่านได้แบบสาธารณะซึ่งมีเพียงผู้ใช้ที่ออกเท่านั้นที่สามารถเปลี่ยนแปลงได้

chmod 660 ไฟล์

ผู้ใช้ที่อยู่ในกลุ่มของคุณสามารถเปลี่ยนไฟล์นี้ได้ คนอื่นไม่มีสิทธิ์เข้าถึงเลย

chmod 700 ไฟล์

ปกป้องไฟล์จากการเข้าถึงจากผู้ใช้รายอื่น ในขณะที่ผู้ใช้ที่ออกยังคงมีสิทธิ์เข้าถึงแบบเต็ม

chmod 755

ไดเรกทอรี

สำหรับไฟล์ที่ผู้อื่นควรอ่านและเรียกใช้งานได้ แต่เฉพาะผู้ใช้ที่ออกเท่านั้นเปลี่ยนแปลงได้

chmod 775 ไฟล์

โหมดแชร์ไฟล์มาตรฐานสำหรับกลุ่ม

chmod 777 ไฟล์

ทุกคนสามารถทำทุกอย่างกับไฟล์นี้ได้

หากคุณป้อนตัวเลขที่มีน้อยกว่าสามหลักเป็นอาร์กิวเมนต์ถึง chmodอักขระที่ละเว้นจะถูกแทนที่ด้วยศูนย์โดยเริ่มจากด้านซ้าย จริงๆ แล้วมีตัวเลขที่สี่บนระบบ Linux ที่นำหน้าสามตัวแรกและตั้งค่าโหมดการเข้าถึงพิเศษ ทุกอย่างเกี่ยวกับสิ่งเหล่านี้และอื่น ๆ อีกมากมายอยู่ในหน้าข้อมูล


3.4.2.2. เข้าสู่ระบบไปยังกลุ่มอื่น


เมื่อคุณพิมพ์ id บนบรรทัดคำสั่ง คุณจะได้รับรายชื่อกลุ่มทั้งหมดที่คุณสามารถอยู่ได้ นำหน้าด้วยชื่อผู้ใช้และ ID ของคุณและชื่อกลุ่มและ ID ที่คุณเชื่อมต่ออยู่ในปัจจุบัน อย่างไรก็ตาม สำหรับระบบ Linux หลายระบบ คุณสามารถเข้าสู่ระบบได้ครั้งละหนึ่งกลุ่มเท่านั้น โดยค่าเริ่มต้น แอคทีฟนี้หรือ กลุ่มหลัก คือสิ่งที่คุณได้รับมอบหมายจาก / etc / passwd ไฟล์. ฟิลด์ที่สี่ของไฟล์นี้มี ID กลุ่มหลักของผู้ใช้ ซึ่งค้นหาใน / etc / group ไฟล์. ตัวอย่าง:


asim:~> id

uid=501(asim) gid=501(asim) groups=100(users),501(asim),3400(web)


asim:~> grep Asim / etc / passwd

asim:x:501:501:Asim เอลบารากา:/home/asim:/bin/bash


asim:~> grep 501 / etc / group

ซิม:x:501:

asim:~> id

uid=501(asim) gid=501(asim) groups=100(users),501(asim),3400(web)


asim:~> grep Asim / etc / passwd

asim:x:501:501:Asim เอลบารากา:/home/asim:/bin/bash


asim:~> grep 501 / etc / group

ซิม:x:501:

ช่องที่สี่ในบรรทัดจาก / etc / passwd มีค่า "501" ซึ่งแสดงถึงกลุ่ม Asim ในตัวอย่างข้างต้น จาก / etc / group เราจะได้ชื่อที่ตรงกับ ID กลุ่มนี้ เมื่อเริ่มเชื่อมต่อกับระบบนี้เป็นกลุ่มที่ Asim จะเป็นของ


โครงร่างกลุ่มส่วนตัวของผู้ใช้

เพื่อให้มีความยืดหยุ่นมากขึ้น ระบบ Linux ส่วนใหญ่ปฏิบัติตามสิ่งที่เรียกว่า โครงการกลุ่มส่วนตัวของผู้ใช้ซึ่งกำหนดผู้ใช้แต่ละรายให้กับกลุ่มของตนเองเป็นหลัก กลุ่มนี้เป็นกลุ่มที่มีเฉพาะผู้ใช้รายนี้เท่านั้น จึงเรียกว่า "กลุ่มส่วนตัว" โดยปกติกลุ่มนี้จะมีชื่อเดียวกับชื่อล็อกอินของผู้ใช้ ซึ่งอาจทำให้สับสนเล็กน้อย

นอกจากกลุ่มส่วนตัวของตัวเองแล้ว user Asim อยู่ในกลุ่มก็ได้ ผู้ใช้ และ เว็บ. เนื่องจากเป็นกลุ่มรองสำหรับผู้ใช้รายนี้ เขาจะต้องใช้ ใหม่ เพื่อเข้าสู่ระบบในกลุ่มใด ๆ เหล่านี้ (ใช้ gpasswd เพื่อตั้งรหัสผ่านกลุ่มก่อน) ในตัวอย่าง Asim จำเป็นต้องสร้างไฟล์ที่เป็นของกลุ่ม เว็บ.


asim:/var/www/html> ใหม่ เว็บ


asim:/var/www/html> id

uid=501(asim) gid=3400(web) groups=100(users),501(asim),3400(web)

asim:/var/www/html> ใหม่ เว็บ


asim:/var/www/html> id

uid=501(asim) gid=3400(web) groups=100(users),501(asim),3400(web)

เมื่อ Asim สร้างไฟล์ใหม่ตอนนี้จะอยู่ในความเป็นเจ้าของกลุ่มของกลุ่ม เว็บ แทนที่จะเป็นเจ้าของโดยกลุ่ม Asim:



asim:/var/www/html> ทดสอบการสัมผัส


asim:/var/www/html> ls -l ทดสอบ

-rw-rw-r-- 1 เว็บ asim 0 มิ.ย. 10 15:38 ทดสอบ

asim:/var/www/html> ทดสอบการสัมผัส


asim:/var/www/html> ls -l ทดสอบ

-rw-rw-r-- 1 เว็บ asim 0 มิ.ย. 10 15:38 ทดสอบ

การเข้าสู่ระบบกลุ่มใหม่ทำให้ไม่ต้องใช้งาน chown (ดูหัวข้อ 3.4.2.4) หรือโทรหาผู้ดูแลระบบของคุณเพื่อเปลี่ยนความเป็นเจ้าของให้กับคุณ


ดู manpage สำหรับ ใหม่ เพื่อสอบถามรายละเอียดเพิ่มเติมได้ค่ะ


3.4.2.3. ไฟล์มาสก์


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


เบิร์ต:~> อูมาสก์

0002

เบิร์ต:~> อูมาสก์

0002

แทนที่จะเพิ่มค่าสัญลักษณ์ให้กัน เช่น with chmodสำหรับการคำนวณสิทธิ์ในไฟล์ใหม่ จะต้องหักออกจากสิทธิ์การเข้าถึงทั้งหมดที่เป็นไปได้ อย่างไรก็ตาม ในตัวอย่างข้างต้น เราเห็นค่า 4 ค่าที่แสดง แต่มีเพียง 3 หมวดหมู่สิทธิ์เท่านั้น: ผู้ใช้งาน, กลุ่ม และ อื่น ๆ. ศูนย์แรกเป็นส่วนหนึ่งของการตั้งค่าแอตทริบิวต์ไฟล์พิเศษ ซึ่งเราจะพูดถึงในส่วน 3.4.2.4 และส่วนที่ 4.1.6 อาจเป็นไปได้ว่าศูนย์แรกนี้ไม่ปรากฏบนระบบของคุณเมื่อเข้าสู่ อูมาสก์ คำสั่งและคุณจะเห็นเพียงตัวเลข 3 ตัวที่แสดงถึงรูปแบบการสร้างไฟล์เริ่มต้น


ระบบที่เหมือน UNIX แต่ละระบบมีฟังก์ชันระบบสำหรับสร้างไฟล์ใหม่ ซึ่งเรียกว่าทุกครั้งที่ผู้ใช้ใช้โปรแกรมที่สร้างไฟล์ใหม่ เช่น เมื่อดาวน์โหลดไฟล์จากอินเทอร์เน็ต เมื่อบันทึกเอกสารข้อความใหม่ เป็นต้น ฟังก์ชันนี้สร้างทั้งไฟล์ใหม่และไดเร็กทอรีใหม่ ทุกคนจะได้รับสิทธิ์อ่าน เขียน และดำเนินการอย่างเต็มรูปแบบเมื่อสร้างไดเร็กทอรีใหม่ เมื่อสร้างไฟล์ใหม่ ฟังก์ชันนี้จะให้สิทธิ์ในการอ่านและเขียนสำหรับทุกคน แต่ตั้งค่าการอนุญาตดำเนินการเป็น none สำหรับหมวดหมู่ผู้ใช้ทั้งหมด ก่อนใช้มาสก์ ไดเร็กทอรีมีสิทธิ์ 777 or rwxrwxrwx, ไฟล์ธรรมดา 666 or rw-rw-rw-.


การขอ อูมาสก์ ค่าจะถูกลบออกจากการอนุญาตเริ่มต้นเหล่านี้หลังจากที่ฟังก์ชันได้สร้างไฟล์หรือไดเร็กทอรีใหม่ ดังนั้นไดเร็กทอรีจะมีสิทธิ์ของ 775 โดยค่าเริ่มต้น file 664, หากค่ามาสก์คือ (0) 002. นี่แสดงให้เห็นในตัวอย่างด้านล่าง:


เบิร์ต:~> mkdir ใหม่


เบิร์ต:~> ls -ld ใหม่ไดร์

drwxrwxr-x 2 เบิร์ต เบิร์ต

4096 28 ก.พ. 13:45 น. newdir/

เบิร์ต:~> mkdir ใหม่


เบิร์ต:~> ls -ld ใหม่ไดร์

drwxrwxr-x 2 เบิร์ต เบิร์ต


เบิร์ต:~> แตะไฟล์ใหม่


เบิร์ต:~> ls -l ไฟล์ใหม่

-rw-rw-r-- 1 เบิร์ต เบิร์ต

0 ก.พ. 28 13:52 น. newfile

เบิร์ต:~> แตะไฟล์ใหม่


เบิร์ต:~> ls -l ไฟล์ใหม่

-rw-rw-r-- 1 เบิร์ต เบิร์ต


ไฟล์กับไดเร็กทอรี

ไดเร็กทอรีได้รับสิทธิ์มากขึ้นตามค่าเริ่มต้น: ไดเร็กทอรีจะมี .เสมอ ดำเนินการ การอนุญาต. ถ้าไม่มีสิ่งนั้นก็จะไม่สามารถเข้าถึงได้ ลองใช้วิธีนี้โดย chmodding ไดเร็กทอรี 644!

หากคุณเข้าสู่ระบบในกลุ่มอื่นโดยใช้ ใหม่ คำสั่ง หน้ากากยังคงไม่เปลี่ยนแปลง ดังนั้น หากตั้งค่าเป็น 002, ไฟล์และไดเร็กทอรีที่คุณสร้างในขณะที่อยู่ในกลุ่มใหม่จะสามารถเข้าถึงได้โดยสมาชิกคนอื่นๆ ของกลุ่มนั้น ไม่ต้องใช้ chmod.


การขอ ราก ผู้ใช้มักจะมีสิทธิ์สร้างไฟล์เริ่มต้นที่เข้มงวดกว่า:


[root@estoban root]# umask 022

[root@estoban root]# umask 022

ค่าเริ่มต้นเหล่านี้ถูกตั้งค่าทั้งระบบในไฟล์การกำหนดค่าทรัพยากรของเชลล์ เช่น / etc / bashrc or

/ etc / โปรไฟล์. คุณสามารถเปลี่ยนได้ในไฟล์การกำหนดค่าเชลล์ของคุณเอง ดูบทที่ 7 เกี่ยวกับการกำหนดสภาพแวดล้อมเชลล์ของคุณเอง


3.4.2.4. การเปลี่ยนผู้ใช้และความเป็นเจ้าของกลุ่ม


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


การขอ chown คำสั่งใช้เปลี่ยนทั้งผู้ใช้และกลุ่มเจ้าของไฟล์ในขณะที่ ซีจีอาร์พี เปลี่ยนความเป็นเจ้าของกลุ่มเท่านั้น แน่นอนว่าระบบจะตรวจสอบว่าผู้ใช้ที่ออกคำสั่งเหล่านี้มีสิทธิ์เพียงพอในไฟล์ที่เธอต้องการเปลี่ยนแปลงหรือไม่


หากต้องการเปลี่ยนเฉพาะความเป็นเจ้าของไฟล์ของผู้ใช้ ให้ใช้ไวยากรณ์นี้:


chown ผู้ใช้ใหม่ ไฟล์


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


แจ็กกี้:~> id

uid=1304(jacky) gid=(1304) กลุ่ม=1304(jacky),2034(pproject)


แจ็กกี้:~> ls -l my_report

-rw-rw-r-- 1 โครงการแจ็คกี้ 29387 15 ม.ค. 09:34 my_report jacky:~> ชอน แจ็กกี้: my_report

แจ็กกี้:~> chmod หรือ my_report


แจ็กกี้:~> ls -l my_report

-rw-rw---- 1 แจ็คกี้ แจ็คกี้ 29387 15 ม.ค. 09:34 my_report

แจ็กกี้:~> id

uid=1304(jacky) gid=(1304) กลุ่ม=1304(jacky),2034(pproject)


แจ็กกี้:~> ls -l my_report

-rw-rw-r-- 1 โครงการแจ็คกี้ 29387 15 ม.ค. 09:34 my_report jacky:~> ชอน แจ็กกี้: my_report

แจ็กกี้:~> chmod หรือ my_report


แจ็กกี้:~> ls -l my_report

-rw-rw---- 1 แจ็คกี้ แจ็คกี้ 29387 15 ม.ค. 09:34 my_report

If jacky ต้องการแชร์ไฟล์นี้ โดยไม่ต้องให้ทุกคนอนุญาติให้เขียน เขาก็สามารถใช้

คำสั่ง chgrp:


แจ็กกี้:~> ls -l รายงาน-20020115.xls

-rw-rw---- 1 แจ็คกี้ แจ็คกี้ 45635 15 ม.ค. 09:35 น. รายงาน-20020115.xls แจ็คกี้:~> รายงานโครงการ chgrp-20020115.xls

แจ็กกี้:~> chmod o= รายงาน-20020115.xls


แจ็กกี้:~> ls -l รายงาน-20020115.xls

-rw-rw ---- 1 โครงการแจ็คกี้ 45635 15 ม.ค. 09:35 รายงาน-20020115.xls

แจ็กกี้:~> ls -l รายงาน-20020115.xls

-rw-rw---- 1 แจ็คกี้ แจ็คกี้ 45635 15 ม.ค. 09:35 น. รายงาน-20020115.xls แจ็คกี้:~> รายงานโครงการ chgrp-20020115.xls

แจ็กกี้:~> chmod o= รายงาน-20020115.xls


แจ็กกี้:~> ls -l รายงาน-20020115.xls

-rw-rw ---- 1 โครงการแจ็คกี้ 45635 15 ม.ค. 09:35 รายงาน-20020115.xls

ทางนี้ผู้ใช้ในกลุ่ม โครงการ จะสามารถทำงานในไฟล์นี้ได้ ผู้ใช้ที่ไม่ได้อยู่ในกลุ่มนี้ไม่มีธุรกิจใดเลย


ทั้งสอง chown และ ซีจีอาร์พี สามารถใช้เพื่อเปลี่ยนความเป็นเจ้าของแบบเรียกซ้ำได้โดยใช้ -R ตัวเลือก. ในกรณีดังกล่าว ไฟล์และไดเร็กทอรีย่อยทั้งหมดของไดเร็กทอรีที่กำหนดจะเป็นของผู้ใช้และ/หรือกลุ่มที่กำหนด


ข้อจำกัด

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


3.4.2.5. โหมดพิเศษ


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


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

/ var / tmpที่ต้องสามารถเข้าถึงได้สำหรับทุกคน แต่ในกรณีที่ผู้ใช้ไม่สมควรจะเปลี่ยนหรือลบข้อมูลของกันและกัน บิตเหนียวถูกระบุด้วย a t ที่ส่วนท้ายของฟิลด์การอนุญาตไฟล์:


มาร์ค:~> ls -ld /var/tmp

drwxrwxrwt 19 รูท รูท

8192 16 ม.ค. 10:37 /var/tmp/

มาร์ค:~> ls -ld /var/tmp

drwxrwxrwt 19 รูท รูท

บิตเหนียวถูกตั้งค่าโดยใช้คำสั่ง chmod โอ+ที ไดเรกทอรี. ต้นกำเนิดทางประวัติศาสตร์ของ "t" อยู่ใน UNIX' บันทึกการเข้าถึงข้อความ ลักษณะ

SUID (ตั้งค่า ID ผู้ใช้) และ SGID (ตั้งค่า ID กลุ่ม): แทนด้วยอักขระ s ในช่องการอนุญาตผู้ใช้หรือกลุ่ม เมื่อตั้งค่าโหมดนี้บนไฟล์เรียกทำงาน โหมดนี้จะทำงานโดยให้สิทธิ์ผู้ใช้และกลุ่มในไฟล์ แทนที่จะใช้โหมดที่ผู้ใช้ออกคำสั่ง ซึ่งจะทำให้เข้าถึงทรัพยากรระบบได้ เราจะหารือเรื่องนี้เพิ่มเติมในบทที่ 4

• SGID (ตั้งค่า ID กลุ่ม) บนไดเร็กทอรี: ในกรณีพิเศษนี้ ทุกไฟล์ที่สร้างในไดเร็กทอรีจะมีเจ้าของกลุ่มเดียวกับไดเร็กทอรีเอง วิธีนี้ทำให้ผู้ใช้ไม่ต้องกังวลกับการเป็นเจ้าของไฟล์เมื่อแชร์ไดเรกทอรี:


มีมี่:~> ls -ld /opt/docs

drwxrws--- ผู้ใช้รูท 4 คน

4096 25 ก.ค. 2001 เอกสาร/

มีมี่:~> ls -ld /opt/docs

drwxrws--- ผู้ใช้รูท 4 คน


มีมี่:~> ls -l /opt/docs

-rw-rw ---- 1 ผู้ใช้ mimi

345672 30 ส.ค. 2001-Council.doc

มีมี่:~> ls -l /opt/docs

-rw-rw ---- 1 ผู้ใช้ mimi

นี่เป็นวิธีมาตรฐานในการแชร์ไฟล์ใน UNIX


ไฟล์ที่มีอยู่จะไม่เปลี่ยนแปลง!

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



ระบบปฏิบัติการคลาวด์คอมพิวติ้งยอดนิยมที่ OnWorks: