- linuxをgdbでデバッグトレースしたい!!
 - ansibleがなんとあるので使うといい感じにできる
 
# ansible
# virshを使ったやりかた
- まずdebug buildしたいfedoraのvmをつくる
- 大学のdalmoreサーバーでやると便利
 
 - 結構パワーが必要なので、ansibleのファイルにある通りVMの設定を書き換える
- CPUのコア数を8コア
 - HDDの容量を30GBは確保する
 
 - cpuのコア数はvirshのxmlを書き換える
 - HDDの容量は、qemu-imgでresizeしたあとに、VMにログインしてファイルシステムを拡張する
 - ここまで準備が出来たら実行可能! VMのmac addressをakatsukiに登録して、別のマシンから以下のコマンドでansibleを実行する
- 実行する前にVMのipを書いたhostsファイルを用意する
 - main.ymlのユーザー名を変更するなどもしておく
 
 
 | 
 | 
- 完了したらビルドしたファイルをyomitanなどに転送する
 
 | 
 | 
- ここのlocalhostはVMのIPとかに変えておこう。あとユーザーとかもそんな感じで…
 
# 起動するkernelを切り替える
- ansibleをかけただけでは、VMが起動するkernelが切り替わってないので切り替える必要がある
 - ちまたでは
awkを使って番号を決めてgrub2-で解決する方法が出回っている- 最近のFedoraでは 
grub2.configをいくらgrepしてもkernel情報が乗ってない 
 - 最近のFedoraでは 
 - 最近のfedoraでは次の通りにする
 
# kernelの変更
$ grubby --info=ALLを実行して、切り替えたいkernelを探す$grubby --set-default /boot/vmlinuz-4.2.0-1.fc23.x86_64で切り替える
# 参考
# gdbでdebugするには(学内限定)
- debugしたいvmを
ie-virsh define-gdbでdefineしなおす- すでにdefineしていたらundefineする
 - gdbのportが開放されたxmlファイルが生成される
 
 ie-virsh dumpxml 04(defineした番号)で、gdbのportを確認するie-virsh strart 04して起動する- kernelから転送したvmlinuxをgdbで 
gdb vmlinuxする - breakpointを設定する
 target remote localhost:(確認したport)にするとVMに接続されるcしてあとは自由に!!
# Tips
- dalmoreのvirshのxmlを書き換えるにはroot権限が必要