Lệnh w trong Linux

Giới thiệu

Trong lab này, chúng ta sẽ khám phá lệnh w của Linux, lệnh này cung cấp thông tin về những người dùng hiện đang đăng nhập vào hệ thống và các hoạt động của họ. Chúng ta sẽ học cách phân tích các phiên đăng nhập của người dùng, theo dõi tải hệ thống và sử dụng các tùy chọn khác nhau của lệnh w để thu thập thông tin chi tiết về hiệu suất của hệ thống và hành vi của người dùng. Hiểu lệnh w là điều cần thiết để giám sát và quản lý hệ thống hiệu quả trên các hệ thống Linux.

Tìm hiểu lệnh w

Trong bước này, chúng ta sẽ khám phá lệnh w trong Linux, lệnh này cung cấp thông tin về những người dùng hiện đang đăng nhập vào hệ thống và các hoạt động của họ.

Lệnh w hiển thị các thông tin sau:

  • Username của người dùng đã đăng nhập
  • Terminal mà họ đang đăng nhập từ đó
  • Thời gian họ đăng nhập
  • Thời gian họ ở trạng thái rảnh
  • Những gì họ hiện đang làm

Hãy bắt đầu bằng cách chạy lệnh w trong terminal:

w

Ví dụ đầu ra:

 17:30:32 up 1 day, 23:03,  0 users,  load average: 0.00, 0.00, 0.00
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT

Đầu ra cho thấy hiện không có người dùng nào đăng nhập. Hãy đăng nhập với tư cách là một người dùng khác và xem đầu ra:

sudo su - user2
w

Ví dụ đầu ra:

 17:31:00 up 1 day, 23:03,  1 user,  load average: 0.00, 0.00, 0.00
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
user2    pts/0    172.17.0.1       17:30    0.00s  0.01s  0.00s w

Đầu ra bây giờ cho thấy người dùng user2 đã đăng nhập từ terminal pts/0 và đã ở trạng thái rảnh trong 0.00 giây. Cột WHAT cho thấy người dùng hiện đang chạy lệnh w.

Bạn cũng có thể sử dụng lệnh w với các tùy chọn khác nhau để có được thông tin chi tiết hơn về người dùng đã đăng nhập và tải hệ thống:

  • w -h: Bỏ qua dòng tiêu đề
  • w -s: Định dạng ngắn, chỉ hiển thị tên, tty và thời gian
  • w -i: Hiển thị thời gian rảnh ở định dạng ngắn (phút)
  • w username: Hiển thị thông tin cho một người dùng cụ thể

Hiểu lệnh w là điều cần thiết để giám sát hoạt động của người dùng và hiệu suất hệ thống trên hệ thống Linux của bạn.

Phân tích các phiên đăng nhập của người dùng

Trong bước này, chúng ta sẽ học cách phân tích các phiên đăng nhập của người dùng bằng lệnh w và các công cụ liên quan khác.

Đầu tiên, hãy liệt kê tất cả người dùng hiện đang đăng nhập bằng lệnh w:

w

Ví dụ đầu ra:

 17:35:01 up 1 day, 23:07,  1 user,  load average: 0.00, 0.00, 0.00
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
user2    pts/0    172.17.0.1       17:30    0.00s  0.01s  0.00s w

Đầu ra cho thấy người dùng user2 hiện đang đăng nhập từ terminal pts/0.

Để có được thông tin chi tiết hơn về các phiên đăng nhập của người dùng, chúng ta có thể sử dụng lệnh who:

who

Ví dụ đầu ra:

user2    pts/0        2023-04-18 17:30 (172.17.0.1)

Lệnh who hiển thị username, terminal, thời gian đăng nhập và host mà người dùng đã đăng nhập từ đó.

Một lệnh hữu ích khác là last, lệnh này hiển thị danh sách những người dùng đã đăng nhập gần đây nhất:

last

Ví dụ đầu ra:

user2    pts/0        172.17.0.1      Tue Apr 18 17:30:00 2023 - 17:35:01   (0:05)
reboot   system boot  4.15.0-162-gene Tue Apr 18 17:31:49 2023 - 17:35:01   (0:03)
user1    pts/0        172.17.0.1      Tue Apr 18 17:29:00 2023 - 17:30:00   (0:01)

Lệnh last hiển thị username, terminal, host, thời gian đăng nhập, thời gian đăng xuất và thời lượng của phiên.

Bằng cách phân tích đầu ra của các lệnh này, bạn có thể hiểu rõ về các phiên đăng nhập của người dùng trên hệ thống của mình, điều này có thể hữu ích cho mục đích giám sát và khắc phục sự cố.

Giám sát tải hệ thống và sử dụng tài nguyên

Trong bước này, chúng ta sẽ học cách giám sát tải hệ thống và sử dụng tài nguyên bằng lệnh w và các công cụ liên quan khác.

Lệnh w cung cấp thông tin về tải hệ thống, được hiển thị dưới dạng ba giá trị tải trung bình:

w

Ví dụ đầu ra:

 17:40:01 up 1 day, 23:12,  1 user,  load average: 0.00, 0.00, 0.00
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
user2    pts/0    172.17.0.1       17:30    0.00s  0.01s  0.00s w

Ba số tải trung bình đại diện cho tải hệ thống trong 1 phút, 5 phút và 15 phút qua. Tải trung bình là 0.00 cho biết rằng hệ thống không chịu bất kỳ tải đáng kể nào.

Để có được thông tin chi tiết hơn về việc sử dụng tài nguyên hệ thống, chúng ta có thể sử dụng lệnh top:

top

Ví dụ đầu ra:

top - 17:40:42 up 1 day, 23:12,  1 user,  load average: 0.00, 0.00, 0.00
Tasks: 105 total,   1 running,  104 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  2044880 total,  1605244 free,   160676 used,   278960 buff/cache
KiB Swap:  1048572 total,  1048572 free,        0 used.  1603204 avail Mem

   PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
     1 root      20   0   41824   4464   2896 S   0.0  0.2   0:01.37 systemd
     2 root      20   0       0      0      0 S   0.0  0.0   0:00.01 kthreadd
     3 root      20   0       0      0      0 I   0.0  0.0   0:00.00 rcu_gp

Lệnh top cung cấp thông tin theo thời gian thực về việc sử dụng CPU, bộ nhớ và tiến trình của hệ thống. Bạn có thể sử dụng nó để xác định các tiến trình tiêu thụ nhiều tài nguyên nhất và thực hiện các hành động thích hợp.

Ngoài ra, bạn có thể sử dụng lệnh free để lấy thông tin về việc sử dụng bộ nhớ của hệ thống:

free -h

Ví dụ đầu ra:

              total        used        free      shared  buff/cache   available
Mem:           1.9G        156M        1.5G        1.1M        278M        1.5G
Swap:          1.0G          0B        1.0G

Lệnh free hiển thị tổng bộ nhớ, bộ nhớ đã sử dụng và bộ nhớ khả dụng trên hệ thống, cũng như việc sử dụng không gian swap.

Bằng cách giám sát tải hệ thống và sử dụng tài nguyên bằng các công cụ này, bạn có thể xác định các nút thắt cổ chai về hiệu suất và thực hiện các hành động thích hợp để tối ưu hóa hiệu suất hệ thống của bạn.

Tóm tắt

Trong lab này, chúng ta đã học cách sử dụng lệnh w trong Linux để hiểu các phiên đăng nhập của người dùng và theo dõi tải hệ thống cũng như việc sử dụng tài nguyên. Chúng ta đã khám phá thông tin do lệnh w cung cấp, bao gồm username của người dùng đã đăng nhập, terminal họ đang sử dụng, thời gian họ đăng nhập, thời gian rảnh của họ và hoạt động hiện tại của họ. Chúng ta cũng đã học cách sử dụng các tùy chọn khác nhau với lệnh w để có được thông tin chi tiết hơn, chẳng hạn như bỏ qua dòng tiêu đề, chỉ hiển thị tên, terminal và thời gian đăng nhập, đồng thời hiển thị thời gian rảnh ở định dạng ngắn hơn. Cuối cùng, chúng ta đã thảo luận về cách phân tích các phiên đăng nhập của người dùng và hiệu suất hệ thống bằng lệnh w và các công cụ liên quan khác.

400+ câu lệnh phổ biến trong Linux