Cách sử dụng lệnh usermod để đổi tên user trong Linux

Chúng ta sử dụng lệnh usermod để thay đổi tên người dùng trong hệ điều hành Linux. Lệnh này sửa đổi file chứa thông tin tài khoản trên hệ thống để lưu lại thông tin mới, đó chính là file /etc/passwd.

Lưu ý:  Đây là file đặc biệt nên bạn không được phép sửa nó bằng các ứng dụng chỉnh sửa như VI Editor. Bởi vì cấu trúc của file cực kì quy tắc nên phải để Linux tự điều chính.

Ngoài ra, khi đổi tên user thì thư mục home cũng phải thay đổi theo để phản ánh đúng thư mục home của người dùng. Và để chắc ăn thì trước tiên bạn hãy lấy danh sách user trên Linux trước, tên mà bạn đổi sang không được trùng với tên trong danh sách này.

Đổi tên user trong Linux

Trước tiên hãy chắc chắn rằng user bạn cần đổi tên phải thoát hoàn toàn ra khỏi hệ thống Linux, và không có bất kì một tiến trình nào đang xử lý dưới quyền của user đó.

Ngoài ra, trước khi xóa cũng nên backup lại dữ liệu để lỡ sau này còn phục hồi nhé. Sau đây là các bước thực hiện.

Giả sử mình cần đổi user tên từ Tom sang jerry trên Linux nhé.

Bước 1: Xem thông tin liên quan đến người dùng, các lệnh hỗ trợ cần thiết.

Bạn hãy sử dụng lệnh id để xem những ràng buộc liên quan đến người dùng cần xóa.

id tom

Tiếp theo sử dụng lệnh Grep để trích xuất thông tin đăng nhập của người dùng nằm trong file /etc/passwd file.

grep '^tom:' /etc/passwd

Xem thông tin các group mà user tom đang thuộc về:

grep 'tom' /etc/group
groups tom

Tìm thư mục chính của người dùng tên tom.

ls -ld /home/tom/

Cuối cùng, hãy xóa tất cả những tiến trình liên quan đến user Tom để đảm bảo an toàn.

ps aux | grep tom
ps -u tom

Bước 2: Tìm và đổi tên người dùng từ Tom sang Jerry

Bạn hãy chạy lệnh sau:

usermod -l jerry tom

Bạn sẽ gặp lỗi như sau nếu user Tom vẫn đang hoạt động, hoặc có một số task nào đó đang chạy dưới quyền của user Tom.

usermod: user tom is currently used by process 6886

Lúc này thì bạn cần chạy các lệnh sau để kill toàn bộ tiến trình và logout người dùng Tom.

pkill -u tom pid
pkill -9 -u tom
usermod -l jerry tom

Bước 3: Đổi tên thư mục Home trên Linux

Ta sử dụng lần lượt các lệnh sau: Trong đó lệnh usermod dùng để đổi tên thư mục home, hai lệnh còn lại để tham khảo thông tin.

usermod -d /home/jerry -m jerry
id jerry
ls -ld /home/jerry

Bước 4: Đổi UID nếu muốn

Chạy các lệnh sau để đổi UID của user. Và tương ự, lệnh id tom dùng để thao khảo thông tin trước và sau khi đổi.

id tom
usermod -u 10000 tom
id tom

Nếu bạn muốn xem thêm thông tin về lệnh help thì hãy đặt option --help vào đằng sau lệnh usermod để xem thông tin phần help.

Chúc bạn thành công!

Nguồn: freetuts

Mọi người cùng tìm kiếm: usermod, chuyển user trong linux, usermod -g, usermod -s, usermod linux