วิธีใช้คำสั่ง Usermod ใน Linux

คำแนะนำโดยละเอียดเกี่ยวกับการใช้คำสั่ง usermod ในระบบ Linux พร้อมตัวอย่างต่างๆ

ดิ ผู้ใช้mod คำสั่งเป็นคำสั่งที่มีประสิทธิภาพที่สุดของยูทิลิตี้แก้ไขบัญชีผู้ใช้ทั้งหมดที่มีให้โดยระบบ Linux ให้พื้นที่สำหรับผู้ใช้ในการแก้ไขใดๆ กับบัญชีผู้ใช้ที่มีอยู่

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

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

บันทึก: เพื่อดำเนินการ ผู้ใช้mod คำสั่งคุณต้องเป็นผู้ใช้รูทหรือคุณต้องมี sudo เข้าถึง.

ไฟล์ที่มีรายละเอียดผู้ใช้

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

ไฟล์คำอธิบาย
/etc/passwdประกอบด้วยข้อมูลหลายส่วนเกี่ยวกับผู้ใช้
/etc/groupมีข้อมูลเกี่ยวกับแต่ละกลุ่มที่ใช้ในระบบ
/etc/gshadowมีข้อมูลบัญชีกลุ่มที่ปลอดภัย
/etc/login.defsกำหนดการกำหนดค่าเฉพาะไซต์สำหรับชุดรหัสผ่านเงา
/etc/shadowประกอบด้วยรหัสผ่านที่เข้ารหัสและข้อมูลอื่นๆ เช่น ค่าการหมดอายุของบัญชีหรือรหัสผ่าน

ไวยากรณ์พื้นฐานของคำสั่ง Usermod

ไวยากรณ์ที่จะใช้ ผู้ใช้mod คำสั่งค่อนข้างพื้นฐานในธรรมชาติ สิ่งสำคัญคือต้องรู้ตัวเลือกที่ควรใช้คำสั่งนี้

ไวยากรณ์:

usermod [ตัวเลือก] ชื่อผู้ใช้ 

ตัวเลือก:

ตัวเลือกการใช้งาน
-lเปลี่ยนชื่อผู้ใช้
-dแก้ไขโฮมไดเร็กทอรีของบัญชีผู้ใช้ที่มีอยู่
-Lล็อคบัญชีผู้ใช้โดยการปิดการใช้งานรหัสผ่าน
-ยูปลดล็อครหัสผ่านล็อค
-mย้ายเนื้อหาจากโฮมไดเร็กทอรีที่มีอยู่ของผู้ใช้ไปยังตำแหน่งไดเร็กทอรีใหม่
-ยูเปลี่ยน ID ผู้ใช้ของผู้ใช้ที่มีอยู่
-gเปลี่ยนกลุ่มผู้ใช้
-Gรายชื่อกลุ่มเสริมที่ผู้ใช้เป็นสมาชิกด้วย
-sสร้างเชลล์สำหรับบัญชีใหม่
-eเปลี่ยนวันหมดอายุของบัญชีผู้ใช้

การใช้งานคำสั่ง Usermod

ตามที่ระบุในตารางข้างต้น ผู้ใช้mod คำสั่งใช้กับตัวเลือกต่าง ๆ เพื่อจัดการแอตทริบิวต์ที่เกี่ยวข้องกับข้อมูลบัญชีผู้ใช้

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

เปลี่ยนชื่อผู้ใช้

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

ไวยากรณ์:

usermod -l [ชื่อผู้ใช้ใหม่] [ชื่อผู้ใช้ที่มีอยู่]

ตัวอย่าง:

sudo usermod -l แบทแมนชั่วคราว

เอาท์พุท:

คุณสามารถยืนยันการเปลี่ยนชื่อผู้ใช้โดยเรียกใช้ รหัส [ผู้ใช้] คำสั่งคำสั่ง

gaurav@ubuntu:~$ id batman uid=1002(batman) gid=1002(temporary) groups=1002(ชั่วคราว) gaurav@ubuntu:~$ id รหัสชั่วคราว: 'ชั่วคราว': ไม่มีผู้ใช้ดังกล่าว gaurav@ubuntu:~$

ในผลลัพธ์ข้างต้น เป็นที่ชัดเจนว่าชื่อผู้ใช้ 'ชั่วคราว' ถูกเปลี่ยนเป็นชื่อผู้ใช้ใหม่ 'แบทแมน'

การเปลี่ยนกลุ่มหลักของผู้ใช้ที่มีอยู่

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

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

คุณสามารถตรวจสอบกลุ่มในระบบของคุณโดยใช้ กลุ่ม สั่งการ.

gaurav@ubuntu:~$ กลุ่ม gaurav adm cdrom sudo dip plugdev lpadmin sambashare gaurav@ubuntu:~$

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

gaurav@ubuntu:~$ id batman uid=1000(batman) gid=1000(batman) groups=1000(batman),128(sambashare),4(adm),24(cdrom),27(sudo) gaurav@ubuntu: ~$ 

ที่นี่กลุ่มหลักคือ 'แบทแมน'. ตอนนี้ใช้ ผู้ใช้mod คำสั่งเปลี่ยนกลุ่มหลักของผู้ใช้ ฉันกำลังเปลี่ยนกลุ่มหลักของผู้ใช้เป็น 'sambashare' ตรวจสอบคำสั่งต่อไปนี้

ไวยากรณ์:

sudo usermod -g [ชื่อกลุ่ม] [ชื่อผู้ใช้]

ตัวอย่าง:

 sudo usermod -g sambashare แบทแมน

เอาท์พุท:

gaurav@ubuntu:~$ sudo usermod -g sambashare batman gaurav@ubuntu:~$ id batman uid=1000(batman) gid=128(sambashare) groups=128(sambashare),1000(batman),4(adm),24 (cdrom),27(sudo) gaurav@ubuntu:~$ 

เมื่อใช้การดำเนินการข้างต้น กลุ่มหลักของผู้ใช้แบทแมนจะเปลี่ยนเป็น 'sambashare'

การเพิ่มกลุ่มใหม่ให้กับผู้ใช้ที่มีอยู่

บัญชีผู้ใช้สามารถอยู่ในกลุ่มมากกว่าหนึ่งกลุ่มในระบบ Linux ผู้ใช้ทุกคนมีกลุ่มหลัก และ Linux อนุญาตให้เพิ่มกลุ่มรองให้กับผู้ใช้ได้เช่นกัน

ไวยากรณ์:

sudo usermod -G [กลุ่มใหม่] [ชื่อผู้ใช้]

ตัวอย่าง:

sudo usermod -G dip แบทแมน

เอาท์พุท:

gaurav@ubuntu:~$ sudo usermod -G dip batman gaurav@ubuntu:~$ id batman uid=1000(batman) gid=128(sambashare) groups=128(sambashare), 30(dip) gaurav@ubuntu:~$ 

มีการเพิ่มกลุ่มใหม่ชื่อ 'dip' ให้กับผู้ใช้ 'batman'

บันทึก: ในการเพิ่มกลุ่มใหม่เป็น 'กลุ่มรอง' คุณควรใช้ -a พารามิเตอร์.

-a วิธี ผนวก. โดยใช้ -a ก่อน -G จะเพิ่มกลุ่มเป็น 'กลุ่มรอง' โดยไม่ต้องเปลี่ยน 'กลุ่มหลัก' ของผู้ใช้

ใช้คำสั่งต่อไปนี้เพื่อให้กลุ่มหลักของผู้ใช้ไม่เปลี่ยนแปลง

sudo usermod -a -G [กลุ่มที่จะเพิ่ม] [ผู้ใช้]

การเปลี่ยนโฮมไดเร็กทอรีของผู้ใช้

เมื่อคุณเข้าสู่ระบบ เซสชันของคุณจะเริ่มต้นในโฮมไดเร็กทอรีของคุณ ซึ่งเป็นเอกลักษณ์ของบัญชีผู้ใช้ของคุณ ระบบจะกำหนดไดเร็กทอรีเฉพาะนี้เมื่อสร้างบัญชีผู้ใช้ Linux เสนอตัวเลือกให้คุณเปลี่ยน 'โฮมไดเร็กทอรี' ของคุณ โดยส่วนใหญ่ ชื่อของ 'Home Directory' จะเหมือนกับชื่อผู้ใช้และอยู่ภายใต้ /บ้าน ไดเร็กทอรี

ใช้คำสั่งต่อไปนี้เพื่อเปลี่ยน 'Home Directory' ของผู้ใช้

ไวยากรณ์:

sudo usermod -d [new_directory_path] [ชื่อผู้ใช้]

หากต้องการตรวจสอบว่า Home Directory มีการเปลี่ยนแปลงหรือไม่ ให้ใช้ปุ่ม grep สั่งการ. ฉันได้แสดงข้อมูลเกี่ยวกับผู้ใช้ 'แบทแมน' จาก /etc/passwd ไฟล์.

gaurav@ubuntu:~$ sudo usermod -d /var/hpq/ batman gaurav@ubuntu:~$ grep 'var/hpq/' /etc/passwd batman:x:1001:4::/var/hpq/:/bin /false gaurav@ubuntu:~$

บันทึก: ในการย้ายเนื้อหาจากโฮมไดเร็กทอรีเก่าไปยังไดเร็กทอรีใหม่ คุณต้องใช้ -m. ใช้ไวยากรณ์ที่แสดงด้านล่าง

sudo usermod -m -d [new_directory_path] [ชื่อผู้ใช้]

การเปลี่ยน Uid (ตัวระบุผู้ใช้) ของผู้ใช้

Uid (ตัวระบุผู้ใช้) คือค่าตัวเลขที่ไม่ซ้ำกันซึ่งกำหนดให้กับผู้ใช้ทุกคนโดย Linux ระบบระบุผู้ใช้ด้วยเครื่องหมาย uid มอบหมายให้กับมัน ศูนย์ UID ถูกกำหนดให้กับผู้ใช้รูท

คุณสามารถเปลี่ยน UID ของผู้ใช้โดยใช้คำสั่งด้านล่าง

ไวยากรณ์:

sudo usermod -u [new_UID] ผู้ใช้

ตัวอย่าง:

ตรวจสอบ uid ปัจจุบันสำหรับผู้ใช้แบทแมนโดยใช้ รหัส [ผู้ใช้] สั่งการ.

gaurav@ubuntu:~$ id batman uid=1000(batman) gid=4(adm) groups=4(adm),30(dip)

uid ของแบทแมนตอนนี้ 1,000 มาเปลี่ยนเป็น 536 โดยใช้ ผู้ใช้mod-ยู สั่งการ.

gaurav@ubuntu:~$ sudo usermod -u 536 batman [sudo] รหัสผ่านสำหรับ gaurav: gaurav@ubuntu:~$

ตอนนี้ให้ตรวจสอบ uid ของผู้ใช้แบทแมนอีกครั้งโดยใช้ รหัส [ผู้ใช้] สั่งการ

gaurav@ubuntu:~$ id batman uid=536(batman) gid=4(adm) groups=4(adm),30(dip) gaurav@ubuntu:~$

ที่นี่เราจะเห็นว่า uid ของผู้ใช้แบทแมนเปลี่ยนจาก 1,000 เป็น 536 โดยใช้ usermod -u สั่งการ.

การเพิ่มความคิดเห็นส่วนตัวด้วยบัญชีผู้ใช้

มาดูตัวอย่างผู้ใช้ 'แบทแมน' ผู้ใช้รายนี้ทำงานในสำนักงานขนาดใหญ่ และเพิ่งเปลี่ยนหมายเลขโทรศัพท์ที่ทำงานและหมายเลขโต๊ะทำงาน เพื่อให้เขาสามารถเพิ่มรายละเอียดที่แก้ไขเหล่านี้ในบัญชีผู้ใช้ของเขาโดยใช้ usermod -c สั่งการ.

ไวยากรณ์:

sudo usermod -c "ความคิดเห็นของคุณ" ผู้ใช้ 

เอาท์พุท:

gaurav@ubuntu:~$ sudo usermod -c "Tony Stark, 405, 95985475" batman gaurav@ubuntu:~$ sudo grep 'batman' /etc/passwd batman:x:536:4:Tony Stark, 405, 95985475:/ var/hpq/:/bin/false gaurav@ubuntu:~$

การเปลี่ยนแปลงจะปรากฏใน /etc/passwd ไฟล์.

การล็อค/ปิดใช้งานผู้ใช้

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

ไวยากรณ์:

sudo usermod -L [ผู้ใช้]

เอาท์พุท:

gaurav@ubuntu:~$ sudo usermod -L batman gaurav@ubuntu:~$ sudo grep batman /etc/shadow แบทแมน:!:17612:0:99999:7::: gaurav@ubuntu:~$

การปลดล็อค/เปิดใช้งานผู้ใช้

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

ไวยากรณ์:

sudo usermod -U [ผู้ใช้]
gaurav@ubuntu:~$ sudo usermod -U batman gaurav@ubuntu:~$ sudo grep batman /etc/shadow แบทแมน:t:18511:0:99999:7::: gaurav@ubuntu:~$

การเปลี่ยนเชลล์ผู้ใช้

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

คุณสามารถเปลี่ยนผู้ใช้ของเชลล์โดยใช้ usermod -s สั่งการ. ใช้ไวยากรณ์ที่ระบุด้านล่าง

ไวยากรณ์:

sudo usermod -s /bin/sh [ผู้ใช้]
gaurav@ubuntu:~$ sudo usermod -s /bin/sh batman [sudo] รหัสผ่านสำหรับ gaurav: gaurav@ubuntu:~$ grep batman /etc/passwd batman:x:536:4:นี่คือบัญชีทดลองของฉัน:/var /www/:/bin/sh

คุณสามารถตรวจสอบการเปลี่ยนแปลงโดยใช้ grep คำสั่งตามที่แสดงในเอาต์พุตด้านบน

กำหนดวันหมดอายุของผู้ใช้

หากคุณต้องการใช้บัญชีผู้ใช้บางบัญชีในช่วงเวลาที่กำหนด คุณสามารถกำหนดวันหมดอายุในบัญชีผู้ใช้นั้นได้ วันหมดอายุอยู่ในรูปแบบ ปปปป-ดด-วว.

ไวยากรณ์:

usermod -e [YYYY-MM-DD] [ผู้ใช้]

ในการตรวจสอบวันหมดอายุปัจจุบันของบัญชี ให้ใช้ chage -l [ผู้ใช้] สั่งการ.

gaurav@ubuntu:~$ sudo chaage -l batman [sudo] password for gaurav: Last password change : Sep 06, 2020 รหัสผ่านหมดอายุ : ไม่เคย รหัสผ่านไม่ได้ใช้งาน : ไม่เคย บัญชีหมดอายุ : ไม่เคย จำนวนวันขั้นต่ำระหว่างการเปลี่ยนรหัสผ่าน : 0 จำนวนสูงสุดของ วันระหว่างการเปลี่ยนรหัสผ่าน : 99999 จำนวนวันที่เตือนก่อนที่รหัสผ่านจะหมดอายุ : 7 gaurav@ubuntu:~$ 

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

ตัวอย่าง:

sudo usermod -e 2022-06-19 แบทแมน

ตอนนี้เราจะตรวจสอบสถานะวันหมดอายุของผู้ใช้อีกครั้งโดยใช้ปุ่ม chage -l [ผู้ใช้] สั่งการ.

gaurav@ubuntu:~$ sudo chaage -l batman [sudo] password for gaurav: Last password change : Sep 06, 2020 รหัสผ่านหมดอายุ : ไม่เคย รหัสผ่านไม่ได้ใช้งาน : ไม่เคย บัญชีหมดอายุ : 19 มิ.ย. 2565 จำนวนวันขั้นต่ำระหว่างการเปลี่ยนรหัสผ่าน : 0 จำนวนวันสูงสุดระหว่างการเปลี่ยนรหัสผ่าน : 99999 จำนวนวันที่เตือนก่อนที่รหัสผ่านจะหมดอายุ : 7 gaurav@ubuntu:~$ 

ด้วยวิธีนี้ เราได้กำหนดวันหมดอายุของบัญชีผู้ใช้ 'แบทแมน' เป็น 19 มิ.ย. 2022

บทสรุป

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

ดูบทความอื่น ๆ ของเราด้านล่างเพื่อเรียนรู้เพิ่มเติมเกี่ยวกับเทคโนโลยี มีความสุขในการเรียนรู้ !