Dự án mới của mình là gamehow.net, mời anh em ghé thăm và góp ý ạ.

Cách dùng lệnh usermod trong Linux

Trong bài này mình sẽ hướng dẫn cách sử dụng lệnh usermod trong Linux, đây là lệnh được sử dụng để thay đổi thông tin về người dùng trong hệ thống Linux.

usermod là công cụ dòng lệnh cho phép bạn sửa đổi thông tin đăng nhập của người dùng.

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Bài viết này trình bày cách sử dụng lệnh usermod để thêm người dùng vào nhóm, thay đổi user shell, tên đăng nhập, thư mục home và nhiều tính năng khác.

1. Cú pháp lệnh usermod trong Linux

Cú pháp cơ bản của lệnh usermod như sau:

usermod [options] USER

Trong đó USER là tên của người dùng cần đổi thông tin, options là những tùy chọn riêng cho lệnh đó. Chúng ta sẽ lần lượt tìm hiểu những tùy chọn trong các phần tiếp theo.

Cũng lưu ý rằng chỉ có tài khoản root hoặc tài khoản thuộc nhóm root có quyền sudo mới chạy được lệnh này.

2. Sử dụng usermod Linux để thêm người dùng vào group

Công dụng đầu tiên của lệnh usermod trong Linux là dùng để thêm user vào group.

Để thêm một user có sẵn trong hệ thống vào một nhóm có sẵn thì chúng ta sử dụng hai tùy chọn -a -G.

usermod -a -G GROUP USER

Nếu bạn muốn thêm người dùng vào nhiều nhóm cùng một lúc thì hãy đặt các nhóm sau tùy chọn -G và được phân cách bằng dấu phẩy (không có khoảng trắng xen vào).

Ví dụ dưới đây mình thêm user freetuts vào nhóm games.

sudo usermod -a -G games freetuts

Lưu ý rằng hãy luôn sử dụng tùy chọn -a (append) khi thêm người dùng vào một nhóm mới, nếu không thì người dùng sẽ bị xóa khỏi các nhóm không được liệt kê sau tùy chọn -G (tức là sẽ xóa user ra khỏi các nhóm khác).

Nếu người dùng hoặc nhóm không tồn tại trên hệ thống thì lệnh usermod sẽ hiển thị một cảnh báo.

3. Sử dụng usermod Linux để thay đổi nhóm chính

Để thay đổi nhóm chính cho người dùng thì hãy chạy lệnh usermod kết hợp với tùy chọn -g đặt phía trước tên user và tên group.

sudo usermod -g GROUP USER

Ví dụ dưới đây mình đổi group chính của tài khoản freetuts thành group developers.

usermod -g developers linuxize

Mỗi người dùng sẽ có một nhóm chính và nhiều nhóm phụ.

4. Sử dụng usermod đổi thông tin người dùng

Để thay đổi thông tin bổ sung của người dùng thì hãy chạy lệnh usermod kết hợp với tùy chọn -c.

usermod -c "GECOS Comment" USER

Lệnh dưới đây mình thay đổi thông tin bổ sung cho người dùng freetuts.

usermod -c "Admin Freetuts Blog" freetuts

Những thông tin này sẽ được lưu trữ trong file /etc/passwd.

5. Dùng usermod để thay đổi thư mục home của người dùng

Lệnh usermod cũng được dùng để thay đổi thư mục home cho người dùng.

Trong hầu hết các bản phối của Linux thì thư mục home sẽ có tên trùng với tên tài khoản của người dùng, và nó được đặt trong thư mục /home.

Vì một lý do nào đó mà bạn muốn thay đổi thư mục home này thì hãy sử dụng tùy chọn -d với cú pháp sau:

usermod -d HOME_DIR USER

Mặc định thì lệnh này sẽ không di chuyển dữ liệu từ thư mục cũ sang thư mục mới. Để di chuyển nội dung thì bạn phải sử dụng thêm tùy chọn -m nhé.

usermod -d HOME_DIR -m USER

Ví dụ dưới đây mình đã đổi thư mục home cho user www-data. thành /var/www.

usermod -d /var/www www-data

6. Dùng usermod thay đổi shell script cho user

Mỗi user sẽ có một file shell riêng và nó sẽ được kích hoạt mỗi khi user này đăng nhập vào hệ thống.

Để thay đổi file shell này thì bạn hãy sử dụng lệnh usermod kết hợp với tùy chọn -s như sau:

usermod -s SHELL USER

Ví dụ dưới đây mình đã đổi shell của user thành Zsh.

sudo usermod -s /usr/bin/zsh freetuts

Bạn có thể xem tất cả các shell có sẵn trên hệ thống của mình trong file /etc/shells.

7. Dùng usermod thay đổi UID

Lệnh usermod trong Linux cũng có thể dùng để thay đổi UID.

UID chính là user identifier, nó chính là là mã số của user, giốn như mã chứng minh nhân dân của bạn vậy đó.

Để thay đổi UID thì ta sử dụng tham số -u nhé.

usermod -u UID USER

8. Dùng usermod thay đổi tên đăng nhập của người dùng

Bạn cũng có thể sử dụng lệnh usermod trong Linux để thay đổi tên đăng nhập của user, bằng cách sử dụng tham số -l.

usermod -l NEW_USER USER

Lưu ý là khi đổi username thì đổi luôn cả thư mục home cho user này nhé.

Bạn có thể tham khảo thêm bài viết cách đổi tên user trong Linux để biết thêm thông tin nhé.

9. Dùng usermod thiết lập ngày hết hạn cho người dùng

Ngày hết hạn chính là ngày mà user sẽ bị khóa. Để đặt ngày hết hạn của người dùng thì hãy sử dụng tùy chọn -e:

sudo usermod -e DATE USER

Trong đó DATE sẽ có định dạng là: YYYY-MM-DD.

Ví dụ: Khóa người dùng freetuts kể từ ngày 2022-02-21.

sudo usermod -e "2022-02-21" freetuts

Để mở tài khoản lại thì bạn hãy để rỗng ở phần DATE nhé.

sudo usermod -e "" freetuts

Để xem ngày hết hạn của một user nào đó thì sử dụng tùy chọn -l.

sudo chage -l freetuts

Kết quả sẽ có dạng như sau:

Last password change					: Jul 24, 2018
Password expires					: never
Password inactive					: never
Account expires						: never
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

Ngày hết hạn sẽ được lưu trữ trong file /etc/shadow.

10. Dùng lệnh usermod khóa và mở khóa tài khoản

Tùy chọn -L cho phép bạn khóa hoặc mở khóa một tài khoản bất kì trên Linux.

usermod -L USER

Lệnh này sẽ thêm một dấu chấm thang vào phần mật khẩu mã hóa của người dùng nên không thể đăng nhập được. Nhưng họ vẫn có thể sử dụng những phương pháp đăng nhập khác như sử dụng key-based authentication.

Nếu bạn muốn vô hiệu hóa tất cả các phương thức đăng nhập thì phải thiết lập ngày hết hạn cho nó thành 1.

sudo usermod -L freetuts
sudo usermod -L -e 1 freetuts

Để mở khóa thì chạy lệnh với tùy chọn -U.

usermod -U USER

Như vậy là mình đã hướng dẫn xong cách sử dụng lệnh usermod trong Linux, đây là lệnh dùng để thay đổi thông tin của người dùng rất hữu ích.

Cùng chuyên mục:

Cách dùng lệnh Users trong Linux để xem user đang online

Cách dùng lệnh Users trong Linux để xem user đang online

Nếu bạn đang là quản trị viên thì việc quản lý thông tin / xem…

Cách sử dụng lệnh Wall trong Linux

Cách sử dụng lệnh Wall trong Linux

Wall là một công cụ dòng lệnh giúp hiển thị thông báo đến tất cả…

Cách dùng lệnh Whereis trong Linux

Cách dùng lệnh Whereis trong Linux

Whereis là một tiện ích dòng lệnh command line, nó cho phép bạn tìm ..

Cách sử dụng lệnh Which trong Linux

Cách sử dụng lệnh Which trong Linux

Linux dùng lệnh which để xác định vị trí file thực thi của lệnh mà…

Cách sử dụng lệnh whoami trong Linux

Cách sử dụng lệnh whoami trong Linux

Giống như tên gọi của nó, lệnh whoami in tên người dùng đang chạy ...

Cách dùng lệnh zcat trong Linux

Cách dùng lệnh zcat trong Linux

Mặc dù tính năng nén file rất hữu ích vì nó giúp ta tiết kiệm…

Hiểu rõ hơn về chmod 777 trong Linux

Hiểu rõ hơn về chmod 777 trong Linux

Bạn đang xây dựng một website và sử dụng tính năng upload ...

Cách sử dụng lệnh tail trong Linux

Cách sử dụng lệnh tail trong Linux

Mặc định thì lệnh tail sẽ hiển thị 10 dòng cuối cùng của file, thông…

Cách sử dụng lệnh Head trong Linux

Cách sử dụng lệnh Head trong Linux

Trong quá trình quản trị dữ liệu trên Linux đôi khi bạn muốn xem nhanh…

Cách sử dụng lệnh Whatis trong Linux

Cách sử dụng lệnh Whatis trong Linux

Trong bài này chúng ta sẽ tìm hiểu lệnh whatis trong ...

Cách sử dụng lệnh kill trong Linux

Cách sử dụng lệnh kill trong Linux

Linux là một hệ điều hành rất nhanh nhưng không phải lúc nào nó không…

Cách dùng lệnh who trong Linux

Cách dùng lệnh who trong Linux

Who là một công cụ dòng lệnh command-line, được ...

Cách dùng lệnh basename trong Linux

Cách dùng lệnh basename trong Linux

basename là một tiện ích dòng lệnh (command line) dùng để lấy ...

Cách sử dụng lệnh gzip trên Linux

Cách sử dụng lệnh gzip trên Linux

Gzip là một trong những thuật toán nén file phổ biến nhất, nó cho phép…

Cách dùng lệnh wait trong Linux

Cách dùng lệnh wait trong Linux

Wait là lệnh dùng để đợi một thời gian cho tới khi công việc nào…

Cách dùng lệnh ping trong Linux

Cách dùng lệnh ping trong Linux

Lệnh ping là một trong những công cụ được sử dụng nhiều nhất để khắc…

Cách dùng lệnh sleep trong Linux

Cách dùng lệnh sleep trong Linux

sleep là một tiện ích command line cho phép lập trình viên ..

Các ví dụ học Bash Script trong Linux cơ bản nhất

Các ví dụ học Bash Script trong Linux cơ bản nhất

Bash Script đuọc xem là mã code lập trình trên Linux ...

Vòng lặp until trong Shell Script

Vòng lặp until trong Shell Script

Vòng lặp while trong Shell Script

Vòng lặp while trong Shell Script

Trong Linux script, vòng lặp while được sử dụng trong ...

Top