วิธีจัดการกลุ่มด้วย gpasswd

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

Little Bit เกี่ยวกับสิทธิ์

เปิดเทอร์มินัลและภายในโฟลเดอร์บ้านของคุณสร้างโฟลเดอร์ที่เรียกว่าบัญชีโดยใช้ คำสั่ง mkdir ดังนี้:

บัญชี mkdir

ตอนนี้ให้รัน คำสั่ง ls ต่อไปนี้ซึ่งจะแสดงสิทธิ์สำหรับโฟลเดอร์ที่คุณเพิ่งสร้างขึ้น

ls-lt

คุณจะเห็นบางอย่างเช่นนี้:

drwxr-xr-x 2 yourname yourname 4096 บัญชีวันที่

บิตที่เราสนใจคือสิทธิ์ที่ในตัวอย่างข้างต้นคือ "drwxr-xr-x" นอกจากนี้เรายังสนใจค่านิยม "yourname" จำนวน 2 ค่า

พูดคุยเกี่ยวกับสิทธิ์ก่อน "d" ย่อมาจากไดเรกทอรีและแจ้งให้เราทราบว่าบัญชีเป็นไดเรกทอรี

ส่วนที่เหลือของสิทธิ์แบ่งออกเป็น 3 ส่วนคือ "rwx", "rx", "rx" ส่วนแรกของ 3 ตัวอักษรคือสิทธิ์ที่เจ้าของวัตถุมี ส่วนที่สองของ 3 ตัวอักษรคือสิทธิ์ที่ทุกคนในกลุ่มมีและสุดท้ายส่วนสุดท้ายคือสิทธิ์ที่ทุกคนมี

"r" ย่อมาจาก "read", "w" ย่อมาจาก "write" และ "x" หมายถึง "execute"

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

ในตัวอย่าง "yourname" แรกเป็นเจ้าของรายการและ "yourname" ที่สองคือกลุ่มหลักสำหรับโฟลเดอร์บัญชี

เพื่อให้คู่มือนี้มีประโยชน์มากยิ่งขึ้นให้เพิ่มบัญชีอีกสองบัญชีในระบบของคุณโดยใช้ คำสั่ง adduser ต่อไปนี้:

sudo adduser tim sudo adduser ทอม

คุณจะถูกขอให้ตั้งรหัสผ่านสำหรับแต่ละคนและป้อนข้อมูลอื่น ๆ คุณสามารถใช้รหัสผ่านและส่งคืนผ่านช่องที่เหลือได้

ตอนนี้คุณมีบัญชี 3 บัญชีเรียกใช้คำสั่งต่อไปนี้เพื่อเปลี่ยนเจ้าของโฟลเดอร์บัญชีของคุณ

บัญชี sudo chown tom

ตอนนี้ให้รันคำสั่ง ls อีกครั้ง

ls-lt

สิทธิ์ในขณะนี้จะเป็นดังนี้:

drwxr-xr-x ทอม yourname

คุณจะสามารถนำทางไปยังโฟลเดอร์บัญชีโดยใช้ คำสั่ง cd ดังนี้:

cd บัญชี

ตอนนี้ลองสร้างไฟล์โดยใช้คำสั่งต่อไปนี้:

touch test

คุณจะได้รับข้อผิดพลาดต่อไปนี้:

สัมผัส: ไม่สามารถแตะ 'ทดสอบ': สิทธิ์ถูกปฏิเสธ

สาเหตุที่ทำให้ Tom เป็นเจ้าของและได้อ่านเขียนและเรียกใช้สิทธิ์ แต่คุณเป็นเพียงส่วนหนึ่งของกลุ่มและคุณมีสิทธิ์เป็นกลุ่มเท่านั้น

กลับไปที่โฟลเดอร์บ้านและเปลี่ยนสิทธิ์สำหรับบัญชีโดยการพิมพ์คำสั่งต่อไปนี้:

cd .. sudo chmod 750 บัญชี

ตอนนี้เรียกใช้คำสั่ง ls อีกครั้ง:

ls-lt

สิทธิ์สำหรับโฟลเดอร์บัญชีตอนนี้จะเป็นดังนี้:

drwxr-x ---

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

ลองใช้ ไปที่โฟลเดอร์บัญชีและเรียกใช้คำสั่งสัมผัสอีกครั้ง:

บัญชีผู้ใช้ซีดีสัมผัสการทดสอบ

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

เมื่อต้องการลองนี้เปลี่ยนไปใช้ Tim และนำทางไปยังโฟลเดอร์บัญชีดังนี้:

su - tim cd / home / ชื่อ / บัญชีของคุณ

คุณจะได้รับอนุญาตปฏิเสธข้อผิดพลาด

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

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

วิธีการสร้างกลุ่ม

คุณสามารถใช้คำสั่งต่อไปนี้เพื่อสร้างกลุ่ม:

บัญชีผู้ใช้ sudo addgroup

วิธีการเพิ่มผู้ใช้ลงในกลุ่ม

sudo gpasswd - ชื่อบัญชีผู้ใช้

คุณสามารถใช้คำสั่งดังกล่าวเพื่อเพิ่มผู้ใช้รายเดียวในกลุ่มบัญชี

เมื่อต้องการเพิ่มรายชื่อผู้ใช้ในฐานะสมาชิกของกลุ่มเรียกใช้คำสั่งต่อไปนี้:

sudo gpassword -M ชื่อบัญชีทอมบัญชี tim

เมื่อผู้ใช้ถูกเพิ่มลงในบัญชีผู้ใช้สามารถเพิ่มกลุ่มในรายการกลุ่มรองโดยการรันคำสั่งต่อไปนี้:

บัญชี newgrp

ผู้ใช้ที่ไม่ได้อยู่ในกลุ่มจะได้รับแจ้งให้ป้อนรหัสผ่านของกลุ่ม

วิธีการเปลี่ยนกลุ่มหลักสำหรับโฟลเดอร์

ขณะนี้เรามีกลุ่มที่มีผู้ใช้คุณสามารถกำหนดกลุ่มดังกล่าวในโฟลเดอร์บัญชีโดยใช้คำสั่ง chgrp ต่อไปนี้:

บัญชีผู้ใช้ sudo chgrp

บัญชีแรกเป็นชื่อของกลุ่มและบัญชีที่สองคือชื่อของโฟลเดอร์

วิธีการตรวจสอบว่าผู้ใช้เป็นกลุ่ม

คุณสามารถตรวจสอบว่าผู้ใช้อยู่ในกลุ่มโดยการรันคำสั่งต่อไปนี้:

กลุ่ม

ซึ่งจะแสดงรายการกลุ่มที่ผู้ใช้เป็นสมาชิก

วิธีการเปลี่ยนรหัสผ่านกลุ่ม

ในการเปลี่ยนรหัสผ่านของกลุ่มคุณสามารถเรียกใช้คำสั่งต่อไปนี้:

sudo gpasswd

คุณจะถูกขอให้ป้อนรหัสผ่านสำหรับกลุ่มและทำซ้ำ

ตอนนี้คุณสามารถเพิ่มผู้ใช้ลงในกลุ่มได้ตามที่ระบุไว้ข้างต้นหรือผู้ใช้ใหม่สามารถเข้าร่วมกลุ่มได้ง่ายๆโดยการรันคำสั่งต่อไปนี้และใส่รหัสผ่านที่ถูกต้อง:

newgrp

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

วิธี จำกัด เฉพาะกลุ่มเฉพาะสมาชิก

ถ้าคุณไม่ต้องการใครสักคนที่รู้รหัสผ่านเพื่อเข้าร่วมกลุ่มคุณสามารถเรียกใช้คำสั่งต่อไปนี้:

sudo gpasswd -R

ตั้งผู้ใช้เป็นผู้ดูแลระบบ

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

เมื่อต้องการทำเช่นนี้ให้เรียกใช้คำสั่งต่อไปนี้:

sudo gpasswd - บัญชีทอม

วิธีลบรหัสผ่านกลุ่ม

คุณสามารถลบรหัสผ่านจากกลุ่มโดยใช้คำสั่งต่อไปนี้:

sudo gpasswd -r บัญชี

วิธีการลบผู้ใช้จากกลุ่ม

เมื่อต้องการลบผู้ใช้ออกจากกลุ่มให้เรียกใช้คำสั่งต่อไปนี้:

sudo gpassword -d บัญชีทอม

วิธีการให้กลุ่มอ่านเขียนและดำเนินการสิทธิ์ในแฟ้มหรือโฟลเดอร์

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

หากต้องการให้สิทธิ์การเขียนในกลุ่มคุณสามารถเรียกใช้คำสั่งต่อไปนี้:

sudo chmod g + w accounts

สรุป

คู่มือนี้ได้แนะนำคำสั่งสองสามคำเพื่อช่วยในการตั้งค่าสิทธิ์ในระบบ Linux ของคุณ นอกจากนี้คุณยังสามารถใช้ คำสั่ง useradd เพื่อตั้งค่าผู้ใช้และกลุ่มผู้ใช้