Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
University of Tsukuba Linux User Group
ODP, PPTX
2,494 views
カーネルをmakeしよう! - 第4回つくらぐ勉強会
筑波大学 Linux User Group (つくらぐ) http://www.tsukuba-linux.org/
Education
◦
Technology
◦
News & Politics
◦
Read more
5
Save
Share
Embed
Embed presentation
Download
Download as ODP, PPTX
1
/ 27
2
/ 27
3
/ 27
4
/ 27
5
/ 27
6
/ 27
7
/ 27
8
/ 27
9
/ 27
10
/ 27
11
/ 27
12
/ 27
13
/ 27
14
/ 27
15
/ 27
16
/ 27
17
/ 27
18
/ 27
19
/ 27
20
/ 27
21
/ 27
22
/ 27
23
/ 27
24
/ 27
25
/ 27
26
/ 27
27
/ 27
More Related Content
PDF
Hatochan's Resume 20130216@Koedolug
by
Kentaro Hatori
PDF
Play with UEFI
by
Takuya ASADA
PDF
あるキャッシュメモリの話
by
nullnilaki
PPTX
initとプロセス再起動
by
Takashi Takizawa
PDF
100GbE NICを使ったデータセンター・ネットワーク実証実験 -メモ-
by
Naoto MATSUMOTO
PDF
さくらのクラウドでUCARPを使う方法 -メモ-
by
Naoto MATSUMOTO
KEY
The Chef integrations Z Cloud(Joyent)
by
Yukihiko SAWANOBORI
PPTX
Hello, systemd
by
Emma Haruka Iwao
Hatochan's Resume 20130216@Koedolug
by
Kentaro Hatori
Play with UEFI
by
Takuya ASADA
あるキャッシュメモリの話
by
nullnilaki
initとプロセス再起動
by
Takashi Takizawa
100GbE NICを使ったデータセンター・ネットワーク実証実験 -メモ-
by
Naoto MATSUMOTO
さくらのクラウドでUCARPを使う方法 -メモ-
by
Naoto MATSUMOTO
The Chef integrations Z Cloud(Joyent)
by
Yukihiko SAWANOBORI
Hello, systemd
by
Emma Haruka Iwao
What's hot
ODP
Android デバッグ小ネタ
by
l_b__
PDF
LTS & ローリングリリース! ― ランキング4位のLinuxディストリビューション openSUSE を Azure で使ってみる
by
Fuminobu Takeyama
PDF
COMSTARでiSCSI - OpenSolaris勉強会 2011.08
by
tokuhy
PDF
Osc201703 tokyo-clonezilla-v1.2 j
by
Akira Yoshiyama
PDF
systemdを始めよう
by
Preferred Networks
PDF
VPSもDesktopもYaSTを使ってLinuxをらくらく設定―ファイルサーバー構築・管理編
by
Fuminobu Takeyama
PDF
NetBSD, On the ROAD 2016
by
Jun Ebihara
PDF
オープンソース開発と、あるフレームバッファコンソールの話~名古屋応用編~
by
nullnilaki
PDF
openSUSE におけるパッケージ管理入門
by
Fuminobu Takeyama
KEY
Mysql casial01
by
matsuo kenji
POTX
LinuxをインストールしてWebサーバーを立ち上げてみよう
by
Masataka Tsukamoto
PDF
あるmmapの話
by
nullnilaki
PPTX
Systemd入門
by
Takuya Itou
PPTX
Docker調査20150704
by
HommasSlide
PDF
Havana版 RDO-QuickStart-2 (140421-Havana-RDO-QuickStart-2.pdf)
by
VirtualTech Japan Inc.
PDF
Eucalyptus 2.0 始めました!
by
Osamu Habuka
PDF
Hadoop on LXC
by
俊夫 森
PDF
Using Xeon D 10GBase-T
by
Masaru Oki
PDF
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)
by
tokuhy
PDF
魁ここんとーく in おおさか
by
shimadah
Android デバッグ小ネタ
by
l_b__
LTS & ローリングリリース! ― ランキング4位のLinuxディストリビューション openSUSE を Azure で使ってみる
by
Fuminobu Takeyama
COMSTARでiSCSI - OpenSolaris勉強会 2011.08
by
tokuhy
Osc201703 tokyo-clonezilla-v1.2 j
by
Akira Yoshiyama
systemdを始めよう
by
Preferred Networks
VPSもDesktopもYaSTを使ってLinuxをらくらく設定―ファイルサーバー構築・管理編
by
Fuminobu Takeyama
NetBSD, On the ROAD 2016
by
Jun Ebihara
オープンソース開発と、あるフレームバッファコンソールの話~名古屋応用編~
by
nullnilaki
openSUSE におけるパッケージ管理入門
by
Fuminobu Takeyama
Mysql casial01
by
matsuo kenji
LinuxをインストールしてWebサーバーを立ち上げてみよう
by
Masataka Tsukamoto
あるmmapの話
by
nullnilaki
Systemd入門
by
Takuya Itou
Docker調査20150704
by
HommasSlide
Havana版 RDO-QuickStart-2 (140421-Havana-RDO-QuickStart-2.pdf)
by
VirtualTech Japan Inc.
Eucalyptus 2.0 始めました!
by
Osamu Habuka
Hadoop on LXC
by
俊夫 森
Using Xeon D 10GBase-T
by
Masaru Oki
XenServerとZFSストレージでサーバ仮想化 - OSC2011 Tokyo/Spring 自宅SAN友の会(後半)
by
tokuhy
魁ここんとーく in おおさか
by
shimadah
Similar to カーネルをmakeしよう! - 第4回つくらぐ勉強会
PDF
NetBSDのクロスビルドのしくみとインストール済みLive Imageの作成
by
Izumi Tsutsui
PDF
initramfsについて
by
Kazuhiro Nishiyama
ODP
カーネルモジュールプログラミング超入門 #1(仮)
by
University of Tsukuba Linux User Group
PDF
ちょっと古いマシンにLinuxを
by
Kenichiro MATOHARA
PDF
あるブートローダの話
by
nullnilaki
PDF
KVM+cgroup
by
(^-^) togakushi
PDF
JTF2020 クロスコンパイルだけが能ではない組み込みLinuxシステムのCI/CDインフラ構築
by
yaegashi
PDF
20130126 第2回福岡debian勉強会 debian wheezyとdebian installerのはなし
by
Tsuyoshi Yamada
PDF
FPGA+SoC+Linux実践勉強会資料
by
一路 川染
PDF
デバドラを書いてみよう!
by
Masami Ichikawa
PDF
Backdoor!! vmware-tools と 統合サービスに見るハイパーバイザの呼び出し方
by
tshiroyama
PDF
Debianを用いたCortex-M3マイコン開発事例のご紹介
by
Kiwamu Okabe
PPTX
ftp.jaist.ac.jpの低レイヤーの話 on 第九回 カーネル/VM探検隊
by
Kazuhiro Fujieda
PDF
Infinite Debian - Platform for mass-producing system every second
by
Taisuke Yamada
PDF
Linux Kernel Seminar in tripodworks
by
tripodworks
PDF
Vsubuntu
by
Naohiro Aota
PDF
NetBSD/evbarm on Raspberry Pi
by
tokudahiroshi
PPTX
Functions
by
do_aki
PDF
最近遊んだLinuxボードたち
by
t n
PDF
kernel/vm@okinawa 2014
by
y0t4
NetBSDのクロスビルドのしくみとインストール済みLive Imageの作成
by
Izumi Tsutsui
initramfsについて
by
Kazuhiro Nishiyama
カーネルモジュールプログラミング超入門 #1(仮)
by
University of Tsukuba Linux User Group
ちょっと古いマシンにLinuxを
by
Kenichiro MATOHARA
あるブートローダの話
by
nullnilaki
KVM+cgroup
by
(^-^) togakushi
JTF2020 クロスコンパイルだけが能ではない組み込みLinuxシステムのCI/CDインフラ構築
by
yaegashi
20130126 第2回福岡debian勉強会 debian wheezyとdebian installerのはなし
by
Tsuyoshi Yamada
FPGA+SoC+Linux実践勉強会資料
by
一路 川染
デバドラを書いてみよう!
by
Masami Ichikawa
Backdoor!! vmware-tools と 統合サービスに見るハイパーバイザの呼び出し方
by
tshiroyama
Debianを用いたCortex-M3マイコン開発事例のご紹介
by
Kiwamu Okabe
ftp.jaist.ac.jpの低レイヤーの話 on 第九回 カーネル/VM探検隊
by
Kazuhiro Fujieda
Infinite Debian - Platform for mass-producing system every second
by
Taisuke Yamada
Linux Kernel Seminar in tripodworks
by
tripodworks
Vsubuntu
by
Naohiro Aota
NetBSD/evbarm on Raspberry Pi
by
tokudahiroshi
Functions
by
do_aki
最近遊んだLinuxボードたち
by
t n
kernel/vm@okinawa 2014
by
y0t4
More from University of Tsukuba Linux User Group
ODP
Gentoo Linuxの紹介
by
University of Tsukuba Linux User Group
ODP
楽しい怪しいシェルスクリプト - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
PDF
monoqloの麻雀講座
by
University of Tsukuba Linux User Group
ODP
Debug Hacks - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
PDF
USBからLinuxを起動してみよう! - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
PDF
linuxで動画キャプチャ。 - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
PDF
Hello,World Crazy!!
by
University of Tsukuba Linux User Group
PDF
C言語の課題を(エクストリームに)解こう #1
by
University of Tsukuba Linux User Group
PPT
ばっしゅ! (LT) - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
PDF
うぶんちゅ! - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
PDF
シンガポールのインターネット検閲事情 (LT) - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
Gentoo Linuxの紹介
by
University of Tsukuba Linux User Group
楽しい怪しいシェルスクリプト - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
monoqloの麻雀講座
by
University of Tsukuba Linux User Group
Debug Hacks - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
USBからLinuxを起動してみよう! - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
linuxで動画キャプチャ。 - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
Hello,World Crazy!!
by
University of Tsukuba Linux User Group
C言語の課題を(エクストリームに)解こう #1
by
University of Tsukuba Linux User Group
ばっしゅ! (LT) - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
うぶんちゅ! - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
シンガポールのインターネット検閲事情 (LT) - 第4回つくらぐ勉強会
by
University of Tsukuba Linux User Group
カーネルをmakeしよう! - 第4回つくらぐ勉強会
1.
カーネルを make しよう
! 堀本 貴幸 (opentaka) http://www.opentaka.org/ opentaka [at] tsukuba-linux.org
2.
カーネルを make しよう
! = カーネルを再構築しよう !
3.
Agenda GNU/Linux
と Linux の違い
4.
カーネルって何?
5.
Vanilla と patched
カーネル
6.
組み込みドライバとモジュール
7.
カーネルを make しよう
!
8.
ブートローダ設定
9.
おわりに
10.
GNU/Linux と
Linux の違い
11.
GNU/Linux と
Linux の違い Linux はカーネル本体
12.
GNU はカーネルツール以外に、 OS
として機能するために必要なコマンドや、ツールのことを指す
13.
Linux( カーネル )
と必要なツール (GNU) が集まった OS を GNU+Linux または GNU/Linux と言う。
14.
カーネルって何? ハードウェアとソフトウェア間の通信等を管理し、 OS
の中核として機能する部分。
15.
OS をオーケストラとする、カーネルは指揮者。
16.
とにかく奥が深い。
17.
vanilla と patched
カーネル Linux カーネルの中にも、色々と種類がある。 どんなカーネルを実行中なのか調べてみよう。
18.
vanilla と patched
カーネル $ uname -a と実行してください。
19.
実行結果 Linux laksa
2.6.26-2-686 #1 SMP Sun Jul 26 21:25:33 UTC 2009 i686 GNU/Linux
20.
Linux SC440
2.6.25 -hardened-r7 #16 SMP Mon Jun 8 19:54:40 JST 2009 i686 Intel(R) Pentium(R) Dual CPU E2180 @ 2.00GHz GenuineIntel GNU/Linux
21.
Linux debian
2.6.26-2-686 #1 SMP Sun Jul 26 21:25:33 UTC 2009 i686 GNU/Linux
22.
Linux netbook
2.6.30-1-686 #1 SMP Sun Jul 26 21:25:33 UTC 2009 i686 GNU/Linux
23.
Linux localhost.localdomain
2.6.29.6 -213.fc11.x86_64 #1 SMP Tue Jul 7 21:02:57 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux
24.
vanilla と patched
カーネル vanilla とは、 何もいじられていない状態を指す。つまり、 kernel.org (Linux カーネルのウェブサイト ) で配布されてるカーネルをそのまま使用したカーネル のこと。
25.
patched カーネルは vanilla
とは対照的に、 ディストリビューション特有のパッチや、様々なパッチセットを適用されているカーネル を指す。 # パッチセットの例として git 、 mm 、 UML 、 xen などがある。
26.
組み込みドライバとモジュール
27.
組み込みドライバとモジュール Linux の中にはドライバが大量に入っている。
28.
必要なドライバだけ有効にする。
29.
有効にする際にカーネルに組み込むかモジュールを作成するか選べる。 #
モジュールは有効化無効化 (load/unload) することによって、管理できる。
30.
組み込みドライバとモジュール どんなモジュールがロードされているか調べる :
$ lsmod 無効化する : # rmmod < モジュール名 > 有効化する : # modprobe < モジュール名 >
31.
Module Size
Used by nls_utf8 1760 1 isofs 28164 1 zlib_inflate 14144 1 isofs udf 67684 0 crc_itu_t 2080 1 udf binfmt_misc 7528 1 ppdev 6500 0 lp 8164 0 ipv6 235364 14 cpufreq_conservative 5960 0 cpufreq_powersave 1856 0 cpufreq_stats 3776 0 cpufreq_userspace 3172 0 cpufreq_ondemand 6476 0 freq_table 4224 2 cpufreq_stats,cpufreq_ondemand vboxvfs 36768 0 nls_base 6820 4 nls_utf8,isofs,udf,vboxvfs loop 12748 0 parport_pc 22500 0 parport 30988 3 ppdev,lp,parport_pc psmouse 32336 0 pcspkr 2432 0 snd_intel8x0 26268 1 serio_raw 4740 0 snd_ac97_codec 88484 1 snd_intel8x0 ac97_bus 1728 1 snd_ac97_codec snd_pcm 62596 2 snd_intel8x0,snd_ac97_codec snd_seq 41456 0 snd_timer 17800 2 snd_pcm,snd_seq snd_seq_device 6380 1 snd_seq snd 45604 8 snd_intel8x0,snd_ac97_codec,snd_pcm,snd_seq,snd_timer,snd_seq_device i2c_piix4 7216 0 i2c_core 19828 1 i2c_piix4 soundcore 6368 1 snd snd_page_alloc 7816 2 snd_intel8x0,snd_pcm vboxadd 60864 6 vboxvfs ac 4196 0 button 6096 0 evdev 8000 3 ext3 105512 1 jbd 39444 1 ext3 mbcache 7108 1 ext3 ide_cd_mod 27652 1 cdrom 30176 1 ide_cd_mod ide_disk 10496 3 ata_generic 4676 0 libata 140416 1 ata_generic scsi_mod 129324 1 libata dock 8304 1 libata ide_pci_generic 3908 0 [permanent] floppy 47748 0 ehci_hcd 28396 0 ohci_hcd 18500 0 usbcore 118224 3 ehci_hcd,ohci_hcd e1000 102560 0 piix 6568 0 [permanent] ide_core 96136 4 ide_cd_mod,ide_disk,ide_pci_generic,piix thermal 15228 0 processor 32544 1 thermal fan 4164 0 thermal_sys 10856 3 thermal,processor,fan 実行結果: Module Size Used by bluetooth 53444 ... sunrpc 185512 12 ... ip6t_REJECT 4064 2 nf_conntrack_ipv6 14632 2 ip6table_filter 3936 1 ip6_tables 18784 1 ip6table_filter Ipv6 290336 32 ...
32.
というわけで、さぁ、 カーネルを make
しよう ! # 今回は vanilla カーネルを make することにします。
33.
カーネル再構築が必要な時 ディストリビューションが採用しているパッチセットが気持ち悪い。
34.
なんでもかんでも有効にされていて気分が悪い。
35.
使いたいドライバがカーネルに入っていない。
36.
ある特定のカーネル設定が必要なソフトウェアを使いたい。
37.
単純に、カーネルアップグレード。
38.
やっぱりディストリビューションのパッチセットが ...
39.
カーネル make の手順
カーネルをダウンロードする
40.
config( 設定 )
する
41.
コンパイルする
42.
ブートローダにて、新しいカーネルを読み込む様に設定する
43.
カーネルをダウンロードする kernel.org
にアクセスし、好きなバージョンのカーネル(パッチではない)をダウンロードする。
44.
( 例
: linux-2.6.30.5.tar.bz2 )
45.
適当な場所に展開する
46.
$ tar xvf
linux-2.6.30.5.tar.bz2
47.
config( 設定 )
する カーネルを展開したディレクトリに cd して、
48.
make config
または make oldconfig または
49.
make menuconfig
または make xconfig を実行する。
50.
どういうこっちゃ? Config方法はいくつか用意されている。
51.
- config (make
config) 一から順番に、設定を有効にするからどうかその都度 y/n 等と答えていく、元祖 config - menuconfig (make menuconfig) ncurses を使った、コンソール上で動くちょっとだけグラフィカルな config ツール - xconfig (make xconfig) Tcl/Tk を使った、 X で config するポチポチするツール # 前ページで述べた、 oldconfig (make oldconfig) はちょっとした設定の修正をしたい場合などに使います。 ( 古い .config を使います )
52.
menuconfig
53.
xconfig
54.
コンパイルする $ make
&& make modules_install $ make -j2 && make modules_install … お好きなgccオプションで makeしてください。 # ./arch/boot/<arch>/bzImage にバイナリが出来上がります。
55.
ブートローダー 出来上がったバイナリを/bootにコピー。
56.
コピーしたバイナリからブートする様に設定すれば完了。 GRUB ならこんな感じ
... title Gentoo Linux NEW kernel root (hd0,0) kernel /boot/kernel-new root=/dev/sda3
57.
( 時間があったら )
実演 config
58.
他にもカーネル再構築方法は沢山あります。 genkernel で自動的に
config するのも有りです。 パッチを当てるのも、重要です。 カーネル再構築は難しくありません。 どんどん make しまくってください!
59.
ご清聴ありがとうございました。
Download