วิธีเพิ่มพารามิเตอร์โมดูลเคอร์เนล


20

วิธีเพิ่มพารามิเตอร์โมดูลเคอร์เนลใน Ubuntu 11.04

ฉันสามารถใช้/etc/moduleไฟล์ได้หรือไม่ ถ้าใช่เป็นอย่างไร


1
คุณหมายถึงพารามิเตอร์เป็นi915.modeset=1อย่างไร
Lekensteyn

ฉันหมายถึง 'options thinkpad_acpi fan_control = 1' ในไฟล์ภายใต้ /etc/modprobe.d/ หรือ 'thinkpad_acpi fan_control = 1' ใน / etc / modules?
waterloo2005

คำตอบ:


19

/etc/modules/etc/init/module-init-tools.confดูเหมือนว่าจะโหลดโดย อาร์กิวเมนต์แรกคือชื่อโมดูลอาร์กิวเมนต์อื่น ๆ คือพารามิเตอร์ การเพิ่มรายการต่อไปนี้/etc/modulesดูเหมือนจะใช้ได้ดี:

thinkpad_acpi fan_control=1

ในการโหลดโมดูลนี้และตั้งค่าพารามิเตอร์เหล่านี้ในช่วงเริ่มต้นของการบูตให้เพิ่มบรรทัดก่อนหน้าเป็น/etc/initramfs-tools/modulesไฟล์ หลังจากการเปลี่ยนแปลงในไฟล์นั้นคุณจะต้องสร้าง ramdisk ใหม่:

sudo update-initramfs -u

เป็นทางเลือกที่เป็นไปได้คุณสามารถลองเพิ่มตัวเลือกไปยังเคอร์เนลไลน์ (ฉันไม่ได้ทดสอบด้วยตัวเอง แต่ดูเหมือนว่าจะใช้งานได้สำหรับการตั้งค่าเช่นi915.modeset=1นั้นแก้ไข/etc/default/grubและค้นหาบรรทัดด้วยGRUB_CMDLINE_LINUX_DEFAULT="quiet splash"แทนที่มันด้วยสิ่งต่อไปนี้:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash thinkpad_acpi.fan_control=1"

ในการรับรายการตัวเลือกสำหรับโมดูลเคอร์เนล:

modinfo -p thinkpad_acpi

สิ่งนี้ไม่ได้ผลเพราะi915ฉันต้องวิ่ง:

modinfo i915 | grep ^parm

ในการรับค่าปัจจุบันของพารามิเตอร์โมดูลให้รัน:

sudo cat /sys/module/MODULE/parameters/PARAM

สำหรับfan_controlพารามิเตอร์ของthinkpad_acpiโมดูลคุณต้องเรียกใช้:

sudo cat /sys/module/thinkpad_acpi/parameters/fan_control

หากฟังก์ชันนี้ส่งคืนข้อผิดพลาดให้ตรวจสอบว่าโมดูลถูกโหลดหรือไม่และมีตัวเลือกอยู่หรือไม่


2
จะทราบพารามิเตอร์ของโมดูลได้อย่างไร? ขอบคุณ
waterloo2005

@ waterloo2005: คุณสามารถใช้/sysมันได้ ดูคำตอบที่แก้ไขแล้ว
Lekensteyn

ฉันพบว่าฉันไม่ได้เพิ่มพารามิเตอร์ใน / etc / modules ฉันต้องการเพิ่มใน /etc/modprobe.d/ เท่านั้น ขอบคุณ
waterloo2005

ความแตกต่างระหว่าง/etc/modulesและ/etc/modprobe.d: ตัวแรกใช้กับโมดูลที่โหลดในระยะแรกของการบูท (หลังจากเริ่มพลีมั ธ ), อันหลังถูกโหลดภายหลัง (โดย initscripts)
Lekensteyn

ฉันจะหาคำแนะนำอย่างเป็นทางการได้จากที่ใด ขอบคุณ
waterloo2005

10

การตั้งค่าตัวเลือกโมดูลโดยใช้ไฟล์ใน /etc/modprobe.d/

ไฟล์ในไดเร็กทอรี /etc/modprobe.d/ สามารถใช้เพื่อส่งการตั้งค่าโมดูลไปยัง udev ซึ่งจะใช้ modprobe เพื่อจัดการการโหลดของโมดูลระหว่างการบูตระบบ ไฟล์การกำหนดค่าในไดเรกทอรีนี้สามารถมีชื่อใด ๆ เนื่องจากไฟล์นั้นลงท้ายด้วยนามสกุล. config ไวยากรณ์คือ:

/etc/modprobe.d/myfilename.conf
---------------------------------------------------------
options modname parametername=parametervalue

ตัวอย่างเช่น:

/etc/modprobe.d/thinkfan.conf
---------------------------------------------------------
# On ThinkPads, this lets the 'thinkfan' daemon control fan speed
options thinkpad_acpi fan_control=1

ที่มา: โมดูลเคอร์เนล - ArchWiki


เท่าที่ฉันรู้คุณสามารถใช้วิธีการดังกล่าวสำหรับโมดูลที่โหลดโดยอัตโนมัติในเวลาบูต (เพื่อหลีกเลี่ยงการขนถ่ายและโหลดโมดูลที่มีพารามิเตอร์พิเศษเนื่องจากอาจเป็นกรณีสำหรับโมดูลไดรเวอร์) และ/etc/modulesไฟล์สำหรับโมดูลที่ ไม่โหลดโดยอัตโนมัติในเวลาบูต


7

ด้วย Ubuntu 16.04 ไม่มีใครสามารถรวมพารามิเตอร์โมดูลเคอร์เนล/etc/modulesมา มีข้อผิดพลาดเกิดขึ้นในบันทึกการบูตว่าไม่พบ "my_kernel_mod myparam = x"

แต่หนึ่งต้องการใส่ชื่อโมดูลเคอร์เนลเท่านั้น/etc/modulesและใส่ตัวเลือกใน /etc/modprobe.d/myfilename.conf (ตามที่แนะนำข้างต้น )

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.