Cách liệt kê tất cả người dùng trong hệ thống Linux

Tác giả sysadmin, T.Một 10, 2023, 03:21:54 CHIỀU

« Chủ đề trước - Chủ đề tiếp »

0 Thành viên và 1 Khách đang xem chủ đề.

Cách liệt kê tất cả người dùng trong hệ thống Linux


Trong hệ thống Linux, nhiệm vụ quản trị quan trọng là quản lý người dùng, thêm họ, xóa người dùng hoặc gán đặc quyền cho người dùng mới. Trong Linux, nhiều người dùng có thể đồng thời làm việc trên cùng một hệ thống. Nhưng các biện pháp bảo mật phải được thực hiện để ngăn chặn vi phạm dữ liệu riêng tư của người dùng khác. Thông tin liên quan đến người dùng cục bộ được lưu trữ trong đường dẫn "/etc/passwd". Trong đó, mỗi hàng biểu thị dữ liệu của một người dùng có thể chứa tên của người dùng, Id người dùng, thư mục của người dùng và chi tiết đăng nhập. Khi nói đến việc liệt kê người dùng trong Linux, có nhiều cách để liệt kê họ, chúng ta sẽ thảo luận về một số cách này trong hướng dẫn này.

Để liệt kê người dùng, chúng tôi phải chạy Linux trên hệ thống của mình và cũng có quyền truy cập vào thiết bị đầu cuối để thực hiện tác vụ này.

1. Sử dụng lệnh Cat

Lệnh cat là dạng viết tắt của lệnh nối, dùng để đọc dữ liệu của tệp mà không cần mở tệp. Trong phần này, chúng tôi sẽ sử dụng lệnh cat để liệt kê tất cả người dùng trong Linux. Ngoài ra, nó được sử dụng để tạo một tệp mới và đưa dữ liệu vào đó.

Dữ liệu đã cho bên dưới là cú pháp để sử dụng lệnh "cat" trong đó tên_tệp đại diện cho tên của tệp phải được đọc.

Mã nguồn [Chọn]
linux@linux-Virtualbox:~$ cat file_name
Để liệt kê người dùng bằng lệnh "cat", trước tiên chúng tôi sẽ khởi chạy thiết bị đầu cuối.

Sau đó, chúng ta sẽ chạy lệnh:

Mã nguồn [Chọn]
linux@linux-Virtualbox:~$ cat/etc/passwd
Trong lệnh trên, chúng tôi đã sử dụng lệnh "cat" cùng với tên tệp "etc/passwd", đây là tệp lưu trữ tất cả dữ liệu của người dùng. Sau khi chạy lệnh này và bằng cách nhấn enter, chúng tôi nhận được đầu ra như trong đoạn mã bên dưới, bao gồm danh sách người dùng được lưu trữ trong tệp. Như chúng ta đã thảo luận ở trên, mỗi hàng biểu thị chi tiết của một người dùng.


Nếu chúng ta chỉ muốn xem số lượng người dùng được phép sử dụng hệ thống, chúng ta chỉ cần viết lệnh sau:

Mã nguồn [Chọn]
linux@linux-Virtualbox:~$ cat /etc/passwd | wc –l
Trong lệnh được liệt kê ở trên, chúng tôi đã sử dụng lệnh "wc" cùng với lệnh "cat". "wc" là cái được sử dụng để đếm dòng, từ hoặc byte của tệp. Trong trường hợp của chúng tôi, chúng tôi sẽ liệt kê số hàng đang lưu trữ dữ liệu người dùng. Đó là lý do tại sao chúng tôi đã bỏ qua "-l" có nghĩa là các dòng được tính. Sau khi chạy lệnh trên, chúng tôi đã nhận được số lượng người dùng có dữ liệu được lưu trữ trong tệp mà trong trường hợp của chúng tôi là "47".


2. Sử dụng "less" hoặc "more"

Phương pháp khác để liệt kê người dùng từ bất kỳ tệp nào là "ít hơn" hoặc "nhiều hơn". Ngày càng ít các lệnh của máy nhắn tin đầu cuối cho phép chúng ta đọc từng dòng tệp hoặc đọc chúng theo từng trang.

Dưới đây là cú pháp sử dụng lệnh "less" để liệt kê người dùng từ bất kỳ tệp nào.

Mã nguồn [Chọn]
linux@linux-Virtualbox:~$ less/etc/passwd
Trong đoạn mã, chúng tôi đã thực hiện thành công danh sách người dùng được lưu trữ trong tệp /etc/passwd. Lệnh less cũng có thể được sử dụng để đọc danh sách người dùng. Nó sẽ hiển thị người dùng cho đến khi đến cuối thiết bị đầu cuối bằng cách cuộn thiết bị đầu cuối bằng nút xuống, chúng tôi có thể hiển thị dữ liệu còn lại của tệp.


Sử dụng lệnh "more" để liệt kê người dùng, dưới đây là cú pháp sử dụng lệnh "more".

Mã nguồn [Chọn]
linux@linux-Virtualbox:~$ more /etc/passwd
Lệnh này có một số chức năng hạn chế. Nó sẽ hiển thị một số tỷ lệ phần trăm của tệp như trong đoạn trích bên dưới. Nó hiển thị khoảng 47% dữ liệu của tệp bằng cách nhấn phím "enter", chúng tôi có thể hiển thị dữ liệu ở một số phần trăm, vì vậy chúng tôi phải nhấn phím "enter" cho đến khi 100% của nó không được hiển thị.


3. Lệnh awk

Trong phần này, chúng ta sẽ thảo luận về một phương pháp khác để liệt kê những người dùng của hệ thống, đó là lệnh "awk". Lệnh awk chỉ hữu ích khi chúng ta phải hiển thị tên của người dùng mà bỏ qua các chi tiết khác được lưu trữ trong tệp liên quan đến bất kỳ người dùng nào.

Dưới đây là cú pháp sử dụng lệnh awk để nhập tên người dùng.

Mã nguồn [Chọn]
linux@linux-Virtualbox:~$ awk –F: '{print $1}' /etc/passwd
Trong cú pháp, dấu hai chấm ":" được sử dụng để phân tách đầu vào được cung cấp bởi awk. Sau đó, nó in giá trị đầu tiên của mỗi hàng trong đó –F là một tệp cùng với đối số chịu trách nhiệm đọc tệp và sau đó hiển thị nó dưới dạng đầu ra. /etc/passwd là tên tệp mà chúng tôi muốn đọc.


Nếu bạn có nhiều trang trong một tệp và bạn muốn đọc từng trang tệp bằng cách viết lệnh sau, bạn có thể thực hiện tác vụ này.

Mã nguồn [Chọn]
linux@linux-Virtualbox:~$ awk –F: ' { print $1 } ' /etc/passwd | less
Theo cú pháp trên, less sẽ cho phép chúng ta đọc từng trang của tệp nếu có nhiều trang tồn tại.

4. Sử dụng lệnh getent

Lệnh "getent" tương tự như lệnh "cat" vì chúng ta có thể hiển thị đầy đủ thông tin chi tiết về người dùng cùng với các chi tiết kỹ thuật. "getent" cũng chịu trách nhiệm hiển thị đầy đủ thông tin chi tiết về người dùng.

Cú pháp viết lệnh getent được đưa ra dưới đây. Trong cú pháp này, chúng tôi chỉ chuyển tên của tệp cùng với lệnh "getent".

Mã nguồn [Chọn]
linux@linux-Virtualbox:~$ getent passwd
Sau khi chạy lệnh, toàn bộ dữ liệu tệp được thực thi như trong ảnh chụp màn hình bên dưới.


Trong hướng dẫn này, chúng tôi đã giới thiệu danh sách những người dùng đang sử dụng cùng một hệ thống tại cùng một thời điểm. Đây là một nhiệm vụ quản trị để quản lý nhiều người dùng cùng một lúc. Chúng tôi cũng đã kiểm tra một số kỹ thuật được sử dụng để thu hút người dùng trên Ubuntu 20.04. Như chúng tôi biết, cần phải quản lý người dùng nhưng trước tiên, điều quan trọng là phải biết những người dùng đang sử dụng hệ thống để đảm bảo an toàn cho những người khác nhằm ngăn chặn vi phạm dữ liệu giữa tất cả người dùng.