Giới thiệu
Trong lab này, bạn sẽ học cách sử dụng lệnh modinfo
của Linux để khám phá và khắc phục sự cố các module kernel. Lệnh modinfo
cung cấp thông tin chi tiết về các module kernel, bao gồm tên file, tác giả, mô tả, giấy phép, các phụ thuộc và các tham số có thể cấu hình. Kiến thức này có thể hữu ích khi khắc phục sự cố liên quan đến các module kernel hoặc khi cố gắng hiểu chức năng và các tùy chọn cấu hình của một module cụ thể.
Tìm hiểu về Lệnh modinfo
Trong bước này, chúng ta sẽ khám phá lệnh modinfo
của Linux, lệnh này cung cấp thông tin chi tiết về các module kernel. Lệnh modinfo
là một công cụ hữu ích để tìm hiểu và khắc phục sự cố các module kernel.
Đầu tiên, hãy kiểm tra phiên bản của lệnh modinfo
trên hệ thống Ubuntu 22.04 của chúng ta:
modinfo --version
Ví dụ đầu ra:
modinfo version 2.6.32-504.16.2.el6
Lệnh modinfo
có thể được sử dụng để hiển thị thông tin về một module kernel cụ thể. Ví dụ: để lấy thông tin về module ext4
, chúng ta có thể chạy:
sudo modinfo ext4
Ví dụ đầu ra:
filename: /lib/modules/5.15.0-1023-aws/kernel/fs/ext4/ext4.ko
author: Remy Card, Stephen Tweedie, Andrew Morton, Jakub Jelinek, et al.
description: Fourth Extended Filesystem
license: GPL
alias: fs-ext4
alias: ext4
alias: ext3
alias: ext2
depends: mbcache,jbd2
retpoline: Y
name: ext4
vermagic: 5.15.0-1023-aws SMP mod_unload modversions
parm: abort:behaviour when a metadata write fails (int)
parm: barrier:default barrier usage (int)
parm: dioread_nolock:use delalloc with no lock (int)
parm: max_dir_size_kb:max size of directories (unsigned long)
parm: min_batch_time:min time between delayed allocation attempts (us) (int)
parm: max_batch_time:max time between delayed allocation attempts (us) (int)
Đầu ra cung cấp thông tin chi tiết về module ext4
, bao gồm tên file, tác giả, mô tả, giấy phép, bí danh, các phụ thuộc và các tham số khác nhau có thể được cấu hình.
Bạn có thể sử dụng lệnh modinfo
để khám phá thông tin về bất kỳ module kernel nào được cài đặt trên hệ thống của bạn. Điều này có thể hữu ích khi khắc phục sự cố liên quan đến các module kernel hoặc khi cố gắng hiểu chức năng và các tùy chọn cấu hình của một module cụ thể.
Khám phá Thông tin Module Sử dụng modinfo
Trong bước này, chúng ta sẽ đi sâu hơn vào việc sử dụng lệnh modinfo
để khám phá thông tin chi tiết về các module kernel.
Đầu tiên, hãy liệt kê tất cả các module kernel hiện đang được tải trên hệ thống của chúng ta:
sudo modinfo -F filename -a
Ví dụ đầu ra:
/lib/modules/5.15.0-1023-aws/kernel/drivers/acpi/acpi_power_meter.ko
/lib/modules/5.15.0-1023-aws/kernel/drivers/acpi/acpi_thermal_rel.ko
/lib/modules/5.15.0-1023-aws/kernel/drivers/acpi/battery.ko
/lib/modules/5.15.0-1023-aws/kernel/drivers/acpi/button.ko
/lib/modules/5.15.0-1023-aws/kernel/drivers/acpi/ec_sys.ko
/lib/modules/5.15.0-1023-aws/kernel/drivers/acpi/fan.ko
/lib/modules/5.15.0-1023-aws/kernel/drivers/acpi/video.ko
Tùy chọn -F filename
cho modinfo
biết chỉ hiển thị tên file của các module và tùy chọn -a
liệt kê tất cả các module.
Bây giờ, hãy khám phá chi tiết của một module cụ thể, chẳng hạn như module ext4
:
sudo modinfo ext4
Ví dụ đầu ra:
filename: /lib/modules/5.15.0-1023-aws/kernel/fs/ext4/ext4.ko
author: Remy Card, Stephen Tweedie, Andrew Morton, Jakub Jelinek, et al.
description: Fourth Extended Filesystem
license: GPL
alias: fs-ext4
alias: ext4
alias: ext3
alias: ext2
depends: mbcache,jbd2
retpoline: Y
name: ext4
vermagic: 5.15.0-1023-aws SMP mod_unload modversions
parm: abort:behaviour when a metadata write fails (int)
parm: barrier:default barrier usage (int)
parm: dioread_nolock:use delalloc with no lock (int)
parm: max_dir_size_kb:max size of directories (unsigned long)
parm: min_batch_time:min time between delayed allocation attempts (us) (int)
parm: max_batch_time:max time between delayed allocation attempts (us) (int)
Đầu ra này cung cấp thông tin chi tiết về module ext4
, bao gồm tên file, tác giả, mô tả, giấy phép, bí danh, các phụ thuộc và các tham số khác nhau có thể được cấu hình.
Bạn có thể sử dụng lệnh modinfo
để khám phá thông tin về bất kỳ module kernel nào được cài đặt trên hệ thống của bạn. Điều này có thể hữu ích khi khắc phục sự cố liên quan đến các module kernel hoặc khi cố gắng hiểu chức năng và các tùy chọn cấu hình của một module cụ thể.
Khắc phục Sự cố Module với modinfo
Trong bước cuối cùng này, chúng ta sẽ học cách sử dụng lệnh modinfo
để khắc phục sự cố liên quan đến các module kernel.
Hãy bắt đầu bằng cách thử tải một module không tồn tại:
sudo modprobe non_existent_module
Ví dụ đầu ra:
modprobe: FATAL: Module non_existent_module not found in directory /lib/modules/5.15.0-1023-aws
Như bạn có thể thấy, lệnh modprobe
không tải được non_existent_module
vì nó không tồn tại trên hệ thống.
Bây giờ, hãy thử lấy thêm thông tin về vấn đề này bằng lệnh modinfo
:
sudo modinfo non_existent_module
Ví dụ đầu ra:
modinfo: ERROR: Module non_existent_module not found.
Lệnh modinfo
cũng không tìm thấy bất kỳ thông tin nào về non_existent_module
, xác nhận rằng module không tồn tại trên hệ thống.
Nếu bạn gặp sự cố với một module kernel cụ thể, bạn có thể sử dụng lệnh modinfo
để khắc phục sự cố. Ví dụ: nếu một module không tải chính xác, bạn có thể sử dụng modinfo
để kiểm tra các phụ thuộc, tham số và thông tin liên quan khác của module để xác định sự cố.
Hãy thử một ví dụ với một module thực, chẳng hạn như module ext4
:
sudo modinfo ext4
Ví dụ đầu ra:
filename: /lib/modules/5.15.0-1023-aws/kernel/fs/ext4/ext4.ko
author: Remy Card, Stephen Tweedie, Andrew Morton, Jakub Jelinek, et al.
description: Fourth Extended Filesystem
license: GPL
alias: fs-ext4
alias: ext4
alias: ext3
alias: ext2
depends: mbcache,jbd2
retpoline: Y
name: ext4
vermagic: 5.15.0-1023-aws SMP mod_unload modversions
parm: abort:behaviour when a metadata write fails (int)
parm: barrier:default barrier usage (int)
parm: dioread_nolock:use delalloc with no lock (int)
parm: max_dir_size_kb:max size of directories (unsigned long)
parm: min_batch_time:min time between delayed allocation attempts (us) (int)
parm: max_batch_time:max time between delayed allocation attempts (us) (int)
Đầu ra cung cấp thông tin chi tiết về module ext4
, bao gồm các phụ thuộc, tham số và các chi tiết liên quan khác của nó. Thông tin này có thể hữu ích khi khắc phục sự cố liên quan đến module ext4
hoặc các module kernel khác trên hệ thống của bạn.
Tóm tắt
Trong lab này, chúng ta đã khám phá lệnh modinfo
của Linux, lệnh này cung cấp thông tin chi tiết về các module kernel. Chúng ta đã học cách sử dụng modinfo
để hiểu các đặc điểm của một module kernel cụ thể, chẳng hạn như tên file, tác giả, mô tả, giấy phép, bí danh, các phụ thuộc và các tham số có thể cấu hình khác nhau của nó. Lệnh này có thể hữu ích khi khắc phục sự cố liên quan đến các module kernel hoặc khi cố gắng hiểu chức năng và các tùy chọn cấu hình của một module cụ thể. Chúng ta cũng đã khám phá cách sử dụng modinfo
để khắc phục sự cố module bằng cách xem xét thông tin mà nó cung cấp.