Giới thiệu
Trong lab này, bạn sẽ tìm hiểu về lệnh getent
, một công cụ linh hoạt trong Linux để truy xuất thông tin từ nhiều cơ sở dữ liệu khác nhau, chẳng hạn như tài khoản người dùng, thông tin nhóm, v.v. Lab này bao gồm cách sử dụng cơ bản của lệnh getent
, bao gồm cách truy xuất thông tin người dùng và nhóm. Lệnh getent
là một tiện ích mạnh mẽ có thể được sử dụng để truy vấn nhiều cơ sở dữ liệu, bao gồm /etc/passwd
, /etc/group
, /etc/hosts
, /etc/services
và /etc/protocols
. Bạn sẽ khám phá các ví dụ về cách sử dụng lệnh getent
để truy xuất thông tin cho những người dùng và nhóm cụ thể, cũng như cho tất cả người dùng và nhóm trên hệ thống.
Giới thiệu về Lệnh getent
Trong bước này, bạn sẽ tìm hiểu về lệnh getent
, một công cụ linh hoạt trong Linux để truy xuất thông tin từ nhiều cơ sở dữ liệu khác nhau, chẳng hạn như tài khoản người dùng, thông tin nhóm, v.v.
Lệnh getent
là một tiện ích mạnh mẽ có thể được sử dụng để truy vấn nhiều cơ sở dữ liệu, bao gồm:
/etc/passwd
: Thông tin tài khoản người dùng/etc/group
: Thông tin nhóm/etc/hosts
: Ánh xạ tên host sang địa chỉ IP/etc/services
: Thông tin dịch vụ mạng/etc/protocols
: Thông tin giao thức mạng
Để bắt đầu, hãy khám phá cách sử dụng cơ bản của lệnh getent
.
## Hiển thị thông tin sử dụng cho lệnh getent
getent --help
Ví dụ đầu ra:
Usage: getent database [key ...]
Lệnh getent
nhận hai đối số: cơ sở dữ liệu để truy vấn và key hoặc các key để tìm kiếm. Các cơ sở dữ liệu có sẵn được liệt kê trong thông tin sử dụng.
Truy xuất Thông tin Người dùng Sử dụng getent
Trong bước này, bạn sẽ tìm hiểu cách sử dụng lệnh getent
để truy xuất thông tin người dùng từ cơ sở dữ liệu /etc/passwd
.
Tệp /etc/passwd
lưu trữ thông tin tài khoản người dùng, bao gồm tên người dùng, ID người dùng (UID), ID nhóm (GID), thư mục home của người dùng và shell đăng nhập.
Hãy bắt đầu bằng cách sử dụng lệnh getent
để truy xuất thông tin về một người dùng cụ thể:
## Truy xuất thông tin cho người dùng 'labex'
getent passwd labex
Ví dụ đầu ra:
labex:x:1000:1000:labex,,,:/home/labex:/bin/bash
Đầu ra hiển thị các trường khác nhau của tài khoản người dùng, được phân tách bằng dấu hai chấm:
- Tên người dùng:
labex
- Mật khẩu (x cho biết nó được lưu trữ trong
/etc/shadow
):x
- ID người dùng (UID):
1000
- ID nhóm (GID):
1000
- Tên đầy đủ của người dùng (trường GECOS):
labex,,,
- Thư mục Home:
/home/labex
- Shell đăng nhập:
/bin/bash
Bạn cũng có thể sử dụng lệnh getent
để truy xuất thông tin cho tất cả người dùng trên hệ thống:
## Truy xuất thông tin cho tất cả người dùng
getent passwd
Điều này sẽ hiển thị thông tin tài khoản người dùng cho tất cả người dùng trên hệ thống.
Truy xuất Thông tin Nhóm Sử dụng getent
Trong bước này, bạn sẽ tìm hiểu cách sử dụng lệnh getent
để truy xuất thông tin nhóm từ cơ sở dữ liệu /etc/group
.
Tệp /etc/group
lưu trữ thông tin về các nhóm trên hệ thống, bao gồm tên nhóm, ID nhóm (GID) và những người dùng thuộc về mỗi nhóm.
Hãy bắt đầu bằng cách sử dụng lệnh getent
để truy xuất thông tin về một nhóm cụ thể:
## Truy xuất thông tin cho nhóm 'labex'
getent group labex
Ví dụ đầu ra:
labex:x:1000:
Đầu ra hiển thị các trường khác nhau của thông tin nhóm, được phân tách bằng dấu hai chấm:
- Tên nhóm:
labex
- Mật khẩu nhóm (x cho biết nó được lưu trữ trong
/etc/gshadow
):x
- ID nhóm (GID):
1000
- Thành viên nhóm:
(empty)
Bạn cũng có thể sử dụng lệnh getent
để truy xuất thông tin cho tất cả các nhóm trên hệ thống:
## Truy xuất thông tin cho tất cả các nhóm
getent group
Điều này sẽ hiển thị thông tin nhóm cho tất cả các nhóm trên hệ thống.
Tóm tắt
Trong lab này, bạn đã tìm hiểu về lệnh getent
, một công cụ linh hoạt trong Linux để truy xuất thông tin từ nhiều cơ sở dữ liệu khác nhau. Bạn đã khám phá cách sử dụng getent
để truy xuất thông tin người dùng từ cơ sở dữ liệu /etc/passwd
, bao gồm tên người dùng, ID người dùng, ID nhóm, thư mục home và shell đăng nhập. Ngoài ra, bạn đã học cách truy xuất thông tin cho tất cả người dùng trên hệ thống bằng lệnh getent
. Lab này cũng bao gồm cách sử dụng getent
để truy xuất thông tin nhóm từ cơ sở dữ liệu /etc/group
.