GMOコネクトの菊池です。vJunos-routerという仮想ルーターを使って実験をしたかったのですが、えらいはまってしまって時間がかかってしまいました。これ以上の犠牲者を出さないために記録を残しておこうと思います。
AMDのCPUで起動しない問題
まず、このVMはAMDのCPUでは起動しません。https://mrseum.com/blogs/fixing-vjunos-25.2r1.9-amd/fixing-vjunos-25.2r1.9-amd/ この記事を参考に直す必要があります。
この問題が起きるとブート画面に
!!! Nested KVM (i.e. Nested VMX feature) is not enabled, shutting down!!!
というメッセージが出て再起動するので判定できます。
記事では25.2R1.9固有の問題のように見えますが、古いバージョンでも当然のように動きません。よって、記事にあるように起動スクリプトを修正する必要があります。
以下、記事からコマンドを引用します。
qcow2ファイルを編集するツールをインストール
sudo apt -y install libguestfs-tools
起動スクリプトを修正(記事中のコマンドはエスケープが足りてないようで、$を\$に修正してます)
sudo virt-edit -a vJunos-router-25.2R1.9.qcow2 /home/pfe/junos/start-junos.sh -e 's/CPU_FLAG=.*/CPU_FLAG=\$(cat \/proc\
/cpuinfo | grep -ci "vmx\\|svm")/'
これで起動できるようになると思います。
ネットワークインターフェースが生えてこない
OS上ではネットワークインターフェースを認識しているのですが、cliから見るとネットワークインターフェースが見えないという問題がありました。
これはQEMUの起動時に指定するデバイスの種類が問題です。必ずvirtio-net-pciを指定してください。
このデバイスの種類で動作が変わるVMなんて初めてみたのですけど、とにかくここだけは間違えてはいけません。他の設定項目は適当でも動きます。
再起動するとファイルが壊れる
すぐ壊れます。直し方はわかりません。我慢してください。
