カレーパーティは無事終了しました。(それだけか?)
OSの授業で、read とかの実装を読むのに kernel debug できると良いなと思って、そうしているんですが、
毎年、Fedoraはupdate されるので、毎年 kernel を8作る必要がある
自分の知っている手順は、だいだい時代遅れなので学生にやってもらうのが良いんですが、できるとは言うのだがやってくれないので、出動モードに。
どうも、Centos からのcross compileだとうまくできない。kernel.orgからgitで取って来てcompileするだけなんですが... 結局、
Fedora 内部で kenel compile して、install してしまうのが楽
らしい。自前でcompileすれば kernel debug mode はonになっていると。
make menuconfig
make
make install_module
make install
なんですが、その前に、いろいろ dnf する必要があるらしい。
https://fedoraproject.org/wiki/Building_a_custom_kernel
ようするに、
fedpkg clone -a kernlel
しろと。-a は anonymous らしい。
そうすれば、grub が自動的に新しいkernelを認識してくれると。
なんですが、コンパイル頼んで授業中に見たら、
コンパイルがfile system full でこけてる
ぐ。10GBじゃ足りんのか。kvm上なので、
qemu-img resize hoge.qcow2 +30G
簡単じゃん。なんだが、Fedora側は LVM かぁ。面倒くさい...
fdisk
でpartitionをなおすんですが、うっかりparitionを新しく作ってしまった :-p いや、LVMなんだから、それを足すことができるはずだ。
pvcreate /dev/sda3
で、これをLVMに足すには? わからん、で、結局、/dev/sda3に ext4を作って、そこでコンパイルして、そこのvmlinuxをホストに持ってきて、
そこから
gdb vmliux
で、target remote :1234 でできました。なんだが、
virsh vncdisplay で vnc display を表示
vnc password がちょっと難関。なぜか、dumpxml ではvnc passwordは表示されないが、edit では表示される...
debug port は ie-virsh側で探して、xml 中に生成
とかなんとかいろいろ。
授業が終わった後に、LVMは調べたんですが、
vgextend fedora /dev/sda3
として、
lvextend -L30G /dev/dm-1
で reisze2fs は使えないが、
xfs_growfs /dev/dm-1
でできるということがわかりました。が、最後にそこにファイルをコピーする時に間違えて元を消してしまったい。まぁ、また、compileすれば良いんだろ。
No comments:
Post a Comment