Download app

Quét mã QR để tải về ứng dụng

QR code

Hướng dẫn Hoàn chỉnh về Lệnh “useradd” trong Linux - 15 Ví dụ Thực tế

12/08/2021, 03:20 pm
12,134

Tất cả chúng ta đều biết lệnh phổ biến nhất được gọi là 'useradd' hoặc 'adduser' trong Linux. Đôi khi, quản trị viên hệ thống Linux được yêu cầu tạo tài khoản người dùng trên Linux với một số thuộc tính, giới hạn hoặc nhận xét cụ thể.

Trong Linux, lệnh “useradd” là một tiện ích cấp thấp được sử dụng để thêm/tạo tài khoản người dùng trong Linux và các hệ điều hành khác giống Unix. 'Adduser' gần giống với lệnh useradd vì nó chỉ là một liên kết tượng trưng với nó.

Trong một số bản phân phối Linux khác, lệnh useradd có thể đi kèm với một phiên bản hơi khác. Tôi khuyên bạn nên đọc tài liệu của mình trước khi sử dụng hướng dẫn của chúng tôi để tạo tài khoản người dùng mới trong Linux.

Khi chúng tôi chạy lệnh 'useradd' trong thiết bị đầu cuối Linux, nó thực hiện những điều chính sau:

Nó chỉnh sửa /etc/passwd, /etc/shadow, /etc/group và các tệp /etc/gshadow cho các tài khoản người dùng mới được tạo.

Tạo và điền thư mục chính cho người dùng mới.

Đặt quyền và quyền sở hữu cho thư mục chính.

Cú pháp cơ bản của lệnh useradd

# useradd [options] username

Trong bài viết này, chúng tôi sẽ giới thiệu cho bạn 15 lệnh useradd được sử dụng nhiều nhất cùng các ví dụ thực tế của chúng trong Linux. Chúng tôi đã chia phần này thành hai phần từ Cơ bản đến Nâng cao cách sử dụng lệnh.

Phần I: Các lệnh Useradd cơ bản với 10 ví dụ

Phần II: Các lệnh Useradd nâng cao với 5 ví dụ

Phần I - 10 Cách sử dụng cơ bản của các lệnh useradd

1. Cách thêm người dùng mới trong Linux

Để thêm/tạo người dùng mới, bạn phải làm theo lệnh 'useradd' hoặc 'adduser' với 'tên người dùng'. 'Tên người dùng' là tên đăng nhập của người dùng, được người dùng sử dụng để đăng nhập vào hệ thống.

Chỉ có thể thêm một người dùng và tên người dùng đó phải là duy nhất (khác với các tên người dùng khác đã tồn tại trên hệ thống).

Ví dụ: để thêm người dùng mới có tên 'tecmint', hãy sử dụng lệnh sau.

[root@tecmint ~] #useradd tecmint

Khi chúng tôi thêm một người dùng mới vào Linux bằng lệnh 'useradd', nó sẽ được tạo ở trạng thái bị khóa và để mở khóa tài khoản người dùng đó, chúng tôi cần đặt mật khẩu cho tài khoản đó bằng 'password' yêu cầu.

[root@tecmint ~] #passwd tecmint

Thay đổi mật khẩu cho người dùng tecmint.

Mật khẩu UNIX mới:

Nhập lại mật khẩu UNIX mới:

passorwd: tất cả các mã thông báo xác thực được cập nhật thành công.

Sau khi người dùng mới được tạo, mục nhập của nó sẽ tự động được thêm vào tệp '/ etc / passwd'. Tệp được sử dụng để lưu trữ thông tin của người dùng và mục nhập phải như vậy.

tecmint: x: 1000: 1000: tecmint: /home/tecmint:/bin/bash

Mục trên chứa một tập hợp bảy trường được phân tách bằng dấu hai chấm, mỗi trường có ý nghĩa riêng. Hãy xem những trường này là gì:

Tên đăng nhập của người:dùng dùng để đăng nhập vào hệ thống. Nó phải dài từ 1 đến 32 ký tự.

Mật khẩu người dùng (hoặc ký tự x) được lưu trữ trong tệp /etc/shadow ở định dạng được mã hóa.

ID người dùng (UID): Mọi người dùng phải có ID người dùng (Mã số nhận dạng). Theo mặc định, UID 0 được dành riêng cho người dùng gốc và UID từ 1-99 được dành riêng cho các tài khoản được xác định trước khác. Các UID khác từ 100-999 được dành riêng cho các nhóm và tài khoản hệ thống.

ID nhóm (GID):nhóm ID (Số nhận dạng) chính là nhóm được lưu trữ trong tệp /etc/group.

Thông tin người dùng: Trường này là tùy chọn và cho phép bạn xác định thông tin bổ sung về người dùng. Ví dụ: tên đầy đủ của người dùng. Trường này được điền bằng lệnh 'finger'.

Home Directory: Vị trí tuyệt đối của thư mục chính của người dùng.

Shell: Vị trí tuyệt đối của shell của người dùng, tức là /bin/bash.

2. Tạo tài khoản người dùng với thư mục trang chủ khác

Theo mặc định lệnh useradd tạo một thư mục chính của người dùng trong thư mục /home với một tên người dùng. Ví dụ, chúng ta đã thấy ở trên thư mục chính mặc định cho người dùng 'tecmint' là '/home/tecmint'.

Tuy nhiên, hành động này có thể được thay đổi bằng cách sử dụng tùy chọn “-d” cùng với vị trí của thư mục chính mới (tức là /dữ liệu/dự án). Ví dụ: lệnh sau sẽ tạo một người dùng 'analha' với thư mục chính '/data/project'.

[root@tecmint ~] #useradd -d/data/project analha

[root@tecmint ~] #passwd analha

Bạn có thể xem thư mục chính của người dùng và các thông tin liên quan đến người dùng khác như id người dùng, id nhóm, shell và nhận xét.

[root@tecmint ~] #cat/etc/passwd | grep analha

analha: x: 1001: 1001 :: /data/project:/bin/bash

3. Tạo tài khoản người dùng với ID cụ thể

Trong Linux, mọi người dùng đều có UID riêng (Số nhận dạng duy nhất). Theo mặc định, bất cứ khi nào chúng ta tạo một tài khoản người dùng mới trong Linux, nó sẽ chỉ định userid 500, 501, 502, v.v.

Nhưng, chúng ta có thể tạo người dùng với userid tùy chỉnh với tùy chọn “-u”. Ví dụ: lệnh sau sẽ tạo một người dùng 'navin' với userid tùy chỉnh '1002'.

[root@tecmint ~] #useradd -u 1002 navin

Bây giờ, hãy xác minh rằng người dùng đã tạo bằng userid xác định (1002) bằng lệnh sau.

[root@tecmint ~] #cat/etc/passwd | grep navin

navin: x: 1002: 1002 :: /home/navin:/bin/bash

LƯU Ý: Đảm bảo giá trị của ID người dùng phải là duy nhất so với bất kỳ người dùng nào khác đã được tạo trên hệ thống.

4. Tạo tài khoản người dùng có ID nhóm cụ thể

Tương tự như vậy, mọi người dùng đều có GID (Mã định danh nhóm) của riêng họ. Chúng tôi cũng có thể tạo người dùng với ID nhóm cụ thể bằng tùy chọn “-g”.

Ở đây trong ví dụ này, chúng tôi sẽ thêm một người dùng 'tarunika' với một UID cụ thể và GID đồng thời với sự trợ giúp của các tùy chọn '-u' và '-g'.

[root@tecmint ~] #useradd -u 1005 -g tecmint tarunika

Bây giờ, hãy xem id người dùng được chỉ định và id nhóm trong tệp '/etc/passwd'.

[root@tecmint ~] #cat/etc/passwd | grep tarunika

tarunika: x: 1005: 1000 :: /home/tarunika: /bin/bash

Để xác minh GID của người dùng, hãy sử dụng lệnh id:

[root@tecmint ~] #id -gn tarunika

5. Thêm người dùng đến nhiều nhóm khác nhau

Tùy chọn '-G' được sử dụng để thêm một người dùng vào nhóm bổ sung. Mỗi tên nhóm được phân tách bằng dấu phẩy, không có dấu cách xen kẽ.

Ở đây trong ví dụ này, chúng tôi đang thêm một người dùng 'tecmint' vào nhiều nhóm như quản trị viên, webadmin và nhà phát triển.

[root@tecmint: ~] #quản trị viên groupadd

[root@tecmint: ~] #groupadd webadmin

[root@tecmint: ~] #nhà phát triển groupadd

[root@tecmint: ~] #usermod -a-quản trị viên G, webadmin, nhà phát triển tecmint

[root@tecmint: ~] #useradd -G quản trị viên, webadmin, nhà phát triển paddy

Tiếp theo, xác minh rằng nhiều nhóm được gán cho người dùng bằng lệnh id.

[root@tecmint ~] #id tecmint

uid = 1000 (tecmint) gid = 1000 (tecmint)

groups = 1000 (tecmint), 1007 (administrator), 1008 (webadmin), 1009 (Develop)

context = root: system_r: unaonfined_t: SystemLow-SystemHigh

6. Thêm người dùng mà không có thư mục chính

Trong một số trường hợp, chúng tôi không muốn chỉ định thư mục chính cho một người dùng, do một số lý do bảo mật. Trong tình huống như vậy, khi người dùng đăng nhập vào một hệ thống vừa mới khởi động lại, thư mục chính của nó sẽ là root. Khi một người dùng như vậy sử dụng lệnh su, thư mục đăng nhập của nó sẽ là thư mục chính của người dùng trước đó.

Để tạo người dùng không có thư mục chính của họ, '-M' được sử dụng. Ví dụ: lệnh sau sẽ tạo một người dùng 'shilpi' mà không có thư mục chính.

[root@tecmint ~] #useradd -M shilpi

Bây giờ, hãy xác minh rằng người dùng được tạo mà không có thư mục chính bằng cách sử dụng lệnh ls.

[root@tecmint ~] #ls -l /home/shilpi

ls: không thể truy cập /home/shilpi: Không có tệp hoặc thư mục như vậy

7. Tạo tài khoản người dùng có ngày hết hạn tài khoản

Theo mặc định, khi chúng tôi thêm người dùng với lệnh 'useradd' tài khoản người dùng không bao giờ hết hạn tức là ngày hết hạn của họ được đặt thành 0 (có nghĩa là không bao giờ hết hạn).

Tuy nhiên, chúng tôi có thể đặt ngày hết hạn bằng cách sử dụng tùy chọn “-e”, đặt ngày ở định dạng YYYY-MM-DD . Điều này rất hữu ích cho việc tạo tài khoản tạm thời trong một khoảng thời gian cụ thể.

Trong ví dụ này, chúng tôi tạo người dùng 'aparna' với ngày hết hạn tài khoản tức là ngày 27 tháng 8 năm 2021 ở định dạng YYYY-MM-DD .

[root@tecmint ~] #useradd -e 2021-08-27 aparna

Tiếp theo, xác minh tuổi của tài khoản và mật khẩu bằng lệnh 'chage' cho người dùng 'aparna' sau khi đặt ngày hết hạn tài khoản.

[root@tecmint ~] #chage -l aparna

Lần thay đổi mật khẩu cuối cùng : ngày 25 tháng 6 năm 2021

Mật khẩu hết hạn : không bao giờ

Mật khẩu không hoạt động : không bao giờ

Tài khoản hết hạn : ngày 27 tháng 8 năm 2021

Số ngày tối thiểu giữa các lần thay đổi mật khẩu : 0

Số ngày tối đa giữa các lần thay đổi mật khẩu : 99999

số ngày cảnh báo trước khi mật khẩu hết hạn:7

8. Tạo một tài khoản bằng Password ngày hết hạn

Các lập luận '-f' được sử dụng để xác định số ngày sau khi một mật khẩu hết hạn. Giá trị 0 không hoạt động tài khoản người dùng ngay sau khi mật khẩu hết hạn. Theo mặc định, giá trị hết hạn mật khẩu được đặt thành -1 có nghĩa là không bao giờ hết hạn.

Ở đây trong ví dụ này, chúng tôi sẽ đặt ngày hết hạn mật khẩu tài khoản tức là 45 ngày đối với người dùng 'mansi' bằng cách sử dụng các tùy chọn '-e' và '-f'.

[root@tecmint ~] #useradd -e 2014/04/27 -f 45 Mansi

9. Thêm một tài khoản với các đánh giá tùy chỉnh

Các tùy chọn '-c' cho phép bạn thêm ý kiến tùy chỉnh, chẳng hạn như tên đầy đủ của người dùng, số điện thoại, v.v. vào tệp /etc/passwd. Nhận xét có thể được thêm vào dưới dạng một dòng duy nhất mà không có bất kỳ khoảng trắng nào.

Ví dụ: lệnh sau sẽ thêm một người dùng 'mansi' và sẽ chèn tên đầy đủ của người dùng đó, Manis Khurana, vào trường nhận xét.

[root@tecmint ~] #useradd -c "Manis Khurana" mansi

Bạn có thể xem nhận xét của mình trong tệp '/etc/passwd' trong phần nhận xét.

[root@tecmint ~] #tail -1 / etc / passwd

mansi: x: 1010: 1013: Manis Khurana: /home/mansi: /bin/sh

10. Tạo User Login Shell trong Linux

Đôi khi, chúng tôi thêm người dùng không liên quan gì đến trình đăng nhập hoặc đôi khi chúng tôi yêu cầu gán các trình thông báo khác nhau cho người dùng của chúng tôi. Chúng tôi có thể chỉ định các trình thông báo đăng nhập khác nhau cho từng người dùng với tùy chọn “-s”.

Ở đây trong ví dụ này, sẽ thêm một người dùng 'tecmint' mà không có trình báo đăng nhập, tức là trình báo '/sbin/nologin'.

[root@tecmint ~] #useradd -s /sbin/nologin tecmint

Bạn có thể kiểm tra trình báo đã gán cho người dùng trong tệp '/etc/passwd'.

[root@tecmint ~] #tail -1/etc/passwd

tecmint: x: 1011: 1014 :: /home/tecmint: /sbin/nologin

Phần II - 5 Nâng cao Cách sử dụng lệnh useradd

11. Thêm người dùng với danh mục trang chủ cụ thể, trình báo mặc định và đánh giá tùy chỉnh

Lệnh sau sẽ tạo một người dùng 'ravi' với thư mục chính '/var/www/tecmint', trình báo mặc định /bin/bash và thêm thông tin bổ sung về người dùng.

[root@tecmint ~] #useradd -m -d /var/www/ravi -s /bin/bash -c "TecMint Owner" -U ravi

Trong lệnh trên tùy chọn '-m, -d' tạo một người dùng với một thư mục chính được chỉ định và tùy chọn “-s” đặt trình báo mặc định của người dùng tức là /bin/bash. Các tùy chọn '-c' cho biết thêm các thông tin thêm về người dùng và lập luận '-U' tạo/thêm một nhóm có cùng tên như là người dùng.

12. Thêm người dùng với thư mục chính, trình báo tùy chỉnh, đánh giá tùy chỉnh và UID/GID

Lệnh tương tự như trên, nhưng ở đây chúng tôi định nghĩa trình báo là '/bin/zsh' và tùy chỉnh UID và GID cho người dùng 'tarunika' . Trong đó xác định '-u' của người dùng mới UID (tức là 100) và trong khi '-g' xác định GID (tức là 1000).

[root@tecmint ~] #useradd -m -d /var/www/tarunika -s /bin/zsh -c "TecMint Technical Writer" -u 1000 -g 100 tarunika

13. Thêm người dùng với danh mục trang chủ, no shell, đánh giá tùy chỉnh và ID người dùng

Lệnh sau rất giống với hai lệnh trên, điểm khác biệt duy nhất là ở đây, chúng tôi vô hiệu hóa shell đăng nhập cho người dùng có tên 'avishek' bằng tùy chỉnh User ID (tức là 1019) .

Ở đây tùy chọn “-s” thêm shell mặc định /bin/bash, nhưng trong trường hợp này, chúng tôi đặt đăng nhập thành '/usr/sbin/nologin'. Điều đó có nghĩa là người dùng 'avishek' sẽ không thể đăng nhập vào hệ thống.

[root@tecmint ~] #useradd -m -d /var/www/avishek -s /usr/sbin/nologin -c "Người viết kỹ thuật TecMint Sr." -u 1019 avishek

14. Thêm người dùng với Home Directory, shell, custom shell/comment và userid

Thay đổi duy nhất trong lệnh này là, chúng tôi đã sử dụng tùy chọn “-k” để đặt thư mục khung tùy chỉnh tức là /etc/custom.skell, không phải là /etc/skell  mặc định. Chúng tôi cũng đã sử dụng tùy chọn “-s” để xác định shell khác tức là /bin/tcsh cho người dùng 'navin'.

[root@tecmint ~] #useradd -m -d /var/www/navin -k /etc/custom.skell -s /bin/tcsh -c "Không có Thành viên Hoạt động nào của TecMint" -u 1027 navin

15. Thêm người dùng mà không có thư mục chính, không có shell, không có nhóm và nhận xét tùy chỉnh

Lệnh sau rất khác với các lệnh khác được giải thích ở trên. Ở đây chúng tôi đã sử dụng tùy chọn “-M” để tạo người dùng không có thư mục chính của người dùng và đối số “-N” được sử dụng để yêu cầu hệ thống chỉ tạo tên người dùng (không có nhóm). Đối số '-r' là để tạo người dùng hệ thống.

[root@tecmint ~] #useradd -M -N -r -s /bin/false -c "Thành viên TecMint bị vô hiệu hóa"

Để biết thêm thông tin và tùy chọn về useradd, hãy chạy lệnh 'useradd' trên thiết bị đầu cuối để xem Tùy chọn có sẵn.

# useradd

+ Fanpage: https://www.facebook.com/nhanhoacom

+ Chỉ đường: https://g.page/nhanhoacom

+ Chương trình khuyến mãi mới nhất: https://nhanhoa.com/khuyen-mai.html

————————————————————

CÔNG TY TNHH PHẦN MỀM NHÂN HÒA

https://nhanhoa.com

Hotline: 1900 6680

Trụ sở chính: Tầng 4 - Tòa nhà 97-99 Láng Hạ, Đống Đa, Hà Nội

Tel: (024) 7308 6680 – Email: sales@nhanhoa.com

Chi nhánh TP. Hồ Chí Minh: 270 Cao Thắng (nối dài), Phường 12, Quận 10, Tp.HCM

Tel: (028) 7308 6680 – Email: hcmsales@nhanhoa.com

Chi nhánh Vinh - Nghệ An: Tầng 2 Tòa nhà Sài Gòn Sky, ngõ 26 Nguyễn Thái Học, phường Đội Cung, TP. Vinh, Nghệ An

Tel: 0915221384 – Email: contact@nhanhoa.com

Bài viết liên quan
20/11/2024
Các fan cứng của Nhân Hòa đã biết Chương trình Black Friday 2024 sẽ có mức ưu đãi khủng là bao nhiêu % và áp dụng cho những...
19/11/2024
Đừng để website của bạn bị "tắt đèn" vì hết hạn tên miền! Hãy chủ động gia hạn tên miền để đảm bảo sự liên...
16/11/2024
Không phải bàn cãi việc WordPress đang là một trong những nền tảng hàng đầu trong việc xây dựng website hiện nay. Và giải...
Chuyên nghiệp và tận tình
Hỗ Trợ Trực Tuyến 24/7
Đội ngũ chuyên gia giúp xử lý vấn đề kỹ thuật để website của bạn luôn hoạt động tốt và chạy nhanh. Bất kỳ lúc nào.
Kết nối với Nhân Hoà

Map Tầng 4 - Toà nhà 97 - 99 Láng Hạ, Quận Đống Đa, Thành Phố Hà Nội

Phone Điện thoại: 1900 6680 - (024) 7308 6680

Mail Mail: sales@nhanhoa.com

Hotline Phản ánh chất lượng dịch vụ: 091 140 8966

Map 927/1 CMT8, Phường 7, Quận Tân Bình, Thành phố Hồ Chí Minh

Phone Điện thoại: 1900 6680 - (028) 7308 6680

Mail Mail: hcmsales@nhanhoa.com

Hotline Phản ánh chất lượng dịch vụ: 091 140 8966

Map Tầng 2 Tòa nhà Sài Gòn Sky, ngõ 26 Nguyễn Thái Học, phường Đội Cung, TP. Vinh, Nghệ An

Phone Điện thoại: 1900 6680 - (024) 7308 6680 - nhánh 6

Mail Mail: contact@nhanhoa.com

Hotline Phản ánh chất lượng dịch vụ: 091 140 8966

Kết nối với Nhân Hoà
Gọi lại cho tôi
Gọi miễn phí
Gọi miễn phí
×
Thông báo

Đăng nhập thành công!