Thứ Sáu, 28 tháng 7, 2023

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.

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.

Mục lục

  • 1. Cú pháp lệnh usermod trong Linux
  • 2. Sử dụng usermod Linux để thêm người dùng vào group
  • 3. Sử dụng usermod Linux để thay đổi nhóm chính
  • 4. Sử dụng usermod đổi thông tin người dùng
  • 5. Dùng usermod để thay đổi thư mục home của người dùng
  • 6. Dùng usermod thay đổi shell script cho user
  • 7. Dùng usermod thay đổi UID
  • 8. Dùng usermod thay đổi tên đăng nhập của người dùng
  • 9. Dùng usermod thiết lập ngày hết hạn cho người dùng
  • 10. Dùng lệnh usermod khóa và mở khóa tài khoản

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

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

Bài viết này được đăng tại [tranvanbinh.vn]

1
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.

1
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.

1
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.

1
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.

1
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.

1
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.

1
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:

1
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é.

1
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.

1
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:

1
usermod -s SHELL USER

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

1
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é.

1
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.

1
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:

1
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.

1
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é.

1
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.

1
sudo chage -l freetuts

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

1
2
3
4
5
6
7
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.

1
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.

1
2
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.

1
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.

=============================
* KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE trực tiếp từ tôi giúp bạn bước đầu trở thành những chuyên gia DBA, đủ kinh nghiệm đi thi chứng chỉ OA/OCP, đặc biệt là rất nhiều kinh nghiệm, bí kíp thực chiến trên các hệ thống Core tại VN chỉ sau 1 khoá học.
* CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
* Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile/Zalo: 0902912888
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: https://www.youtube.com/@binhguru
👨 Tiktok: https://www.tiktok.com/@binhguru
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhguru
👨 Podcast: https://www.podbean.com/pu/pbblog-eskre-5f82d6
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội

=============================
oracle tutorial, học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,sql tutorial, khóa học pl/sql tutorial, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail,oracle RAC, ASM, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle oca, oracle ocp, oracle ocm , oracle weblogic, postgresql tutorial, mysql tutorial, mariadb tutorial, ms sql server tutorial, nosql, mongodb tutorial, oci, cloud, middleware tutorial, hoc solaris tutorial, hoc linux tutorial, hoc aix tutorial, unix tutorial, securecrt, xshell, mobaxterm, putty

ĐỌC NHIỀU

Trần Văn Bình - Oracle Database Master