• Webmaster Tools
  • Diễn Đàn Hỏi Đáp
  • Profile
  • Ủng hộ
  • DNS Check
  • CheckIP
  • Liên Hệ
Đỗ Trung Quân
  • HƯỚNG DẪN
  • LINUX
    • Linux Tricks
    • Distro Linux
      • CentOS/RedHat
      • CloudLinux
      • Ubuntu/Debian
      • AlmaLinux
    • WebServer
      • NGINX
      • Apache
      • LiteSpeed
    • Virtualization
    • Monitoring Tool
      • Zabbix
    • DevOPS
      • Ansible
      • Docker
      • Jenkins
      • AWS
    • Mail Server
    • VPN
  • CONTROL PANEL
    • cPanel
    • DirectAdmin
    • aaPanel
    • FastPanel
    • CyberPanel
    • Easypanel
    • VestaCP
    • CloudPanel
    • HestiaCP
    • Plesk
    • Script VPS
  • DNS
    • Domain
  • CMS
    • WordPress
    • Laravel
  • SECURITY
    • SSL
    • Firewall
  • DỊCH VỤHOT
  • WEB MẪUHOT

Lệnh trace và cách sử dụng lệnh trace trong Linux

by ĐỖ TRUNG QUÂN 25/02/2023
Tác giả: ĐỖ TRUNG QUÂN 25/02/2023 0 comments 582 lượt xem
Dịch vụ xử lý mã độc WordPress
WEB MẪU WORDPRESS
Share FacebookTwitterPinterestTelegramEmail
582

NỘI DUNG

  • 1. Lệnh strace
    • Cú pháp của lệnh strace như sau:
    • Các tùy chọn (option) phổ biến của lệnh strace
    • Ví dụ sử dụng lệnh strace với các tùy chọn
  • 2. Lệnh ltrace
    • Các tùy chọn (option) phổ biến của lệnh ltrace
    • Ví dụ sử dụng lệnh ltrace với các tùy chọn
Lệnh trace và cách sử dụng lệnh trace trong Linux
Ảnh minh hoạ

Lệnh trace là một công cụ quan trọng trên Linux để theo dõi và phân tích các hoạt động của hệ thống, bao gồm các tác vụ liên quan đến CPU, bộ nhớ, I/O, mạng và các hoạt động hệ thống khác. Có nhiều lệnh trace khác nhau được sử dụng trên Linux, nhưng phổ biến nhất là lệnh strace và lệnh ltrace.

1. Lệnh strace

image 103

Lệnh strace được sử dụng để giám sát các hệ thống cuộc gọi (system calls) và tương tác của các tiến trình với hệ thống tệp và các tài nguyên khác. Strace giúp phát hiện các lỗi hệ thống, đánh giá hiệu suất và debug các lỗi trong ứng dụng.

Cú pháp của lệnh strace như sau:

strace [options] [command]

Trong đó, [options] là các tùy chọn để tùy chỉnh hiển thị thông tin và [command] là câu lệnh cần trace. Nếu không có [command] thì strace sẽ trace toàn bộ các hoạt động hệ thống.

Các tùy chọn (option) phổ biến của lệnh strace

  • -p: Trace một tiến trình có sẵn với PID chỉ định.

Ví dụ: strace -p 1234.

  • -e: Lọc các cuộc gọi hệ thống theo danh sách chỉ định

Ví dụ: strace -e open,read,write ls /tmp.

  • -o: Ghi đầu ra của lệnh trace vào tệp tin hoặc socket.

Ví dụ: strace -o output.txt ls /tmp.

  • -t: In thời gian cho mỗi cuộc gọi hệ thống

Ví dụ: strace -t ls /tmp.

  • -c: In thống kê về số lần xuất hiện của mỗi cuộc gọi hệ thống.

Ví dụ: strace -c ls /tmp.

Ví dụ sử dụng lệnh strace với các tùy chọn

  • Trace tiến trình có PID là 1234: strace -p 1234.
  • Trace toàn bộ hoạt động hệ thống của lệnh ls /tmp: strace ls /tmp.
  • Lọc các cuộc gọi hệ thống chỉ in ra các hàm open, read, và write: strace -e open,read,write ls /tmp.
  • Ghi đầu ra của lệnh trace vào tệp tin output.txt: strace -o output.txt ls /tmp.
  • In thời gian cho mỗi cuộc gọi hệ thống: strace -t ls /tmp.
  • In thống kê về số lần xuất hiện của mỗi cuộc gọi hệ thống: strace -c ls /tmp.

Lệnh strace có nhiều tùy chọn khác để tùy chỉnh việc trace các hoạt động của hệ thống. Ta có thể xem chi tiết hơn về các tùy chọn này bằng cách xem tài liệu hướng dẫn (man pages) của lệnh strace bằng cách gõ lệnh vào terminal lệnh:

man strace

2. Lệnh ltrace

image 102

Lệnh ltrace được sử dụng để giám sát các cuộc gọi hàm thư viện và các lời gọi hệ thống của các tiến trình. Ltrace giúp phát hiện các lỗi trong các thư viện và hỗ trợ cho việc debug các lỗi trong các ứng dụng.

Cú pháp của lệnh ltrace như sau:

ltrace [options] [command]

Trong đó, [options] là các tùy chọn để tùy chỉnh hiển thị thông tin và [command] là câu lệnh cần trace. Nếu không có [command] thì ltrace sẽ trace toàn bộ các cuộc gọi hàm thư viện.

Các tùy chọn (option) phổ biến của lệnh ltrace

  • -p: Trace một tiến trình có sẵn với PID chỉ định.

Ví dụ: ltrace -p 1234.

  • -e: Lọc các hàm thư viện theo danh sách chỉ định.

Ví dụ: ltrace -e malloc,free ls /tmp.

  • -o: Ghi đầu ra của lệnh trace vào tệp tin hoặc socket.

Ví dụ: ltrace -o output.txt ls /tmp.

  • -t: In thời gian cho mỗi hàm thư viện được gọi.

Ví dụ: ltrace -t ls /tmp.

  • -c: In thống kê về số lần xuất hiện của mỗi hàm thư viện được gọi.

Ví dụ: ltrace -c ls /tmp.

Ví dụ sử dụng lệnh ltrace với các tùy chọn

  • Trace tiến trình có PID là 1234: ltrace -p 1234.
  • Trace toàn bộ các hàm thư viện được sử dụng bởi lệnh ls /tmp: ltrace ls /tmp.
  • Lọc các hàm thư viện chỉ in ra các hàm malloc và free: ltrace -e malloc,free ls /tmp.
  • Ghi đầu ra của lệnh trace vào tệp tin output.txt: ltrace -o output.txt ls /tmp.
  • In thời gian cho mỗi hàm thư viện được gọi: ltrace -t ls /tmp.
  • In thống kê về số lần xuất hiện của mỗi hàm thư viện được gọi: ltrace -c ls /tmp.

Lệnh ltrace cũng có nhiều tùy chọn khác để tùy chỉnh việc trace các hàm thư viện được sử dụng bởi chương trình. Ta có thể xem chi tiết hơn về các tùy chọn này bằng cách xem tài liệu hướng dẫn của lệnh ltrace bằng cách nhập lệnh sau vào terminal:

man ltrace

Lệnh này sẽ hiển thị trang tài liệu hướng dẫn cho ltrace, cung cấp cho người dùng một hướng dẫn chi tiết về cách sử dụng lệnh ltrace và các tùy chọn được hỗ trợ.

Ngoài ra, để sử dụng hiệu quả lệnh ltrace, ta cần có kiến thức về các hàm thư viện và cách chương trình sử dụng chúng. Nếu ta không biết chính xác chương trình sử dụng các hàm thư viện nào, thì ltrace sẽ không hữu ích trong việc giúp ta tìm ra các lỗi của chương trình.

Trong quá trình sử dụng lệnh ltrace, ta cần xem xét cẩn thận các kết quả được trả về, vì chúng có thể cho thấy các lỗi trong chương trình, cũng như các hành động không mong muốn của chương trình.

Tóm lại, ltrace là một công cụ hữu ích để trace các hàm thư viện được sử dụng bởi chương trình. Tuy nhiên, việc sử dụng lệnh ltrace cần có kiến thức về các hàm thư viện và cách chương trình sử dụng chúng, và ta cần xem xét cẩn thận kết quả được trả về để tìm ra các lỗi trong chương trình.

Rate this post
ltracestracetrace

Tham gia nhóm hỗ trợ WordPress

Tham gia nhóm Hỗ trợ Server - Hosting & WordPress để cùng nhau hỏi đáp và hỗ trợ các vấn đề về WordPress, tối ưu máy chủ/server.

Tham gia ngay
ĐỖ TRUNG QUÂN

Mình tên là Đỗ Trung Quân, hiện đang công tác tại AZDIGI với vị trí là SysAdmin. Mình đam mê viết Blog. Vì viết Blog giúp mình trau dồi được nhiều kỹ năng. Học hỏi thêm nhiều kiến thức mới, từ đó mình có thể chia sẻ đến các bạn các bài viết tài liệu bổ ích hơn. Hiện tại mình là admin của Blog DOTRUNGQUAN.INFO - CaiSSL.COM - QuantriVPS.COM. Mới đây mình có tạo ra nhóm Hỗ trợ Server - Hosting & WordPress | Hỗ Trợ Xử Lý Mã Độc WordPress với mục đích gây dựng một cộng đồng nhỏ để mọi người trao đổi kinh nghiệm, kiến thức quản trị VPS. Các thủ thuật, mẹo vặt khi sử dụng VPS. Rất mong nhận được sự ủng hộ của các bạn.

Author Box
Author Image

ĐỖ TRUNG QUÂN

Chuyên viên quản trị hệ thống.

Tư vấn & triển khai dịch vụ

VPS | Hosting | SSL | Mailserver | Website | Sửa lỗi WordPress

Bài viết của tác giả

Hosting/VPS khuyên dùng

Phổ Biến

  • Hướng dẫn tạo SSH Key trên macOS

  • Hướng dẫn sử dụng SSH Key

  • Hướng dẫn cài đặt v2board trên AAPANEL

  • Vấn đề IP Public liên tục bị thay đổi vì sao và cách khắc phục

  • Khắc phục lỗi không hiện hình ảnh và mô tả khi share link lên Facebook

  • Hướng dẫn kích hoạt Theme Flatsome mới nhất.

BẠN BÈ & ĐỐI TÁC

Thạch Phạm | CỔ Ý CONCEPT | Trương Quốc Cường | Đàm Trung Kiên | Web An Tâm | Phong Đinh | Học Mò | PHUNG.VN | Đăng Đạt

Bạn được quyền sao chép lại nội dung trên website Đỗ Trung Quân, miễn là có dẫn nguồn.

Hosting/VPS được tài trợ bởi AZDIGI - Nhà cung cấp Server Hosting tốt nhất hiện nay

AZDIGI - Nhà cung cấp Server Hosting tốt nhất hiện nay


Back To Top
Đỗ Trung Quân
  • HƯỚNG DẪN
  • LINUX
    • Linux Tricks
    • Distro Linux
      • CentOS/RedHat
      • CloudLinux
      • Ubuntu/Debian
      • AlmaLinux
    • WebServer
      • NGINX
      • Apache
      • LiteSpeed
    • Virtualization
    • Monitoring Tool
      • Zabbix
    • DevOPS
      • Ansible
      • Docker
      • Jenkins
      • AWS
    • Mail Server
    • VPN
  • CONTROL PANEL
    • cPanel
    • DirectAdmin
    • aaPanel
    • FastPanel
    • CyberPanel
    • Easypanel
    • VestaCP
    • CloudPanel
    • HestiaCP
    • Plesk
    • Script VPS
  • DNS
    • Domain
  • CMS
    • WordPress
    • Laravel
  • SECURITY
    • SSL
    • Firewall
  • DỊCH VỤHOT
  • WEB MẪUHOT