Liên hệProfile
Danh mục

Mục Lục

    Cách dùng lệnh id trong Linux để kiểm tra thông tin user và quyền truy cập nhanh chóng

    Nguyễn Hưng

    Ngày đăng:

    16/03/2026

    Cập nhật lần cuối:

    16/03/2026

    Lượt xem:
    Chia sẻ
    Đánh giá
    5/5 - (1 bình chọn)

    Nguyễn Hưng

    Lượt xem:
    Ngày đăng:

    16/03/2026

    Cập nhật lần cuối:

    16/03/2026

    Mục lục

    Lệnh id trong Linux là công cụ dòng lệnh dùng để hiển thị thông tin định danh của user như UID, GID và các group mà user đó thuộc về. Thông qua lệnh này, bạn có thể nhanh chóng kiểm tra quyền truy cập và cấu hình phân quyền của tài khoản trong hệ thống. Trong bài viết này, mình sẽ hướng dẫn bạn cách dùng lệnh id để kiểm tra thông tin user và quyền truy cập một cách nhanh chóng và chính xác.

    Những điểm chính

    • Khái niệm: Hiểu rõ lệnh id trong Linux được sử dụng để hiển thị chi tiết các thông tin định danh quan trọng.
    • Các tùy chọn phổ biến: Nắm vững bảng tham số hỗ trợ để chủ động lọc và hiển thị chính xác thông tin định danh người dùng theo nhu cầu quản trị.
    • Ví dụ sử dụng thực tế: Thành thạo các kỹ năng kiểm tra thông tin tài khoản hiện hành hoặc bất kỳ người dùng nào khác qua các ví dụ thực tế.
    • Xử lý lỗi thường gặp: Biết cách nhận diện và khắc phục nhanh các sự cố phổ biến như lỗi “no such user” hoặc tình trạng cập nhật thiếu thông tin nhóm phụ.
    • Lưu ý khi sử dụng: Nắm được các nguyên tắc kỹ thuật quan trọng về phân biệt loại ID và cách cập nhật phiên làm việc sau khi thay đổi phân quyền.
    • Câu hỏi thường gặp: Giải đáp các thắc mắc liên quan đến lệnh id trong Linux.

    Lệnh id trong Linux là gì?

    Lệnh id trong Linux được sử dụng để hiển thị chi tiết các thông tin định danh quan trọng như ID người dùng (UID), ID nhóm chính (GID) và danh sách các nhóm phụ mà tài khoản đó tham gia. Nhờ khả năng cung cấp thông tin rõ ràng về quyền hạn thực tế của user, lệnh id trở thành công cụ hữu ích trong việc kiểm soát bảo mật và gỡ lỗi các vấn đề liên quan đến quyền truy cập file hay thư mục. Cụ thể như:

    • Kiểm tra quyền hạn cụ thể của một user.
    • Xác định chính xác user đang thuộc những group nào.
    • Debug các vấn đề về phân quyền hoặc truy cập file.
    • Kiểm tra quyền sudo của tài khoản.
    • Hỗ trợ quản trị người dùng trên server Linux.
    Lệnh id trong Linux được sử dụng để hiển thị chi tiết các thông tin định danh quan trọng
    Lệnh id trong Linux được sử dụng để hiển thị chi tiết các thông tin định danh quan trọng

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

    id [OPTIONS] [USERNAME]

    Trong đó:

    • [OPTIONS]: Các tùy chọn để giới hạn hoặc thay đổi kiểu thông tin được hiển thị.
    • [USERNAME]: Tên người dùng cần xem thông tin, nếu bỏ trống thì lệnh sẽ lấy thông tin của user hiện đang đăng nhập.

    Các tùy chọn phổ biến của lệnh id trong Linux

    Dưới đây là các tùy chọn thường được sử dụng của lệnh id. Ngoài ra, bạn có thể gõ lệnh man id để tham khảo thêm các tùy chọn khác của lệnh này:

    Tùy chọnChức năng
    -u/–userChỉ hiển thị chỉ số UID.
    -g/–groupChỉ hiển thị chỉ số GID (nhóm chính).
    -G/–groupsHiển thị tất cả group ID (cả chính và phụ) của user.
    -n/–nameHiển thị tên thay vì số ID, thường được sử dụng khi kết hợp với -u, -g, -G.
    -r/–realHiển thị ID thực thay vì ID hiệu lực.
    -z/–zeroPhân tách các trường kết quả bằng ký tự NULL thay vì khoảng trắng hoặc xuống dòng
    -Z/–contextHiển thị security context gắn với tiến trình hoặc user

    1. Kiểm tra thông tin của user hiện tại

    Để xem toàn bộ thông tin định danh của tài khoản bạn đang sử dụng, bạn hãy gõ lệnh sau:

    id
    Kiểm tra thông tin của user hiện tại
    Kiểm tra thông tin của user hiện tại

    Giải thích kết quả:

    • uid=1001: ID định danh của user.
    • gid=1002: Group chính của user.
    • groups: Các group phụ mà user này đang tham gia.

    2. Kiểm tra thông tin của user khác

    Nếu bạn muốn xem thông tin định danh của người dùng có tên là “tech”, hãy sử dụng lệnh sau:

    Id tech
    Kiểm tra thông tin của user khác
    Kiểm tra thông tin của user khác

    3. Chỉ hiển thị UID

    Trong trường hợp bạn chỉ cần lấy chỉ số UID của user “vietnix” (thường dùng trong script), hãy dùng lệnh sau:

    id -u vietnix
    Kết quả chỉ hiển thị UID
    Kết quả chỉ hiển thị UID

    4. Chỉ hiển thị tên group chính

    Để biết tên nhóm chính thay vì số ID của user “vietnix”, bạn cần kết hợp tùy chọn -g-n:

    id -gn vietnix
    Kết quả chỉ hiển thị tên group chính
    Kết quả chỉ hiển thị tên group chính

    5. Hiển thị danh sách group phụ

    Để liệt kê toàn bộ các ID nhóm mà user “vietnix” tham gia, bạn dùng lệnh dưới đây:

    id -G vietnix

    Nếu bạn muốn hiển thị dưới dạng tên nhóm để dễ đọc hơn, hãy thêm tùy chọn -n:

    id -Gn vietnix

    6. Kiểm tra UID thực và UID hiệu lực

    Để phân biệt và kiểm tra ID thực và ID hiệu lực của user hiện tại, bạn có thể chạy lần lượt các lệnh sau:

    id -ur
    id -u

    Một số lỗi thường gặp khi sử dụng lệnh id

    1. Lỗi “no such user”

    Đây là lỗi cơ bản khi hệ thống không tìm thấy tên người dùng trong cơ sở dữ liệu định danh:

    • Nguyên nhân:
      • Tên người dùng bị nhập sai (Linux phân biệt chữ hoa và chữ thường).
      • Người dùng chưa được khởi tạo trên hệ thống hoặc đã bị xóa.
    • Cách kiểm tra: Xác minh danh sách người dùng đang tồn tại bằng lệnh: getent passwd hoặc cut -d: -f1 /etc/passwd
    • Cách khắc phục: Đảm bảo nhập đúng tên người dùng. Nếu người dùng thực sự chưa tồn tại, hãy khởi tạo bằng lệnh useradd.

    2. Lệnh trả về thiếu group phụ

    Bạn vừa thêm một user vào một nhóm mới (ví dụ nhóm docker), nhưng khi chạy lệnh id, nhóm đó vẫn chưa xuất hiện trong danh sách:

    • Nguyên nhân: Các thay đổi về quyền hạn nhóm thường chỉ có hiệu lực sau khi người dùng thiết lập một phiên làm việc mới. Phiên làm việc hiện tại vẫn đang giữ bộ nhớ đệm cũ.
    • Cách xử lý: 
      • Cách 1 (Khuyên dùng): Đăng xuất và đăng nhập lại vào hệ thống để làm mới toàn bộ thông tin định danh.
      • Cách 2 (Tạm thời): Sử dụng lệnh newgrp <groupname> để áp dụng nhóm mới ngay trong phiên làm việc hiện tại mà không cần logout.

    3. Lệnh id không hiển thị sudo dù đã thêm user vào nhóm này

    Tình huống này thường xảy ra khi thao tác thêm người dùng vào nhóm quản trị chưa được thực hiện chính xác hoặc chưa được lưu lại:

    • Xác minh: Kiểm tra trực tiếp tệp tin cấu hình nhóm của hệ thống để xem user đã có tên trong danh sách nhóm sudo hay chưa: grep 'sudo' /etc/group (hoặc nhóm wheel tùy bản phân phối Linux).
    • Cách khắc phục: Nếu user chưa xuất hiện, bạn hãy thực hiện lại lệnh thêm nhóm một cách chuẩn xác bằng lệnh sudo usermod -aG sudo <username>. Lưu ý là thamsố -aG cực kỳ quan trọng để thêm người dùng vào nhóm mới mà không xóa họ khỏi các nhóm cũ).
    Lệnh id không hiển thị sudo dù đã thêm user vào nhóm này
    Lệnh id không hiển thị sudo dù đã thêm user vào nhóm này (Nguồn: Internet)

    Những lưu ý khi sử dụng lệnh id

     Dưới đây là các lưu ý quan trọng khi sử dụng lệnh id:

    • Cập nhật phiên làm việc sau khi phân quyền: Nếu bạn vừa thêm user vào một group mới, lệnh id có thể chưa hiển thị group đó ngay lập tức. Do đó bạn cần đăng xuất và đăng nhập lại hoặc dùng lệnh newgrp để thông tin được cập nhật.
    • Phân biệt loại ID: Bạn cần chú ý sự khác biệt giữa ID thực (Real ID) và ID hiệu lực (Effective ID) khi sử dụng tùy chọn -r để xác định đúng quyền hạn thực tế của user.
    • Kiểm tra sự tồn tại của user: Nếu lệnh trả về thông báo “no such user”, điều này xác nhận user đó không tồn tại trên hệ thống và bạn nên kiểm tra lại bằng lệnh getent passwd.
    • Xác minh quyền Sudo: Trong trường hợp lệnh id không hiển thị nhóm sudo dù bạn đã thao tác thêm quyền, hãy kiểm tra kỹ lại file cấu hình /etc/group hoặc thực hiện lại lệnh usermod.
    Những lưu ý khi sử dụng lệnh id
    Những lưu ý khi sử dụng lệnh id

    Câu hỏi thường gặp

    Lệnh id và lệnh whoami khác nhau như thế nào?

    Lệnh whoami chỉ hiển thị duy nhất tên của user đang đăng nhập hiện tại. Trong khi đó, lệnh id cung cấp thông tin chi tiết và đầy đủ hơn nhiều, bao gồm mã định danh UID, GID và danh sách tất cả các nhóm mà user đó tham gia.

    UID=0 trong kết quả lệnh id có ý nghĩa gì?

    Nếu bạn kiểm tra và thấy uid=0(root), điều này có nghĩa là tài khoản đó có quyền cao nhất trong hệ thống là Superuser hoặc Root. Bất kỳ user nào có UID bằng 0 đều có toàn quyền kiểm soát hệ điều hành.

    Có thể dùng lệnh id để thay đổi UID hoặc GID của user không?

    Không. Lệnh id chỉ là công cụ để xem và kiểm tra thông tin. Nếu bạn muốn thay đổi các thông số này, bạn cần sử dụng lệnh usermod.

    Tại sao lệnh id hiển thị các con số như UID, GID thay vì tên?

    Mặc định, hệ thống Linux quản lý user và group thông qua các con số ID để xử lý nhanh hơn. Nếu bạn muốn lệnh id hiển thị kết quả dưới dạng tên cho dễ đọc, hãy thêm tùy chọn -n kết hợp với các tùy chọn khác, ví dụ như id -un hoặc id -Gn.

    Vì sao user của tôi thuộc nhiều group, nhưng lệnh id chỉ hiện một group chính?

    Lệnh id mặc định sẽ hiển thị group chính ở phần gid=… và liệt kê tất cả các group bao gồm cả chính và phụ ở phần groups=…. Nếu bạn thấy thiếu các group phụ, hãy đảm bảo rằng bạn đã cập nhật phiên làm việc sau khi thêm user vào nhóm mới.

    Lệnh id trong Linux là công cụ quan trọng giúp bạn xem nhanh UID, GID, group chính và các group phụ của một tài khoản, từ đó hỗ trợ kiểm tra và xử lý các vấn đề về phân quyền trên hệ thống Linux. Việc hiểu rõ output của id sẽ giúp bạn phát hiện nhanh sai sót trong cấu hình group, sudo hoặc quyền file để khắc phục kịp thời. Chúc bạn có được những thông tin hữu ích và cảm ơn bạn đã theo dõi bài viết!

    5/5 - (1 bình chọn)
    Nguyễn Hưng
    Tôi là Nguyễn Hưng hay còn được biết đến với nickname là Bo, chuyên gia về hệ thống, mạng và bảo mật. Tôi là Co-Founder của Vietnix và Co-Founder của dự án Chống Lừa Đảo.
    0 0 đánh giá
    Đánh giá bài viết
    Theo dõi
    Thông báo của
    guest
    0 Góp ý
    Cũ nhất
    Mới nhất Được bỏ phiếu nhiều nhất
    Phản hồi nội tuyến
    Xem tất cả bình luận

    BÀI VIẾT LIÊN QUAN

    Hướng dẫn dùng lệnh who Linux để kiểm tra người dùng đang đăng nhập nhanh chóng 
    Hướng dẫn dùng lệnh who Linux để kiểm tra người dùng đang đăng nhập nhanh chóng 

    Lệnh who trong Linux là công cụ dòng lệnh dùng để hiển thị danh sách người dùng hiện đang đăng nhập vào hệ thống cùng với thông tin phiên làm việc tương ứng. Nhờ đó, bạn có thể nhanh chóng kiểm tra trạng thái đăng nhập, theo dõi hoạt động của người dùng và hỗ…

    16/03/2026

    Cách dùng lệnh whoami trong Linux kiểm tra người dùng hiện tại nhanh chóng và chính xác
    Cách dùng lệnh whoami trong Linux kiểm tra người dùng hiện tại nhanh chóng và chính xác

    Lệnh whoami trong Linux là công cụ dòng lệnh dùng để xác định nhanh user hiện đang đăng nhập và thực thi phiên làm việc trên hệ thống. Việc kiểm tra user hiện tại giúp bạn xác nhận quyền truy cập, tránh thao tác nhầm tài khoản khi quản trị server hoặc chạy script. Trong…

    16/03/2026

    Cách dùng lệnh chgrp trong Linux để quản lý nhóm sở hữu file hiệu quả và chính xác
    Cách dùng lệnh chgrp trong Linux để quản lý nhóm sở hữu file hiệu quả và chính xác

    Lệnh chgrp trong Linux được sử dụng để thay đổi nhóm sở hữu của file hoặc thư mục trong hệ thống. Việc sử dụng chgrp giúp quản lý quyền truy cập theo nhóm hiệu quả hơn, đặc biệt trong môi trường nhiều người dùng hoặc hệ thống máy chủ cần phân quyền rõ ràng. Trong…

    16/03/2026

    Sử dụng lệnh chown trên Linux để thay đổi quyền sở hữu file/thư mục nhanh chóng
    Sử dụng lệnh chown trên Linux để thay đổi quyền sở hữu file/thư mục nhanh chóng

    Chown là lệnh trong Linux dùng để thay đổi quyền sở hữu file hoặc thư mục trong hệ thống. Việc sử dụng chown đúng cách giúp bạn kiểm soát phân quyền truy cập, đảm bảo bảo mật dữ liệu và quản lý tài nguyên hiệu quả hơn khi làm việc trên server hoặc môi trường…

    16/03/2026

    linux

    lenh

    text