TÊN
modprobe - xử lý cấp cao các mô-đun có thể tải
TÓM TẮC
modprobe [-adnqv] [-C config ] mô-đun [biểu tượng = giá trị ...]
modprobe [-adnqv] [-C config ] [-t type ] mẫu
modprobe -l [-C config ] [-t type ] mẫu
modprobe -c [-C config ]
modprobe -r [-dnv] [-C cấu hình ] [mô-đun ...]
modprobe -Vh
TÙY CHỌN
-a , --all
Tải tất cả các mô-đun phù hợp thay vì dừng sau lần tải thành công đầu tiên.
-c , --showconfig
Hiển thị cấu hình hiện được sử dụng.
Cấu hình -C , --config
Sử dụng cấu hình tập tin thay vì (tùy chọn) /etc/modules.conf để chỉ định cấu hình. Biến môi trường MODULECONF cũng có thể được sử dụng để chọn (và ghi đè) một tệp cấu hình khác từ mặc định /etc/modules.conf (hoặc /etc/conf.modules (không được chấp nhận)).
Khi biến môi trường UNAME_MACHINE được thiết lập, modutils sẽ sử dụng giá trị của nó thay vì trường máy từ uname () syscall. Điều này chủ yếu được sử dụng khi bạn đang biên dịch các mô-đun 64 bit trong không gian người dùng 32 bit hoặc ngược lại, đặt UNAME_MACHINE thành loại mô-đun. Các modut hiện tại không hỗ trợ chế độ xây dựng chéo đầy đủ cho các mô-đun, nó được giới hạn trong việc lựa chọn giữa các phiên bản 32 và 64 bit của kiến trúc máy chủ.
-d , --debug
Hiển thị thông tin về biểu diễn bên trong của chồng mô-đun.
-h , --help
Hiển thị tóm tắt các tùy chọn và thoát ngay lập tức.
-k , --autoclean
Đặt 'autoclean' trên các mô-đun đã tải. Được sử dụng bởi hạt nhân khi nó gọi trên modprobe để đáp ứng một tính năng bị thiếu (được cung cấp như một mô-đun). Tùy chọn -q được hàm ý bởi -k . Các tùy chọn này sẽ tự động được gửi tới bản in.
-l , --list
Liệt kê các mô-đun phù hợp.
-n , --show
Không thực sự thực hiện hành động, chỉ hiển thị những gì sẽ được thực hiện.
-q , --quiet
Không phàn nàn về insmod không cài đặt một mô-đun. Tiếp tục như bình thường, nhưng âm thầm, với các khả năng khác cho modprobe để kiểm tra. Tùy chọn này sẽ tự động được gửi tới phần mềm không hợp lệ.
-r , --remove
Loại bỏ mô-đun (ngăn xếp) hoặc làm autoclean, tùy thuộc vào việc có bất kỳ mô-đun được đề cập trên dòng lệnh.
-s , --syslog
Báo cáo qua syslog thay vì stderr. Tùy chọn này sẽ tự động được gửi tới chế độ không hợp lệ.
-t moduletype ; --type moduletype
Chỉ xem xét các mô-đun thuộc loại này. modprobe sẽ chỉ xem xét các mô-đun có đường dẫn thư mục bao gồm chính xác " / moduletype / ". moduletype có thể bao gồm nhiều hơn một tên thư mục, ví dụ như " -t drivers / net " sẽ liệt kê các mô đun trong xxx / drivers / net / và các thư mục con của nó.
-v , --verbose
In tất cả các lệnh khi chúng được thực hiện.
-V, --version
Hiển thị phiên bản của modprobe .
Chú thích:
Tên mô-đun không được chứa đường dẫn (không có '/'), cũng như chúng không chứa dấu '.o'. Ví dụ: phiếu là tên mô-đun hợp lệ cho modprobe , /lib/modules/2.2.19/net/slip và slip.o không hợp lệ. Điều này áp dụng cho dòng lệnh và các mục trong cấu hình.
SỰ MIÊU TẢ
Các tiện ích modprobe và depmod nhằm tạo ra một hạt nhân mô đun Linux dễ quản lý hơn cho tất cả người dùng, quản trị viên và người bảo trì phân phối.
Modprobe sử dụng một tệp phụ thuộc "Makefile", được tạo bởi depmod , để tự động tải các mô-đun có liên quan từ tập hợp các mô đun có sẵn trong các cây thư mục được xác định trước.
Modprobe được sử dụng để tải một mô-đun duy nhất, một chồng các mô-đun phụ thuộc, hoặc tất cả các mô-đun được đánh dấu bằng một thẻ được chỉ định.
Modprobe sẽ tự động tải tất cả các mô-đun cơ sở cần thiết trong ngăn xếp mô-đun, như được mô tả bởi tệp phụ thuộc modules.dep . Nếu tải một trong các mô-đun này không thành công, toàn bộ các mô-đun hiện tại được tải trong phiên hiện tại sẽ được tự động tải xuống.
Modprobe có hai cách tải mô-đun. Một cách (chế độ thăm dò) sẽ cố tải mô-đun ra khỏi danh sách (được xác định theo mẫu ). Modprobe dừng tải ngay sau khi một mô-đun tải thành công. Điều này có thể được sử dụng để tự động tải một trình điều khiển Ethernet ra khỏi danh sách.
Cách khác modprobe có thể được sử dụng là để tải tất cả các mô-đun từ một danh sách. Xem EXAMPLES , bên dưới.
Với tùy chọn -r , modprobe sẽ tự động dỡ bỏ một đống mô-đun, tương tự như cách " rmmod -r " thực hiện. Lưu ý rằng chỉ cần sử dụng " modprobe -r " sẽ xóa các mô-đun được nạp tự động chưa sử dụng và cũng thực hiện các lệnh trước và sau khi xóa trong tập tin cấu hình /etc/modules.conf .
Việc kết hợp các tùy chọn -l và -t liệt kê tất cả các mô đun có sẵn của một kiểu nhất định.
Tùy chọn -c sẽ in cấu hình hiện được sử dụng (tệp cấu hình mặc định +).
CẤU HÌNH
Hành vi của modprobe (và depmod ) có thể được sửa đổi bởi tập tin cấu hình (tùy chọn) /etc/modules.conf .
Để biết mô tả chi tiết hơn về những gì tệp này có thể chứa, cũng như cấu hình mặc định được sử dụng bởi depmod và modprobe , hãy xem modules.conf (5).
Lưu ý rằng các lệnh trước và sau xóa sẽ không được thực thi nếu một mô đun được "autocleaned" bởi kerneld! Tìm kiếm sự hỗ trợ sắp tới để lưu trữ mô-đun liên tục thay thế.
Nếu bạn muốn sử dụng các tính năng trước và sau cài đặt, bạn sẽ phải tắt autoclean cho kerneld và thay vào đó đặt một cái gì đó giống như dòng sau trong crontab của bạn (điều này được sử dụng cho các hệ thống kmod) để làm autoclean cứ sau 2 phút :
* / 2 * * * * test -f / proc / modules && / sbin / modprobe -r
CHIẾN LƯỢC
Ý tưởng là modprobe sẽ trông đầu tiên trong thư mục chứa các mô-đun được biên dịch cho bản phát hành hiện tại của hạt nhân. Nếu module không được tìm thấy ở đó, modprobe sẽ tìm trong thư mục chung với phiên bản hạt nhân (ví dụ 2.0, 2.2). Nếu mô-đun vẫn được tìm thấy, modprobe sẽ tìm trong thư mục chứa các mô-đun cho bản phát hành mặc định, v.v.
Khi bạn cài đặt một linux mới, các mô-đun sẽ được chuyển đến một thư mục liên quan đến bản phát hành (và phiên bản) của hạt nhân bạn đang cài đặt. Sau đó, bạn nên thực hiện một liên kết tượng trưng từ thư mục này đến thư mục "mặc định".
Mỗi khi bạn biên dịch một hạt nhân mới, lệnh " make modules_install " sẽ tạo một thư mục mới, nhưng sẽ không thay đổi liên kết "mặc định".
Khi bạn nhận được một mô-đun không liên quan đến sự phân bố hạt nhân, bạn nên đặt nó vào một trong các thư mục độc lập phiên bản trong / lib / modules .
Đây là chiến lược mặc định, có thể được ghi đè trong /etc/modules.conf .
VÍ DỤ
modprobe -t net
Tải một trong các mô-đun được lưu trữ trong thư mục được gắn thẻ "net". Mỗi mô-đun được thử cho đến khi một thành công.
modprobe -a -t boot
Tất cả các mô-đun được lưu trữ trong thư mục được gắn thẻ "khởi động" sẽ được tải.
-bản modprobe
Điều này sẽ cố tải mô-đun slhc.o nếu nó chưa được tải trước đó, vì mô-đun trượt cần chức năng trong mô-đun slhc. Sự phụ thuộc này sẽ được mô tả trong tệp modules.dep được tạo tự động bởi depmod .
modprobe -r phiếu
Điều này sẽ dỡ bỏ mô-đun trượt. Nó cũng sẽ tự động dỡ bỏ mô-đun slhc, trừ khi nó cũng được sử dụng bởi một số mô-đun khác (ví dụ ppp).
XEM THÊM
depmod (8), lsmod (8), kerneld (8), ksyms (8), rmmod (8).
CHẾ ĐỘ AN TOÀN
Nếu uid hiệu quả không bằng uid thực thì modprobe sẽ xử lý đầu vào của nó với cực kỳ nghi ngờ. Tham số cuối cùng luôn được coi là tên mô-đun, ngay cả khi nó bắt đầu bằng '-'. Chỉ có thể có một tên mô-đun và các tùy chọn của biểu mẫu "variable = value" bị cấm. Tên mô-đun luôn được coi là chuỗi, không có mở rộng meta được thực hiện ở chế độ an toàn. Tuy nhiên mở rộng meta vẫn được áp dụng cho dữ liệu đọc từ tệp cấu hình.
euid có thể không bằng uid khi modprobe được gọi từ hạt nhân, điều này đúng với hạt nhân> = 2.4.0-test11. Trong một thế giới lý tưởng, modprobe có thể tin cậy hạt nhân để chỉ truyền các tham số hợp lệ tới modprobe. Tuy nhiên, ít nhất một khai thác gốc cục bộ đã xảy ra vì mã hạt nhân mức cao thông qua các tham số chưa được xác minh trực tiếp từ người dùng đến modprobe. Vì vậy, modprobe không còn tin tưởng đầu vào hạt nhân nữa.
modprobe tự động đặt chế độ an toàn khi môi trường chỉ bao gồm các chuỗi này
HOME = / TERM = linux PATH = / sbin: / usr / sbin: / bin: / usr / binĐiều này phát hiện modprobe thực hiện từ hạt nhân trên hạt nhân 2.2 mặc dù 2.4.0-test11, ngay cả khi uid == euid, mà nó làm trên hạt nhân trước đó.
CÁC LỆNH LOGGING
Nếu thư mục / var / log / ksymoops tồn tại và modprobe được chạy với một tùy chọn có thể tải hoặc xóa một module thì modprobe sẽ ghi lại lệnh của nó và trạng thái trả về trong / var / log / ksymoops / `date +% Y% m% d .log` . Không có chuyển đổi để vô hiệu hóa đăng nhập tự động này, nếu bạn không muốn nó xảy ra, không tạo / var / log / ksymoops . Nếu thư mục đó tồn tại, nó phải được sở hữu bởi root và là chế độ 644 hoặc 600 và bạn nên chạy script insmod_ksymoops_clean mỗi ngày hoặc lâu hơn.
YÊU CẦU YÊU CẦU
depmod (8), insmod (8).
Quan trọng: Sử dụng lệnh man ( % man ) để xem cách một lệnh được sử dụng trên máy tính cụ thể của bạn.