Linux - Add, Delete and Modify Users (adduser, deluser, passwd, chfn)
สารบัญ:
- คำสั่ง
useradd
- วิธีการสร้างผู้ใช้ใหม่ใน Linux
- วิธีเพิ่มผู้ใช้ใหม่และสร้างโฮมไดเร็กตอรี่
- การสร้างผู้ใช้ด้วย Home Directory เฉพาะ
- การสร้างผู้ใช้ด้วย ID ผู้ใช้เฉพาะ
- การสร้างผู้ใช้ด้วย ID กลุ่มเฉพาะ
- การสร้างผู้ใช้และมอบหมายหลายกลุ่ม
- การสร้างผู้ใช้ด้วยเชลล์ล็อกอินเฉพาะ
- การสร้างผู้ใช้ด้วยความคิดเห็นที่กำหนดเอง
- การสร้างผู้ใช้ที่มีวันหมดอายุ
- การสร้างผู้ใช้ระบบ
- การเปลี่ยนค่า useradd เริ่มต้น
- ข้อสรุป
Linux เป็นระบบที่มีผู้ใช้หลายคนซึ่งหมายความว่ามากกว่าหนึ่งคนสามารถโต้ตอบกับระบบเดียวกันในเวลาเดียวกัน ในฐานะผู้ดูแลระบบคุณมีความรับผิดชอบในการจัดการผู้ใช้และกลุ่มของระบบโดยการสร้างและลบผู้ใช้และมอบหมายให้กลุ่มต่าง ๆ
ใน Linux คุณสามารถสร้างบัญชีผู้ใช้และกำหนดผู้ใช้ให้กับกลุ่มต่างๆโดยใช้คำสั่ง
useradd
useradd
เป็นยูทิลิตี้ระดับต่ำผู้ใช้ Debian และ Ubuntu มีแนวโน้มที่จะใช้คำสั่ง adduser ที่เป็นมิตรกว่าแทน
เราจะพูดถึงวิธีการใช้คำสั่ง
useradd
และสำรวจตัวเลือก
คำสั่ง
useradd
ไวยากรณ์ทั่วไปสำหรับคำสั่ง
useradd
มีดังนี้:
useradd USERNAME
เพื่อให้สามารถใช้คำสั่ง
useradd
และสร้างผู้ใช้ใหม่คุณจะต้องเข้าสู่ระบบในฐานะ root หรือผู้ใช้ที่มีการเข้าถึง sudo
เมื่อเรียกใช้
useradd
จะสร้างบัญชีผู้ใช้ใหม่โดยใช้ตัวเลือกที่ระบุในบรรทัดคำสั่งรวมถึงค่าเริ่มต้นที่ระบุในไฟล์
/etc/default/useradd
ตัวแปรที่กำหนดไว้ในไฟล์นี้แตกต่างจากการกระจายไปยังการกระจายซึ่งทำให้คำสั่ง
useradd
ให้ผลลัพธ์ที่แตกต่างกันในระบบที่แตกต่างกัน
คำสั่งยังอ่านเนื้อหาของไฟล์
/etc/login.defs
ไฟล์นี้มีการกำหนดค่าสำหรับชุดรหัสผ่านเงาเช่นนโยบายการหมดอายุของรหัสผ่านช่วงของรหัสผู้ใช้ที่ใช้เมื่อสร้างระบบและผู้ใช้ทั่วไปและอื่น ๆ
วิธีการสร้างผู้ใช้ใหม่ใน Linux
หากต้องการสร้างบัญชีผู้ใช้ใหม่ให้พิมพ์
useradd
แล้วตามด้วยชื่อผู้ใช้
ตัวอย่างเช่นการสร้างชื่อผู้ใช้ใหม่ชื่อ
username
คุณจะเรียกใช้:
sudo useradd username
ในรูปแบบที่ง่ายที่สุดเมื่อใช้โดยไม่มีตัวเลือกใด ๆ useradd จะสร้างบัญชีผู้ใช้ใหม่ด้วยการตั้งค่าเริ่มต้นที่ระบุในไฟล์
/etc/default/useradd
คำสั่งเพิ่มรายการในไฟล์
/etc/passwd
,
/etc/shadow,
/etc/group
และ
/etc/gshadow
เพื่อให้สามารถเข้าสู่ระบบในฐานะผู้ใช้ที่สร้างขึ้นใหม่คุณต้องตั้งรหัสผ่านผู้ใช้ ในการทำเช่นนั้นให้รันคำสั่ง
passwd
ตามด้วยชื่อผู้ใช้:
sudo passwd username
คุณจะได้รับแจ้งให้ป้อนและยืนยันรหัสผ่าน ตรวจสอบให้แน่ใจว่าคุณใช้รหัสผ่านที่คาดเดายาก
Changing password for user username. New password: Retype new password: passwd: all authentication tokens updated successfully.
วิธีเพิ่มผู้ใช้ใหม่และสร้างโฮมไดเร็กตอรี่
ใน Linux distros ส่วนใหญ่เมื่อสร้างบัญชีผู้ใช้ใหม่ด้วยคำสั่ง
useradd
ไดเรกทอรีหลักของผู้ใช้จะไม่ถูกสร้างขึ้น
ใช้ตัวเลือก
-m
(
--create-home
) เพื่อสร้างโฮมไดเรกทอรีผู้ใช้เป็น
/home/username
:
sudo useradd -m username
คำสั่งด้านบนสร้างโฮมได
/etc/skel
ของผู้ใช้ใหม่และคัดลอกไฟล์จาก
/etc/skel
ไปยังโฮมได
/etc/skel
ของผู้ใช้. หากคุณแสดงรายการไฟล์ในไดเรกทอรี
/home/username
คุณจะเห็นไฟล์เริ่มต้น:
ls -la /home/username/
drwxr-xr-x 2 username username 4096 Dec 11 11:23. drwxr-xr-x 4 root root 4096 Dec 11 11:23.. -rw-r--r-- 1 username username 220 Apr 4 2018.bash_logout -rw-r--r-- 1 username username 3771 Apr 4 2018.bashrc -rw-r--r-- 1 username username 807 Apr 4 2018.profile
ภายในโฮมไดเร็กทอรีผู้ใช้สามารถเขียนแก้ไขและลบไฟล์และไดเรกทอรี
การสร้างผู้ใช้ด้วย Home Directory เฉพาะ
ตัวอย่างเช่นในการสร้างผู้ใช้ใหม่ชื่อ
username
ด้วยโฮมไดเรกทอรีของ
/opt/username
คุณจะต้องเรียกใช้คำสั่งต่อไปนี้:
sudo useradd -m -d /opt/username username
การสร้างผู้ใช้ด้วย ID ผู้ใช้เฉพาะ
ในระบบปฏิบัติการ Linux และ Unix จะมีการระบุผู้ใช้ด้วย UID และชื่อผู้ใช้ที่ไม่ซ้ำใคร
User identifier (UID) เป็นจำนวนเต็มบวกเฉพาะที่กำหนดโดยระบบ Linux ให้กับผู้ใช้แต่ละคน UID พร้อมกับนโยบายควบคุมการเข้าถึงอื่น ๆ จะใช้เพื่อกำหนดประเภทของการกระทำที่ผู้ใช้สามารถดำเนินการกับทรัพยากรระบบ
โดยดีฟอลต์เมื่อผู้ใช้ใหม่ถูกสร้างขึ้นระบบจะกำหนด UID ที่พร้อมใช้งานถัดไปจากช่วงของ ID ผู้ใช้ที่ระบุในไฟล์
login.defs
ใช้อ็อพชัน
-u
(
--uid
) เพื่อสร้างผู้ใช้ที่มี UID เฉพาะ ตัวอย่างเช่นการสร้างชื่อผู้ใช้ใหม่ชื่อ
username
ด้วย UID
1500
คุณจะพิมพ์:
sudo useradd -u 1500 username
คุณสามารถตรวจสอบ UID ของผู้ใช้โดยใช้คำสั่ง
id
:
id -u username
การสร้างผู้ใช้ด้วย ID กลุ่มเฉพาะ
กลุ่ม Linux เป็นหน่วยองค์กรที่ใช้ในการจัดระเบียบและจัดการบัญชีผู้ใช้ใน Linux วัตถุประสงค์หลักของกลุ่มคือการกำหนดชุดของสิทธิพิเศษเช่นการอ่านการเขียนหรือการดำเนินการอนุญาตสำหรับทรัพยากรที่กำหนดที่สามารถใช้ร่วมกันระหว่างผู้ใช้ภายในกลุ่ม
เมื่อสร้างผู้ใช้ใหม่พฤติกรรมเริ่มต้นของคำสั่ง
useradd
คือการสร้างกลุ่มที่มีชื่อเดียวกันกับชื่อผู้ใช้และ GID เดียวกับ UID
ใช้ตัวเลือก
-g
(
--gid
) เพื่อสร้างผู้ใช้ที่มีกลุ่มเข้าสู่ระบบเริ่มต้นที่เฉพาะเจาะจง คุณสามารถระบุชื่อกลุ่มหรือหมายเลข GID ชื่อกลุ่มหรือ GID ต้องมีอยู่แล้ว
ตัวอย่างเช่นการสร้างชื่อผู้ใช้ใหม่ชื่อ
username
และตั้งค่ากลุ่มเข้าสู่ประเภท
users
:
sudo useradd -g users username
ในการตรวจสอบ GID ของผู้ใช้ให้ใช้คำสั่ง
id
:
id -gn username
การสร้างผู้ใช้และมอบหมายหลายกลุ่ม
มีสองประเภทของกลุ่มในระบบปฏิบัติการ Linux กลุ่มหลักและกลุ่มรองหรือกลุ่มเสริม ผู้ใช้แต่ละคนสามารถอยู่ในกลุ่มหลักหนึ่งกลุ่มและกลุ่มรองอย่างน้อยหนึ่งกลุ่ม
ตัวเลือก
-G
(
--groups
) ช่วยให้คุณระบุรายการกลุ่มเสริมที่ผู้ใช้จะเป็นสมาชิก
คำสั่งต่อไปนี้จะสร้างชื่อผู้ใช้ใหม่ชื่อ
username
กับ
users
กลุ่มหลักและกลุ่ม
wheel
รองและ
docker
sudo useradd -g users -G wheel, developers username
คุณสามารถตรวจสอบกลุ่มผู้ใช้โดยการพิมพ์
id username
uid=1002(username) gid=100(users) groups=100(users), 10(wheel), 993(docker)
การสร้างผู้ใช้ด้วยเชลล์ล็อกอินเฉพาะ
โดยค่าเริ่มต้นเปลือกเข้าสู่ระบบของผู้ใช้ใหม่จะถูกตั้งค่าเป็นหนึ่งที่ระบุไว้ในไฟล์
/etc/default/useradd
ใน Linux ดิสทริบิวชันเช่น Ubuntu 18.04 เชลล์เริ่มต้นถูกตั้งค่าเป็น
/bin/sh
ในขณะที่อื่น ๆ มันถูกตั้งค่าเป็น
/bin/bash
--shell
-s
(
--shell
) อนุญาตให้คุณระบุเชลล์ล็อกอินของผู้ใช้ใหม่
ตัวอย่างเช่นการสร้างชื่อผู้ใช้ใหม่ชื่อ
username
มี
/usr/bin/zsh
เป็นประเภทเปลือกเข้าสู่ระบบ:
sudo useradd -s /usr/bin/zsh username
ตรวจสอบรายการผู้ใช้ในไฟล์
/etc/passwd
เพื่อตรวจสอบเชลล์ล็อกอินของผู้ใช้:
grep username /etc/passwd
username:x:1001:1001::/home/username:/usr/bin/zsh
การสร้างผู้ใช้ด้วยความคิดเห็นที่กำหนดเอง
--comment
-c
(
--comment
) อนุญาตให้คุณเพิ่มคำอธิบายสั้น ๆ สำหรับผู้ใช้ใหม่ โดยทั่วไปแล้วชื่อเต็มของผู้ใช้หรือข้อมูลการติดต่อจะถูกเพิ่มเป็นความคิดเห็น
ในตัวอย่างต่อไปนี้เรากำลังสร้างชื่อผู้ใช้ใหม่ชื่อ
username
ด้วยสตริงข้อความ
Test User Account
เป็นความคิดเห็น:
sudo useradd -c "Test User Account" username
ความคิดเห็นถูกบันทึกในไฟล์
/etc/passwd
:
grep username /etc/passwd
username:x:1001:1001:Test User Account:/home/username:/bin/sh
ช่องแสดงความคิดเห็นยังเป็นที่รู้จักกันในนาม
GECOS
การสร้างผู้ใช้ที่มีวันหมดอายุ
ตัวเลือก
-e
(-
--expiredate
) ช่วยให้คุณสามารถกำหนดเวลาที่บัญชีผู้ใช้ใหม่จะหมดอายุ ตัวเลือกนี้มีประโยชน์สำหรับการสร้างบัญชีชั่วคราว ต้องระบุวันที่โดยใช้
YYYY-MM-DD
ตัวอย่างเช่นในการสร้างบัญชีผู้ใช้ใหม่ที่ชื่อชื่อ
username
โดยกำหนดเวลาหมดอายุเป็น 22 มกราคม 2019 คุณจะเรียกใช้:
sudo useradd -e 2019-01-22 username
คุณสามารถใช้คำสั่ง
chage
เพื่อตรวจสอบวันหมดอายุของบัญชีผู้ใช้:
sudo chage -l username
ผลลัพธ์จะมีลักษณะดังนี้:
Last password change: Dec 11, 2018 Password expires: never Password inactive: never Account expires: Jan 22, 2019 Minimum number of days between password change: 0 Maximum number of days between password change: 99999 Number of days of warning before password expires: 7
การสร้างผู้ใช้ระบบ
ไม่มีความแตกต่างทางเทคนิคที่แท้จริงระหว่างระบบและผู้ใช้ปกติ (ปกติ) โดยทั่วไปผู้ใช้ระบบจะถูกสร้างขึ้นเมื่อติดตั้งระบบปฏิบัติการและแพ็คเกจใหม่
ในบางสถานการณ์คุณอาจต้องสร้างผู้ใช้ระบบที่จะถูกใช้โดยแอพพลิเคชั่นบางตัว
ใช้ตัวเลือก
-r
(
--system
) เพื่อสร้างบัญชีผู้ใช้ระบบ ตัวอย่างเช่นในการสร้างผู้ใช้ระบบใหม่ชื่อ
username
คุณจะต้องรัน:
sudo useradd -r username
ผู้ใช้ระบบถูกสร้างขึ้นโดยไม่มีวันหมดอายุ UID ของพวกเขาถูกเลือกจากช่วงของ ID ผู้ใช้ระบบที่ระบุในไฟล์
login.defs
ซึ่งแตกต่างจากช่วงที่ใช้สำหรับผู้ใช้ปกติ
การเปลี่ยนค่า useradd เริ่มต้น
ตัวเลือก useradd เริ่มต้นสามารถดูและเปลี่ยนแปลงได้โดยใช้ตัวเลือก
-D
,
--defaults
หรือแก้ไขค่าด้วยตนเองในไฟล์
/etc/default/useradd
วิธีดูประเภทตัวเลือกเริ่มต้นปัจจุบัน:
useradd -D
ผลลัพธ์จะมีลักษณะดังนี้:
GROUP=100 HOME=/home INACTIVE=-1 EXPIRE= SHELL=/bin/sh SKEL=/etc/skel CREATE_MAIL_SPOOL=no
สมมติว่าคุณต้องการเปลี่ยนเชลล์ล็อกอินเริ่มต้นจาก
/bin/sh
เป็น
/bin/bash
ในการทำเช่นนั้นให้ระบุเชลล์ใหม่ดังที่แสดงด้านล่าง:
sudo useradd -D -s /bin/bash
คุณสามารถตรวจสอบว่าค่าเปลือกเริ่มต้นมีการเปลี่ยนแปลงโดยใช้คำสั่งต่อไปนี้:
sudo useradd -D | grep -i shell
ข้อสรุป
ในบทช่วยสอนนี้เราได้แสดงวิธีสร้างบัญชีผู้ใช้ใหม่โดยใช้คำสั่ง
useradd
คำแนะนำเดียวกันนี้สำหรับการแจกจ่าย Linux รวมถึง Ubuntu, CentOS, RHEL, Debian, Fedora และ Arch Linux
อย่าลังเลที่จะแสดงความคิดเห็นหากคุณมีคำถามใด ๆ
กลุ่มผู้ใช้ปลายทางคำสั่ง linux พื้นฐาน

การรู้วิธีใช้บรรทัดคำสั่งจะมีประโยชน์มาก ในบทความนี้เราจะดำเนินการตามคำสั่ง Linux ที่ใช้บ่อยที่สุดที่ผู้ดูแลระบบ Linux ใช้เป็นประจำทุกวัน
คำสั่ง Chmod ใน linux (การอนุญาตไฟล์)

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

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