คำถามติดแท็ก kernel-modules

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

1
ไม่สามารถโหลดโมดูล: ไม่เห็นด้วยเกี่ยวกับรุ่นของสัญลักษณ์ module_layout
ทำตามบทช่วยสอนนี้เพื่อเขียนไดรเวอร์แรกของฉัน Makefile คือ: # Makefile – makefile of our first driver # if KERNELRELEASE is defined, we've been invoked from the # kernel build system and can use its language. ifneq (${KERNELRELEASE},) obj-m := ofd.o # Otherwise we were called directly from the command line. # Invoke the kernel build …

3
เมานท์เครื่องพิมพ์ที่ / dev / usb และยังคงใช้ CUPS
เนื่องจาก CUPS เวอร์ชันใหม่ทำให้ฉันสูญเสียเส้นทางตรงไปยังเครื่องพิมพ์ที่มีอยู่ก่อนหน้านี้ใน/dev/usb/lpXXXทันที ฉันใช้สิ่งนี้เพื่อพิมพ์โดยตรงจากบรรทัดคำสั่ง echo "test" > /dev/usb/lp0. หลังจากการค้นหาผมพบว่าวิธีการที่จะแก้ไขปัญหานี้โดยการแสดงความคิดเห็นออกในblacklist usblp /etc/modprobe.d/blacklist.confใช้งานได้จริง แต่ถ้าฉันทำเช่นนั้น CUPS จะไม่สามารถสื่อสารกับเครื่องพิมพ์ใด ๆ ได้อีก (และฉันต้องการสิ่งนั้น) ดังนั้นฉันจะมีเส้นทางตรงไปยังเครื่องพิมพ์ของฉันและยังคงทำงาน CUPS ได้อย่างไร หมายเหตุ: เครื่องพิมพ์ CUPS บางรุ่นไม่ได้รับการยอมรับดังนั้นจึงlprไม่สามารถใช้งานได้

1
ฉันจะโหลดโมดูลเคอร์เนลอย่างถูกต้องได้อย่างไร
คำถามที่เกี่ยวข้อง ฉันไม่สามารถโหลดโมดูลเคอร์เนลเพื่อลองตั้งค่าสถานะใหม่ได้ ตัวอย่าง: เริ่มต้นได้โดยไม่ต้องthinkpad_acpi fan_control=1ดังนั้นหากคอมพิวเตอร์ของฉันร้อนมากและแฟน ๆ ไม่ได้ความเร็วเต็มที่บางครั้งอาจใช้งานได้เพียงแค่โหลดโมดูลชั่วคราวfan_controlและตั้งพัดลมเป็นเวลาหลายนาทีเพื่อให้ได้ความเร็วสูงสุดเท่าที่จะเป็นไปได้ สิ่งนี้เป็นไปไม่ได้เพราะดูเหมือนว่าบางโมดูลเคอร์เนลขึ้นอยู่กับคนอื่น ๆ และดูเหมือนว่าเมล็ด Linux ที่ทันสมัยกำลังตรวจสอบว่า ดังนั้นฉันทำอะไรจนถึง: ตรวจสอบการอ้างอิง modinfo -F depends thinkpad_acpi ลองยกเลิกการโหลดโมดูลเหล่านี้ rmmod หรือ modprobe -r $dependencies บางโมดูลขึ้นอยู่กับผู้อื่นลองถอดมันออกมาด้วย ใช้งานไม่ได้แม้ว่าจะไม่มี 'การพึ่งพา' (หรืออย่างน้อย modinfo บอกฉันว่า) Google เป็นอย่างมากสำหรับ modprobe: FATAL: Module x is in use. กำลังอ่านTLD

1
จะเข้าใจเอาต์พุต modinfo ได้อย่างไร?
ฉันแค่พยายามที่จะเข้าใจmodinfoผลลัพธ์ที่อธิบายถึงโมดูลเคอร์เนล ตัวอย่างเช่นในกรณีของโมดูลi915เอาต์พุตจะมีลักษณะดังนี้: $ modinfo i915 filename: /lib/modules/4.2.0-1-amd64/kernel/drivers/gpu/drm/i915/i915.ko license: GPL and additional rights description: Intel Graphics author: Intel Corporation [...] firmware: i915/skl_dmc_ver1.bin alias: pci:v00008086d00005A84sv*sd*bc03sc*i* [...] depends: drm_kms_helper,drm,video,button,i2c-algo-bit intree: Y vermagic: 4.2.0-1-amd64 SMP mod_unload modversions parm: modeset:Use kernel modesetting [KMS] (0=DRM_I915_KMS from .config, 1=on, -1=force vga console preference [default]) (int) [...] ฉันสามารถเข้าใจบางฟิลด์ได้ …

2
การเพิ่มการเรียกระบบใหม่ไปยัง Linux 3.2.x ด้วยโมดูลเคอร์เนลที่โหลดได้ [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Unix & Linux Stack Exchange ปิดให้บริการใน7 ปีที่ผ่านมา ฉันต้องการเพิ่มการเรียกของระบบใหม่ใน linux kernel 3.2.x แต่เป็นโมดูลเคอร์เนลที่สามารถโหลดได้ (เพราะฉันไม่ต้องการคอมไพล์เคอร์เนลซ้ำแล้วซ้ำอีก) ฉันอ่านโพสต์มากมายบนอินเทอร์เน็ตและใน SO และบางแห่งอ้างว่าการใช้การเรียกระบบเนื่องจากโมดูลที่โหลดได้นั้นเป็นไปไม่ได้ในขณะที่คนอื่นบอกว่าเป็นไปได้ มันคืออะไร จะทำอย่างไรถ้าเป็นไปได้?

4
วิธีแก้ปัญหา“ การสร้างโมดูลการเพิ่มแขกหลักไม่สำเร็จ”
ฉันพยายามติดตั้งโมดูล VirtualBox Guest Additions ในแขก VM ที่รัน CentOS แต่ฉันได้รับข้อความแสดงข้อผิดพลาดนี้เมื่อทุกอย่างไม่เป็นไร: การสร้างโมดูลการเพิ่มเติมจากผู้เข้าร่วมหลักล้มเหลว เนื่องจากฉันใหม่กับ CentOS และ VirtualBox มากฉันไม่มีความคิดที่จะแก้ปัญหานี้และไม่สามารถหาวิธีแก้ไขปัญหาใด ๆ ที่ค้นหาอินเทอร์เน็ต (โพสต์เดียวที่ฉันพบไม่ได้ช่วยฉัน) นี่คือบันทึก: /usr/src/vboxguest-4.1.14/vboxguest/build_in_tmp: บรรทัด 55: make: ไม่พบคำสั่งการสร้างผู้ใช้สำหรับการเพิ่มของผู้เยี่ยมชม การสร้างกฎ udev สำหรับโมดูลเคอร์เนลส่วนบุคคลเพิ่มเติม

1
ฉันจะรวบรวมโมดูล DKMS สำหรับรุ่นเคอร์เนลหลายรุ่นใน Debian ได้อย่างไร
ฉันlinux-imageติดตั้งแพ็คเกจเวอร์ชัน 3.16 และ 4.0 แล้ว ในระหว่างการเข้าสู่ระบบฉันสามารถเลือกเคอร์เนลที่ฉันต้องการบูตในรายการเมนู "ตัวเลือกขั้นสูง" อย่างไรก็ตามเมื่อฉันติดตั้งโมดูล DKMS มันจะรวบรวมเฉพาะเวอร์ชั่นที่ใหม่กว่า: Setting up fglrx-modules-dkms (1:14.12-1) ... Loading new fglrx-14.12 DKMS files... Building only for 4.0.0-1-amd64 แพคเกจที่เกี่ยวข้อง ( linux-headers, linux-kbuild, linux-compiler-gcc) ติดตั้งสำหรับ 3.16 เกินไป ทำไมแพ็คเกจไม่ถูกคอมไพล์สำหรับเคอร์เนลอิมเมจเก่า? ฉันสามารถกำหนดค่าบางสิ่งบางอย่างมันจะรวบรวม?

1
เหตุใดแอพพื้นที่ผู้ใช้จึงต้องใช้ส่วนหัวเคอร์เนล
ฉันกำลังสร้างกล่องไม่ว่างและ iptables สำหรับอุปกรณ์ฝังตัวและหนึ่งในการอ้างอิงสำหรับพวกเขาคือส่วนหัวเคอร์เนล ฉันค้นหาทั้งระบบไฟล์ * .ko และไม่พบใครเลย ดังนั้นฉันจึงสรุปว่าแอปไม่ได้สร้างไดรเวอร์ที่สามารถโหลดได้ (โมดูลเคอร์เนล) กรณีอื่น ๆ สำหรับแอปพลิเคชันพื้นที่ผู้ใช้ในการกำหนดให้ส่วนหัวของเคอร์เนลมีอะไรบ้าง

1
จะปิดการใช้งานคีย์บอร์ดได้อย่างไร?
โดยไม่ต้องถอดแป้นพิมพ์ของฉันฉันต้องการปิดการใช้งานจาก terminal; ฉันหวังว่าสิ่งนี้สามารถทำได้โดยใช้rmmodแต่ขึ้นอยู่กับโมดูลที่โหลดในปัจจุบันของฉันมันดูเหมือนจะเป็นไปไม่ได้ ไม่มีใครมีความคิดใด ๆ

2
โมดูลเคอร์เนล: .o vs .ko
ดูเหมือนว่าไฟล์ที่มีโมดูลเคอร์เนลจะเรียกว่า.oอย่างน้อยนั่นคือสิ่งที่ฉันคิดว่าเมื่อมองไปที่การกวดวิชาเช่นนี้ .koอย่างไรก็ตามในกล่องเดเบียนบีบของฉันไฟล์เหล่านี้ดูเหมือนจะถูกเรียกว่า มันขึ้นอยู่กับการกระจาย (หรือรูปแบบของมัน) ไม่ว่าจะเป็นไฟล์ที่เรียกว่า.oหรือ.koและพวกเขาจะมากหรือน้อยเหมือนกันมิฉะนั้น?

1
ALSA / ASoC: วิธีโหลดอุปกรณ์ / ไดรเวอร์อย่างถูกต้อง
ฉันใช้ Buildroot เพื่อสร้างระบบ Linux (2.6.39.2) ในตัวสำหรับไมโครคอนโทรลเลอร์ NXP LPC3250 ตอนนี้ฉันกำลังพยายามทำให้ ALSA / ASoC ทำงาน แต่ฉันมีปัญหากับการทำให้โมดูลทำงานร่วมกัน (ฉันคิด!) พื้นหลังสำคัญบางอย่าง: คณะกรรมการฉันกำลังทดสอบกับเป็นศิลปินแบบฝัง 3250 V2 คณะกรรมการพัฒนาการ V2 แตกต่างจาก V1 เนื่องจากไม่มีหน้าจอ LCD แต่มีตัวแปลงสัญญาณเสียง I2S: NXP UDA1380 การสนับสนุนบอร์ดสำหรับ EA3250 V1รวมอยู่ในเคอร์เนลรุ่นLPCLinux นอกจากนี้ยังมีบอร์ดพัฒนาอื่นที่เรียกว่าPhytec 3250ซึ่งมีชิปตัวแปลงสัญญาณ UDA1380 เดียวกัน การกระจาย LPCLinux ยังสนับสนุนบอร์ด Phytec พร้อมกับชิปตัวแปลงสัญญาณเสียง จากสิ่งที่ฉันได้มองเห็นคณะกรรมการ Phytec 3250 มีตัวแปลงสัญญาณ UDA1380 บน I2C อยู่0x18 บนกระดาน …

2
ไม่สามารถเริ่ม archlinux หลังจากอัปเดต: ไม่พบ uuid
ฉันอัปเดต archlinux ด้วย "pacman -Syu" แล้วเมื่อฉันรีสตาร์ทระบบจะเริ่มไม่ได้ นี่คือรายงาน: Warning: /lib/modules/4.11.9-1-ARCH/modules.devname not found - ignoring version 232 Error: device 'UUID=b5a9a977-e9a7-4d3d-96a9-dcf9c3a9010d' not found. Skipping fsck. Error: can't find UUID=b5a9a977-e9a7-4d3d-96a9-dcf9c3a9010d You are now being dropped into a emergency shell. Can't access tty: job control turned off ในเปลือกนั้นแป้นพิมพ์ของฉันไม่ทำงาน ฉันกำลังลองด้วย livecd ของ archlinux: การติดตั้งพาร์ติชั่นและการใช้ chroot ฉันจะตรวจสอบ …

2
“ usb 3-2: ไม่สามารถตั้งค่า config # 1, ข้อผิดพลาด -110” - แป้นพิมพ์ USB ทำงานได้ในแล็ปท็อป Windows 8 แต่บนพีซีเท่านั้นจนกว่าบูท Linux
ฉันลองแป้นพิมพ์ USB 2 อันใหม่ที่ใช้งานได้จนกระทั่ง Linux เริ่มบูท เมื่อบูทฉันเห็น: [ 8.365211] usb 3-2: New USB device found, idVendor=1a2c, idProduct=0b23 [ 8.404863] usb 3-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0 [ 8.444623] usb 3-2: Product: USB Keyboard [ 10.641472] EXT4-fs (sda2): mounted filesystem with ordered data mode. Opts: (null) [ 13.481363] usb …

1
เสียงไม่ทำงานเมื่อทั้งการ์ดเสียงและ HDMI ใช้ไดรเวอร์ Intel HDA วิธีการแลกเปลี่ยนคำสั่งการโหลดอุปกรณ์
ฉันมีเน็ตบุ๊ก Acer Aspire One 522 ซึ่งมีการ์ดเสียง Intel HDA ที่ใช้ชิปเซ็ต Conexant CX20584 แม้ว่า KDE จะส่งเสียงออกเมื่อเริ่มต้นใช้งานแฟลชและแอปอื่น ๆ อีกมากมายซึ่งมองหา/dev/dspอุปกรณ์เพียงแค่ไม่สามารถส่งเสียงออกมาได้ แต่ให้ประสบการณ์มัลติมีเดียที่ไร้ประโยชน์ เมื่อฉันตรวจสอบอุปกรณ์การเล่น ALSA ของฉันด้วยaplay -lฉันจะเห็นว่าอุปกรณ์เสียงหลักได้รับการจดจำเป็นการ์ด 1 แทนที่จะเป็น 0 ซึ่งถูกเชื่อมต่อกับ HDMI แทน: **** List of PLAYBACK Hardware Devices **** card 0: Generic [HD-Audio Generic], device 3: HDMI 0 [HDMI 0] Subdevices: 1/1 Subdevice #0: subdevice …

1
insmod: ข้อผิดพลาด: ไม่สามารถแทรกโมดูล 8188eu.ko: รูปแบบโมดูลไม่ถูกต้อง
ฉันพยายามใช้ TL-WN725N เป็นอะแดปเตอร์ USB WiFi พร้อม Fedora 20 ผมทำตามเหล่านี้insructionsและอะแดปเตอร์ทำงานได้ดีและยังอยู่รอดการปรับปรุงที่สองในช่วงไม่กี่สัปดาห์ที่ผ่านมา จากนั้นฉันก็ทำyum updateวันนี้และมันก็ใช้ได้ดีจนกระทั่งฉันรีสตาร์ทคอมพิวเตอร์ insmod: ERROR: could not insert module 8188eu.ko: Invalid module formatผมพยายามที่จะโหลดโมดูลและมี สิ่งที่ฉันค้นพบคือเคอร์เนลและส่วนหัวของเคอร์เนลในโมดูลนั้นไม่เหมือนกันอีกต่อไปและฉันต้องอัปเดตเคอร์เนลดังนั้นฉันจึงทำอย่างนั้นและได้รับ sudo yum install kernel-headers Loaded plugins: langpacks, refresh-packagekit Package kernel-headers-3.17.3-200.fc20.x86_64 already installed and latest version Nothing to do ตอนนี้ฉันสับสนเล็กน้อยเกี่ยวกับวิธีการโหลดโมดูลอย่างถูกต้อง ใครมีความคิดเห็นบ้าง

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