Difference between revisions of "Compile Kernel: Konfigurasi Kernel"
Onnowpurbo (talk | contribs) |
Onnowpurbo (talk | contribs) |
||
Line 35: | Line 35: | ||
Jika kita tidak mempunyai .config, kita dapat membuat-nya dengan masuk ke setiap submenu dan men-on-kan atau meng-off-kan opsi yang kita butuhkan. menuconfig dan xconfig mempunyai opsi "Help" yang dapat memperlihatkan apa yang akan kita konfigurasi. Help untuk opsi tertentu, akan menolong kita dapat menentukan apakah opsi tersebut perlu di on atau di off-kan. RedHat dan berbagai distribusi seringkali memberikan contoh file .config di distribusi kernel source di subdirectory dengan nama configs di top-level source directory. | Jika kita tidak mempunyai .config, kita dapat membuat-nya dengan masuk ke setiap submenu dan men-on-kan atau meng-off-kan opsi yang kita butuhkan. menuconfig dan xconfig mempunyai opsi "Help" yang dapat memperlihatkan apa yang akan kita konfigurasi. Help untuk opsi tertentu, akan menolong kita dapat menentukan apakah opsi tersebut perlu di on atau di off-kan. RedHat dan berbagai distribusi seringkali memberikan contoh file .config di distribusi kernel source di subdirectory dengan nama configs di top-level source directory. | ||
− | + | Jika kita mengcompile untuk PowerPC, kita mempunyai banyak sekali config default dari arch/ppc/configs. Perintah | |
− | + | make defconfig | |
+ | |||
+ | akan mengcopy default file ppc config ke .config. | ||
+ | |||
+ | |||
+ | ==Tip untuk konfigurasi kernel== | ||
* Always turn on "Prompt for development... drivers". | * Always turn on "Prompt for development... drivers". | ||
Line 50: | Line 55: | ||
Jika semua gagal, copy file .config dari teman. | Jika semua gagal, copy file .config dari teman. | ||
− | |||
==Referensi== | ==Referensi== |
Revision as of 11:38, 3 April 2013
Sumber: http://www.linuxchix.org/content/courses/kernel_hacking/lesson2
Konfigurasi Kernel
Linux kernel mempunyai beberapa tool konfigurasi. Setiap tool dapat di jalankan dengan menulis
make <something>config
di directory top-level dari source kernel. Semua perintah make harus di jalankan dari directory top-level dari source kernel.
- make config - ini merupakan kerangka dasar dari tool konfigurasi. Ini akan menanya satu per satu dari pertanyaan konfigurasi secara berurut. Kernel Linux mempunyai amat sangat banyak pertanyaan konfigurasi. Jangan gunakan ini kecuali kita kurang kerjaan.
- make oldconfig - ini akan membaca file konfigurasi .config dan akan bertanya konfigurasi yang belum di jawab di file tersebut. Cara ini biasanya digunakan untuk upgrade ke versi kernel yang lebih baru.
- make menuconfig - ini merupakan konfigurasi yang banyak digunakan oleh kernel hacker. Perintah ini menggunakan pop up berbasis text dan konfigurator menu-style menggunakan library ncurses. Kita bisa masuk ke satu menu yang kita tertarik dan mengubah hanya konfigurasi yang kita inginkan saja.
- make xconfig, make gconfig - jika kita menjalankan Xwindows, maka ini lebih cantik, lebih di klik dari menuconfig. Konfigurator ini tampaknya tidak sebaik menuconfig karena lebih sensitif pada input file konfigurasi yang ada bug-nya (di samping, karena memang lebih banyak orang menggunakan menuconfig). xconfig menggunakan library qt, sedang gconfig menggunakan library gtk.
Hasil Konfigurasi
Setiap program konfigurasi akan menghasilkan file berikut.
- Sebuah file bernama .config di top level directory berisi semua pilihan kita.
- Sebuah file bernama autoconf.h di directory include/linux/ mendefinisikan (atai tidak mendefinisikan) directory simbol CONFIG_* sehingga preprocessor C mengetahui apakah simbol tertentu akan di on-kan atau di off-kan.
Jika kita mempunyai file .config untuk mesin kita, copy saja itu ke directory kernel source dan jalankan
make oldconfig
Kita dapat mencek ulang konfigurasu dengan perintah
make menuconfig
Jika kita tidak mempunyai .config, kita dapat membuat-nya dengan masuk ke setiap submenu dan men-on-kan atau meng-off-kan opsi yang kita butuhkan. menuconfig dan xconfig mempunyai opsi "Help" yang dapat memperlihatkan apa yang akan kita konfigurasi. Help untuk opsi tertentu, akan menolong kita dapat menentukan apakah opsi tersebut perlu di on atau di off-kan. RedHat dan berbagai distribusi seringkali memberikan contoh file .config di distribusi kernel source di subdirectory dengan nama configs di top-level source directory.
Jika kita mengcompile untuk PowerPC, kita mempunyai banyak sekali config default dari arch/ppc/configs. Perintah
make defconfig
akan mengcopy default file ppc config ke .config.
Tip untuk konfigurasi kernel
- Always turn on "Prompt for development... drivers".
- From kernel 2.6.8, you can add your own string (such as your initials) at "Local version - append to kernel release" to personalize your kernel version string (for older kernel versions, you have to edit the EXTRAVERSION line in the Makefile).
- Always turn off module versioning, but always turn on kernel module loader, kernel modules and module unloading.
- In the kernel hacking section, turn on all options except for "Use 4Kb for kernel stacks instead of 8Kb". If you have a slow machine, don't turn on "Debug memory allocations" either.
- Turn off features you don't need.
- Only use modules if you have a good reason to use a module. For example, if you are working on a driver, you'll want to load a new version of it without rebooting.
- Be extra sure you selected the right processor type. Find out what processor you have now with cat /proc/cpuinfo.
- Find out what PCI devices you have installed with lspci -v.
- Find out what your current kernel has compiled in with dmesg | less. Most device drivers print out messages when they detect a device.
Jika semua gagal, copy file .config dari teman.
Referensi
Pranala Menarik
- Linux
- Ubuntu
- Sistem Operasi
- Kernel
- Compile Kernel
- Compile Kernel: Konfigurasi Kernel
- OS: Linux Kernel
- OS: Parameter Kernel Default
- OS: Kernel Scheduler
- OS: Complete Teori Tuning Kernel Scheduler
- OS: Complete Teori Tuning I/O Performance
- OS: Tuning Kernel Scheduler
- OS: Tuning Completely Fair Queueing CFQ I/O scheduler
- OS: Tuning Completely Fair scheduler CFS
- OS: Build in Monitoring Tool
- Linux Benchmarking
- OS: Benchmarking menggunakan UnixBench
- OS: Benchmarking menggunakan LLCBench
- OS: Membuat Kernel Modul