Lệnh usermod trong linux với các ví dụ dễ hiểu

Lệnh usermod trong Linux là một công cụ mạnh mẽ để chỉnh sửa thông tin tài khoản người dùng đã tồn tại. Bạn có thể dùng usermod trong linux để thay đổi tên đăng nhập, nhóm, thư mục home và nhiều thuộc tính khác. Hãy cẩn thận khi sử dụng lệnh này, vì sai sót có thể ảnh hưởng đến quyền truy cập của người dùng. Nó giúp quản trị viên hệ thống dễ dàng cập nhật thông tin người dùng một cách linh hoạt.

Lệnh usermod trong linux là gì?

Lệnh usermod trong Linux là một command usermod in linux mạnh mẽ, cho phép bạn chỉnh sửa thông tin tài khoản người dùng đã tồn tại trên hệ thống. Bạn có thể thay đổi tên đăng nhập, mật khẩu, nhóm chính, nhóm phụ, thư mục home và nhiều thuộc tính khác của người dùng một cách dễ dàng. Sử dụng usermod giúp quản lý tài khoản người dùng hiệu quả hơn, đảm bảo hệ thống được bảo mật và cấu hình đúng theo nhu cầu. Hãy cẩn thận khi sử dụng lệnh này, vì những thay đổi sai sót có thể ảnh hưởng đến quyền truy cập của người dùng.

Sửa đổi Thuộc tính Tài khoản Người dùng

Trong bước này, chúng ta sẽ tìm hiểu cách sửa đổi thuộc tính tài khoản người dùng bằng lệnh usermod trong Linux.

Lệnh usermod được dùng để sửa đổi một tài khoản người dùng đã tồn tại. Chúng ta có thể dùng nó để thay đổi tên đăng nhập, thư mục home, shell, ngày hết hạn mật khẩu và các thuộc tính khác.

Hãy bắt đầu bằng cách sửa đổi tên đầy đủ và shell của người dùng:

sudo usermod -c "John Doe" -s /bin/zsh labex

Ví dụ về đầu ra:

No changes

Tùy chọn -c đặt tên đầy đủ của người dùng, và tùy chọn -s đặt shell đăng nhập của người dùng thành /bin/zsh.

Tiếp theo, hãy thay đổi thư mục home của người dùng:

sudo usermod -d /home/newuser labex

Ví dụ về đầu ra:

usermod: user 'labex' does not exist

Ồ, người dùng labex không tồn tại. Hãy tạo người dùng trước:

sudo useradd -m -s /bin/zsh labex

Bây giờ, hãy thử thay đổi thư mục home một lần nữa:

sudo usermod -d /home/newuser labex

Ví dụ về đầu ra:

No changes

Tùy chọn -d đặt thư mục home của người dùng thành /home/newuser.

Cuối cùng, hãy vô hiệu hóa tài khoản người dùng bằng cách khóa mật khẩu:

sudo usermod -L labex

Ví dụ về đầu ra:

No changes

Tùy chọn -L khóa mật khẩu của người dùng, và vô hiệu hóa tài khoản.

Thay Đổi Nhóm Chính của Người Dùng

Trong bước này, chúng ta sẽ tìm hiểu cách thay đổi primary group của user bằng lệnh usermod.

Primary group là nhóm mặc định mà một user thuộc về, rất quan trọng trong hệ thống.

Khi user tạo file hoặc thư mục mới, chúng sẽ thuộc quyền sở hữu của user và primary group của user đó.

Hãy bắt đầu bằng việc tạo một group mới có tên là "developers" nhé:

sudo groupadd developers

Ví dụ về kết quả:

No output

Bây giờ, hãy thêm user labex vào group "developers" làm primary group:

sudo usermod -g developers labex

Ví dụ về kết quả:

No changes

Option -g dùng để thiết lập primary group của user thành "developers" đó.

Để kiểm tra thay đổi, chúng ta có thể xem thông tin group membership của user:

id labex

Ví dụ về kết quả:

uid=1000(labex) gid=1001(developers) groups=1001(developers)

Như bạn thấy, primary group của user bây giờ là "developers" rồi nè.

Tiếp theo, hãy tạo một file mới và kiểm tra quyền sở hữu của nó xem sao:

touch ~/project/test.txt
ls -l ~/project/test.txt

Ví dụ về kết quả:

-rw-r--r-- 1 labex developers 0 May 15 12:34 /home/labex/project/test.txt

File thuộc quyền sở hữu của user labex và group "developers", đúng như mong đợi.

Vô hiệu hóa thời gian hết hạn của tài khoản người dùng

Trong bước này, chúng ta sẽ tìm hiểu cách vô hiệu hóa ngày hết hạn cho tài khoản người dùng bằng lệnh usermod.

Thông thường, các tài khoản người dùng trong Linux không có ngày hết hạn được thiết lập sẵn.

Tuy nhiên, bạn có thể đặt ngày hết hạn cho tài khoản, sau thời gian đó tài khoản sẽ bị vô hiệu hóa.

Để vô hiệu hóa ngày hết hạn cho người dùng labex, ta dùng lệnh usermod với tùy chọn -e như sau:

sudo usermod -e "" labex

Ví dụ về kết quả:

No changes

Tùy chọn -e dùng để thiết lập ngày hết hạn cho tài khoản người dùng.

Khi ta đặt nó thành chuỗi rỗng "", ta đã vô hiệu hóa ngày hết hạn một cách hiệu quả.

Để kiểm tra xem ngày hết hạn đã bị vô hiệu hóa hay chưa, dùng lệnh chage để xem thông tin tài khoản:

sudo chage -l labex

Ví dụ về kết quả:

Last password change                                    : May 15, 2023
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

Bạn có thể thấy, trường "Account expires" (Tài khoản hết hạn) được đặt thành "never" (không bao giờ).

Điều này cho thấy việc hết hạn tài khoản người dùng đã được vô hiệu hóa thành công.

Bây giờ, hãy tạo một file và kiểm tra quyền sở hữu của nó:

touch ~/project/test2.txt
ls -l ~/project/test2.txt

Ví dụ về kết quả:

-rw-r--r-- 1 labex developers 0 May 15 12:34 /home/labex/project/test2.txt

File này thuộc sở hữu của người dùng labex và nhóm "developers" như mong đợi.

Kết luận cho linux usermod command

```html

Vậy là chúng ta đã cùng nhau khám phá những điều thú vị về lệnh usermod trong Linux rồi! Hy vọng qua bài viết này, bạn đã nắm vững cách thay đổi thông tin người dùng một cách dễ dàng. Việc quản lý tài khoản người dùng trở nên đơn giản hơn bao giờ hết, giúp bạn kiểm soát hệ thống tốt hơn. Hãy nhớ rằng, việc sử dụng linux usermod command cần cẩn trọng để tránh gây ra lỗi hệ thống. Thực hành thường xuyên sẽ giúp bạn quen thuộc và tự tin hơn khi sử dụng lệnh này. Đừng ngần ngại thử nghiệm các tùy chọn khác nhau để hiểu rõ hơn về cách chúng hoạt động. Chúc bạn thành công trên con đường chinh phục Linux và quản lý hệ thống một cách hiệu quả! Hãy tiếp tục khám phá những lệnh hữu ích khác để trở thành một người dùng Linux thành thạo nhé. Hẹn gặp lại bạn trong những bài viết tiếp theo với nhiều kiến thức thú vị hơn nữa!

```
Last Updated : 15/10/2025