Web Analytics
Privacy Policy Cookie Policy Terms and Conditions Kerneld mini-HOWTO: Next Previous Contents

12. Masalah umum dan hal-hal yang membuat Anda ingin tahu

12.1 Mengapa aku mendapatkan pesan "Cannot locate module for net-pf-X" ketika menjalankan ifconfig

Kira-kira pada versi kenel 1.3.80, kode networking telah diubah untuk untuk mengizinkan load keluarga protokol ) misal : IPX, AX.25 and AppleTalk) sebagai modules. Ini menyebabkan penambahan permintaan kerneld yang baru: net-pf-X, dimana X adalah sebuah angka yang mengidentifikasikan protokol (lihat /usr/src/linux/include/linux/socket.h untuk maksud dari angka tersebut. Malangnya, ifconfig secara tidak sengaja memicu pesan ini, sehingga banyak orang memperoleh pesan di log saat boot dan menjalankan ifconfig untuk melakukan setup loopback. Pesan ini tidak berbahaya, dan dapat dihilangkan dengan menambahkan baris

        alias net-pf-3 off      # Forget AX.25
        alias net-pf-4 off      # Forget IPX
        alias net-pf-5 off      # Forget AppleTalk

ke /etc/conf.modules. Tentu saja, Jika Anda menggunakan IPX sebagai module, Anda tidak perlu melumpuhkan IPX.

12.2 Setelah memulai kerneld, system saya menjadi makin lambat ketika mengaktifkan ppp-connection

Ada beberapa laporan tentang ini. Ini sepertinya interaksi yang kurang menguntungkan antara kerneld dan tkPPP script yang digunakan dalam beberapa system untuk men-setup dan memonitor hubungan ppp - script melakukan loop ketika menjalankan ifconfig. Ini memicu kerneld, untuk mencari module net-pf-X (lihat diatas) , menyebabkan system load tinggi dan mungkin memunculkan banyak pesan "Cannot locate module for net-pf-X" ke dalam log system. Tidak ada pemecahan yang diketahui, selain dengan tidak menggunakan tkPPP, atau mengubahnya untuk melakukan cara lain dalam memonitor hubungan.

12.3 kerneld tidak meload driver SCSI-ku!

Tambahkan entry untuk SCSI hostadapter ke /etc/conf.modules. Lihat keterangan di entry scsi_hostadapter diatas.

12.4 modprobe mengeluh 'gcc2_compiled' being undefined

Ini adalah bug di module-utilities, yang terlihat hanya dengan 2.6.0.9 dan terbaru, ini juga telah di dokumentasikan di releasenote untuk binutils. Bacalah. atau upgrade ke module-utilities yang mengatasi ini, contohnya: modules-2.0.0.

12.5 Driver sound terus melupakan setting untuk volume dll

Setting untuk module di simpan didalam module itu sendiri ketika diload . Sehingga ketika kerneld melakukan auto-unload sebuah module, semua setting yang ada dihapus, dan selanjutnya module meload kembali dengan setting default.

Anda bisa memberitahukan kerneld untuk mengkonfigurasikan module dengan menjalankann program stelah module di autoload . Lihat bagian di atas dalam entry 'post-install'.

12.6 DOSEMU butuh beberapa modules - bagaimana aku bisa membuat kerneld meload nya?

Tidak bisa. Tidak satupun versi DOSEMU -official atau development - mendukung proses load modules DOSEMU lewat kerneld. Namun, jika Anda menjalankan kernel 2.0.26 atau terbaru, Anda tidak butuh modules DOSEMU khusus lagi - upgrade saja DOSEMU ke 0.66.1.

12.7 Mengapa aku mendapat pesan "Ouch, kerneld timed out, message failed"?

Ketika kernel mengirim permintaan ke kerneld, ia berharap untuk menerima pemberitahuan kembali dalam waktu satu detik. Jika kerneld tidak mengirim pemberitahuan ini pesan tidak di log. Permintaan di transmisikan kembali, dan harus dilakukan berulang kali.

Ini biasanya terjadi pada system dengan load sangat tinggi - karena kerneld adalah proses yang berada di user-mode, ia dijadwal seperti juga proses lainnya didalam system. Pada saat load tinggi, ia mungkin tidak dapat bekerja pada saat itu untuk mengirim pemberitahuan sebelum kernel time out.

Jika ini masih terjadi meskipun ketika load rendah, coba restart kerneld. ( Kill kerneld proses dan restart dengan perintah /usr/sbin/kerneld. Jika masalahnya sama, kirim mail bug report ke linux-kernel@vger.rutgers.edu, tapi tolong yakinkan versi kernel dan kerneld up-to-date sebelum mengirimkannya.

12.8 mount tidak menunggu kerneld untuk meload module filesystem

Ada beberapa laporan bahwa perintah mount(8) tidak menunggu kerneld untuk meload module filesystem. lsmod tidak memperlihatkan bahwa kerneld meload module tersebut. Ini adalah sebuah bug di module-utilities versi 1.3.69f yang mempengaruhi beberapa pemakai Debian - bisa di perbaiki dengan memperoleh versi terbaru dari module-utilities.

12.9 kerneld gagal me-load module ncpfs

Anda perlu untuk meng-compile ncpfs utilities -DHAVE_KERNELD. Lihat ncpfs Makefile.

12.10 kerneld gagal meload module smbfs

Anda menggunakan versi lama dari smbmount utilities. Dapatkan yang terbaru (0.10 atau terbaru) dari ftp://tsx-11.mit.edu/pub/linux/filesystems/smbfs/

12.11 Saya telah membangun semuanya sebagai modules, dan sekarang system saya tidak dapat boot

12.12 kerneld gagal meload module root filesystem

Anda tidak dapat menjadikan semuanya modules: Kernel harus punya cukup driver didalamnya untuk bisa me mount root filesystem, dan menjalankan program penting untuk memulai kerneld. sehingga Anda tidak dapat menjadikannya modules

[Sesungguhnya, ini tidak benar. kernel 1.3.x dan semua 2.0.x mendukung penggunaan ramdisk yang di load oleh LILO ata LOADLIN, dan memungkinkan untuk meload modules dari "disk" ini di bagian paling awal dari proses boot. Cara melakukannya di jelaskan di file Documentation/initrd.txt yang ada di kernel source-files.]

12.13 kerneld tidak akan load saat boot time - mengeluhkan libgdbm

Versi yang lebih baru dari kerneld butuh GNU dbm library, libgdbm.so, untuk bekerja. sebagian besar instalasi memiliki file ini di /usr/lib, tapi Anda mungkin memulai kerneld sebelum /usr filsystem di mount. Salah satu gejala dari ini adalah kerneld tidak akan dimulai selama boot-up ( dari rc-scripts), tapi jalan dengan baik jika menjalankan dengan mengetikkannya setelah system boot-up. Pemecahannya adalah pindahkan startup kerneld sesudah /usr di mount, atau pindahkan gdbm library ke root filesystem, misal ke /lib.

12.14 Saya memperoleh pesan "Cannot load module xxx" tapi baru saja mengkonfigurasi ulang kernel tanpa xxx support!

Instalasi Slackware (mungkin juga lainnya) membuat default /etc/rc.d/rc.modules yang melakukan modprobe khusus atas beberapa modules. Tepatnya module mana yang di modprob tergantung pada konfigurasi asli kernel. Anda mungkin mengkonfigurasi ulang kernel dengan tidak memasukan satu atau lebih madules yang di modprobe di rc.modules, sehingga, muncul pesan kesalahan. Update rc.modules dengan meng-comment semua modules yang tidak lagi digunakan, atau hapus rc.modules semuanya dan biarkan kerneld meload modules ketika dibutuhkan.

12.15 Aku membangun ulang kernel dan modules, dan mendapat pesan tentang unresolved symbols ketika booting

Mungkin perlu mengkonfigurasi dan membangun ulang kernel dengan tidak memasukan beberapa modules. Beberapa modules lama yang tidak lagi digunakan bisa diperoleh dengan bergantung pada direktori /lib/modules. Pemecahan termudah adalah menghapus /lib/modules/x.y.z dan melakukan 'make modules_install' dari direktori kernel source. Catat bahwa hal ini hanya bisa dilakukan ketika mengkonfigurasi ulang kernel pada versi yang sama. Jika Anda melihat kesalahan ini ketika pindah ke kernal yang versi lebih baru, itu adalah kasus yang berbeda.

12.16 Saya telah menginstall Linux 2.1 dan sekarang tidakbisa meload module apapun

Linux 2.1 adalah kernel development terbaru. sehingga, bisa diharapkan hal ini dipecahkan dari waktu kewaktu. Satu dari hal yang telah diubah secara nyata adalah cara module ditangani, dan di mana kernel dan modules di load ke memori. Richard Henderson sekarang sedang berusaha dalam pengembangan module kernel.

Sebagai permulaan, jika ingin menggunakan modules denngan kernel 2.1, maka Anda harus

penulis akan merekomendasikan penggunaan kernel terbaru 2.1.29, jika Anda ingin menggunakan modules dengan kernel 2.1

12.17 Bagaimana dengan dial-on-demand networking?

kerneld pada dasarnya mempunyai dukungan untuk mengadakan hubungan jaringan dial-up sesuai dengan permintaan; mencoba mengirim paket ke jaringan tanpa terhubung akan menyebabkan kerneld untuk menjalankan script /sbin/request_route untuk mensetup PPP atau SLIP connection.

Ini akan menjadi ide yang buruk. Alan Cox, ahli linux networking menulis di linux-kernel mailing list, bahwa

The request-route stuff is obsolete, broken and not required [...]
Its also removed from 2.1.x trees.

Daripada menggunakan script request-route dan kerneld, penulis dengan sepenuh hati menganjurkan untuk menginstall paket diald Eric Schenk, tersedia dari http://www.dna.lth.se/ erics/diald.html


Next Previous Contents