ดังนั้นคุณจึงพบรสชาติของ Linux ที่คุณชอบ แต่ตอนนี้คุณสับสนเพราะคุณไม่มีเงื่อนงำเกี่ยวกับคำสั่งเทอร์มินัลและการอนุญาตไฟล์ Linux ใช่ไหม
หรือบางทีคุณอาจมีเว็บไซต์ที่โฮสต์อยู่บนเซิร์ฟเวอร์ Linux และคุณประสบปัญหาการอนุญาตไฟล์บางอย่างที่สามารถแก้ไขได้ด้วยเวทย์มนตร์บรรทัดคำสั่งบางอย่างเท่านั้น
ไม่ว่าหนึ่งใน คำสั่ง Linux ที่สำคัญที่สุดในการเรียนรู้ เป็นคำสั่งเล็กๆแต่ทรงพลังที่เรียกว่า chmod . แต่ก่อนที่เราจะอธิบายว่าคำสั่งนี้ทำอะไร เราต้องเข้าใจเล็กน้อยก่อนว่า Linux จัดการกับความปลอดภัยของไฟล์อย่างไร
พื้นฐานของการอนุญาตไฟล์ Linux
ระบบปฏิบัติการ Linux เป็นระบบที่เหมือน Unix ( ทำความเข้าใจ Linux กับ Unix ) และระบบที่เหมือน Unix เข้าถึงการอนุญาตไฟล์ดังนี้:
ทุกไฟล์มี เจ้าของ ซึ่งกำหนด 'คลาสผู้ใช้' ของไฟล์ ทุกไฟล์ยังมี a กลุ่ม ซึ่งกำหนด 'คลาสกลุ่ม' ของไฟล์ ผู้ใช้ระบบคนใดที่ไม่ใช่เจ้าของและไม่ได้อยู่ในกลุ่มเดียวกันถูกกำหนดให้เป็น คนอื่น .
ไฟล์ทั้งหมดบนระบบที่เหมือน Unix มีสิทธิ์ที่กำหนดให้กับทั้งสามคลาส และสิ่งเหล่านี้กำหนดว่าคลาสดังกล่าวสามารถดำเนินการใดได้บ้างสำหรับไฟล์ที่กำหนด
การดำเนินการสามอย่างที่มีอยู่ในระบบที่เหมือน Unix คือ: อ่าน (ความสามารถในการเปิดและดูเนื้อหาของไฟล์) เขียน (ความสามารถในการเปิดและแก้ไขเนื้อหาของไฟล์) และ ดำเนินการ (ความสามารถในการเรียกใช้ไฟล์เป็นโปรแกรมปฏิบัติการ)
กล่าวคือ สิทธิ์ของไฟล์จะกำหนดว่า:
- เจ้าของสามารถอ่าน เขียน และรันไฟล์ได้
- กลุ่มสามารถอ่าน เขียน และรันไฟล์ได้
- คนอื่นสามารถอ่าน เขียน และเรียกใช้ไฟล์ได้
การอนุญาตไฟล์ Linux สามารถแสดงได้สองรูปแบบ
รูปแบบแรกเรียกว่า สัญกรณ์สัญลักษณ์ ซึ่งเป็นสตริงที่มีอักขระ 10 ตัว: อักขระหนึ่งตัวที่แสดงถึงประเภทไฟล์ ตามด้วยอักขระเก้าตัวที่แสดงถึงสิทธิ์ในการอ่าน (r) การเขียน (w) และการดำเนินการ (x) ของไฟล์ ตามลำดับเจ้าของ กลุ่ม และอื่นๆ หากไม่อนุญาต จะใช้เครื่องหมายขีด (-)
ตัวอย่างเช่น:
-rwxr-xr--
ซึ่งหมายความว่าเป็นไฟล์ปกติที่มีสิทธิ์ในการอ่าน เขียน และดำเนินการสำหรับเจ้าของ อ่านและดำเนินการสิทธิ์สำหรับกลุ่ม และสิทธิ์ในการอ่านสำหรับคนอื่นๆ เท่านั้น
รูปแบบที่สองเรียกว่า สัญกรณ์ตัวเลข ซึ่งเป็นสตริงตัวเลขสามหลักที่เป็นตัวแทนของผู้ใช้ กลุ่ม และสิทธิ์อื่นๆ ตามลำดับ ตัวเลขแต่ละตัวสามารถอยู่ในช่วงตั้งแต่ 0 ถึง 7 และค่าของตัวเลขแต่ละหลักได้มาจากการรวมการอนุญาตของคลาส:
- 0 หมายความว่าไม่ได้รับอนุญาต
- +1 ถ้าคลาสสามารถรันไฟล์ได้
- +2 ถ้าคลาสสามารถเขียนไปยังไฟล์ได้
- +4 ถ้าชั้นเรียนสามารถอ่านไฟล์ได้
กล่าวอีกนัยหนึ่งความหมายของค่าตัวเลขแต่ละหลักลงท้ายด้วย:
- 0: ไม่อนุญาต
- 1: ดำเนินการ
- 2: เขียน
- 3: เขียนและดำเนินการ
- 4: อ่าน
- 5: อ่านและดำเนินการ
- 6: อ่านเขียน
- 7: อ่าน เขียน และดำเนินการ
ดังนั้นตัวอย่างข้างต้น (
-rwxr-xr--
) จะเป็น 754 ในรูปแบบตัวเลข
นั่นคือการอนุญาตไฟล์ Linux โดยสรุป
Chmod คืออะไร?
บนระบบที่เหมือนยูนิกซ์ chmod เป็นคำสั่งระดับระบบที่ย่อมาจาก 'change mode' และอนุญาตให้คุณเปลี่ยนการตั้งค่าการอนุญาตของไฟล์ได้ด้วยตนเอง
วิธีทำทางลัดบน iphone
เพื่อไม่ให้สับสนกับ chown ซึ่งเป็นคำสั่งระดับระบบอื่นบนระบบที่คล้าย Unix ที่ย่อมาจาก 'change owner' และให้คุณกำหนดความเป็นเจ้าของไฟล์ให้กับผู้ใช้รายอื่น หรือ chgrp ซึ่งย่อมาจาก 'change group' และกำหนดไฟล์ให้กับกลุ่มอื่น สิ่งเหล่านี้เป็นสิ่งสำคัญที่ต้องรู้ แต่ไม่ได้ใช้กันทั่วไปเหมือน chmod
Chmod 644 หมายถึงอะไร?
การตั้งค่าการอนุญาตของไฟล์เป็น 644 ทำให้มีเพียงเจ้าของเท่านั้นที่สามารถเข้าถึงและแก้ไขไฟล์ได้ตามต้องการ ในขณะที่คนอื่นๆ สามารถเข้าถึงได้โดยไม่ต้องแก้ไข และไม่มีใครสามารถดำเนินการไฟล์ได้ แม้กระทั่งเจ้าของ นี่เป็นการตั้งค่าที่เหมาะสมที่สุดสำหรับไฟล์ที่เข้าถึงได้แบบสาธารณะ เนื่องจากมีความยืดหยุ่นและมีความปลอดภัย
windows ตรวจไม่พบการตั้งค่าพร็อกซีของเครือข่ายนี้โดยอัตโนมัติ google chrome
Chmod 755 หมายถึงอะไร?
การตั้งค่าการอนุญาตของไฟล์เป็น 755 โดยพื้นฐานแล้วเหมือนกับ 644 ยกเว้นว่าทุกคนมีสิทธิ์ดำเนินการด้วย ส่วนใหญ่จะใช้สำหรับไดเร็กทอรีที่เข้าถึงได้แบบสาธารณะเนื่องจากจำเป็นต้องได้รับอนุญาตในการดำเนินการเพื่อเปลี่ยนเป็นไดเร็กทอรี
Chmod 555 หมายถึงอะไร?
การตั้งค่าการอนุญาตของไฟล์เป็น 555 ทำให้ทุกคนไม่สามารถแก้ไขไฟล์ได้เลย ยกเว้น superuser ของระบบ ( เรียนรู้เพิ่มเติมเกี่ยวกับ Linux superuser ) ซึ่งไม่ได้ใช้บ่อยเท่า 644 แต่สิ่งสำคัญคือต้องทราบ เนื่องจากการตั้งค่าแบบอ่านอย่างเดียวจะป้องกันการเปลี่ยนแปลงโดยไม่ได้ตั้งใจและ/หรือการปลอมแปลง
Chmod 777 หมายถึงอะไร?
การตั้งค่าการอนุญาตของไฟล์เป็น 777 ทำให้ทุกคนสามารถทำทุกอย่างที่ต้องการกับไฟล์ได้ นี่เป็นความเสี่ยงด้านความปลอดภัยอย่างมาก โดยเฉพาะบนเว็บเซิร์ฟเวอร์! แท้จริงแล้วทุกคนสามารถเข้าถึงไฟล์ แก้ไขได้ตามต้องการ และดำเนินการบนระบบ คุณสามารถจินตนาการถึงความเสียหายที่อาจเกิดขึ้นได้หากผู้ใช้อันธพาลได้รับมัน
วิธีใช้ Chmod บน Linux
คำสั่ง chmod มีรูปแบบอย่างง่าย:
chmod [permissions] [file]
สามารถให้สิทธิ์ในรูปแบบตัวเลข ซึ่งเป็นรูปแบบที่ดีที่สุดที่จะใช้เมื่อคุณต้องการกำหนดสิทธิ์เฉพาะสำหรับชั้นเรียนทั้งหมด:
chmod 644 example.txt
คุณยังสามารถให้สิทธิ์ในรูปแบบสัญลักษณ์ ซึ่งมีประโยชน์เมื่อคุณต้องการแก้ไขการอนุญาตของคลาสเฉพาะเท่านั้น ตัวอย่างเช่น:
chmod u=rwx example.txt
chmod g=rw example.txt
chmod o=rw example.txt
คุณสามารถแก้ไขการอนุญาตสำหรับหลายคลาส เช่น ตัวอย่างนี้ซึ่งกำหนดให้เจ้าของอ่าน/เขียน/ดำเนินการ แต่ให้กลุ่มและผู้อื่นอ่าน/ดำเนินการ:
chmod u=rwx,g=rw,o=rw example.txt
เมื่อกำหนดสิทธิ์เดียวกันให้กับหลายคลาส คุณสามารถรวมเข้าด้วยกันได้:
chmod u=rwx,go=rw example.txt
แต่ความสวยงามของการใช้สัญกรณ์สัญลักษณ์จะส่องประกายเมื่อคุณต้องการเพิ่มหรือลบการอนุญาตสำหรับการดำเนินการเฉพาะสำหรับชั้นเรียนใดคลาสหนึ่งเท่านั้น
ตัวอย่างเช่น นี่ เพิ่ม สิทธิ์ในการดำเนินการสำหรับเจ้าของไฟล์:
chmod u+x example.txt
และนี่ ลบ สิทธิ์การเขียนและดำเนินการสำหรับผู้ใช้รายอื่น:
chmod o-wx example.txt
สุดท้ายนี้ หากคุณต้องการใช้ชุดการอนุญาตเฉพาะกับไฟล์และโฟลเดอร์ทั้งหมดภายในไดเร็กทอรีเฉพาะ (เช่น chmod แบบเรียกซ้ำ) ให้ใช้ตัวเลือก -R และกำหนดเป้าหมายไดเร็กทอรี:
chmod -R 755 example_directory
แม้ว่าคำสั่ง chmod จะดูแปลกไปเล็กน้อยในแวบแรก แต่จริงๆ แล้วค่อนข้างเรียบง่ายและมีเหตุผลทั้งหมด หากคุณเข้าใจข้างต้น แสดงว่าคุณเชี่ยวชาญ chmod แล้ว!
เรียนรู้เพิ่มเติมเกี่ยวกับ Mastering Linux
คำสั่งเช่น chmod, chown และ chgrp เป็นเพียงส่วนเล็กของภูเขาน้ำแข็งของ Linux หากคุณเพิ่งเริ่มใช้ระบบปฏิบัติการ เราขอแนะนำให้ตรวจสอบลูกเล่นสำหรับมือใหม่ที่ใช้ Linux รวมถึงคำสั่ง Linux ที่คุณไม่ควรเรียกใช้
แต่ที่สำคัญที่สุด คุณควรพยายามทำให้ดีที่สุดโดยดูจาก . ของเรา คู่มือเริ่มต้นที่ครอบคลุมสำหรับ Ubuntu และ Linux ซึ่งจะสอนทุกสิ่งที่คุณจำเป็นต้องรู้เพื่อเริ่มต้นและทำความคุ้นเคยให้มากพอที่จะรู้สึกสบายใจ
แบ่งปัน แบ่งปัน ทวีต อีเมล 5 เคล็ดลับในการเพิ่มพลังให้เครื่อง VirtualBox Linux ของคุณเบื่อกับประสิทธิภาพที่ย่ำแย่ของเวอร์ชวลแมชชีนหรือไม่? นี่คือสิ่งที่คุณควรทำเพื่อเพิ่มประสิทธิภาพ VirtualBox ของคุณ
อ่านต่อไป หัวข้อที่เกี่ยวข้อง- ลินุกซ์
- คำสั่งลินุกซ์
Joel Lee เป็นบรรณาธิการของ MakeUseOf ตั้งแต่ปี 2018 เขามีปริญญาตรี ในสาขาวิทยาการคอมพิวเตอร์และประสบการณ์การเขียนและแก้ไขอย่างมืออาชีพกว่าเก้าปี
เพิ่มเติมจาก Joel Leeสมัครรับจดหมายข่าวของเรา
เข้าร่วมจดหมายข่าวของเราสำหรับเคล็ดลับทางเทคนิค บทวิจารณ์ eBook ฟรี และดีลพิเศษ!
คลิกที่นี่เพื่อสมัครสมาชิก