ubuntu のインストールをもっと簡単に
ubuntu server のインストールはシリアルコンソールだけで行えれば、もっと気軽に仮想マシンを使えるんだろうと思ってやってみた。
仮想マシンの設定例
仮想マシンに、シリアルコンソールを追加してディスプレイは全部外した。
この状態で起動してあげる。
シリアルコンソールからブート選択
表示をシリアルコンソールにしてしばらく待っていると、ブート選択画面が現れる
ブート選択で起動オプションを編集
この画面で e
を押す
起動設定にシリアルコンソールを書く
この部分を編集する
vmlinuz quiet
vmlinuz console=ttyS0,115200n8 text
これを編集する
編集した
ctrl-X を押して起動
編集したら、Ctr-Xを押して起動する。
ブート画面からログが流れてくる
serial と書いた画面がでる
シリアルコンソールで起動してるけど、このままインストールをすすめるか訊かれる。
このままインストール開始しても問題ないのですが、SSH経由が楽そうなのでSSHを選ぶ
ssh でログイン情報を見る
ssh installer@192.168.1.111
ユーザー名は installer
で固定のようだ
ssh でログインすると
うわ、ヤバ。普通に見れるじゃん
SSHで通常のテキストベースなインストール画面が出る。
インストール終わるまで待つ。
インストール終了後は再起動
再起動したら、シリアルコンソールが有効な状態で起動する。
update-grub は必要なかった。楽ちんです。
まとめ
SSH経由でインストールが出来るので、仮想マシンにディスプレイを繋げなくてもぱぱっとインストールができて嬉しい。
今回は、実験のためにGUIからやった。
この感じだとvirsh の console からでも出来るし、virt-install で仮想マシンを作れる。
いちいち画面を起動しなくていいので、便利になると思う。
こういうのは随分昔からできたと思うのですが、ついつい仮想マシン・マネージャーを使ってGUIでやっちゃうので、自動化できてなかったりするので一気に自動化出来る。
完全にコマンドからインストールする場合
過去にやってるけど、あまりちゃんとやってなかったと思う。
virt-install \ --name ubuntuLTS \ --ram 30029 \ --disk path=/var/lib/libvirt/images/ubuntu-1910.qcow2 \ --vcpus 4 \ --virt-type kvm \ --os-type linux \ --os-variant ubuntu18.04 \ --graphics none \ --location 'http://archive.ubuntu.com/ubuntu/dists/bionic/main/installer-amd64/' \ --extra-args "console=tty0 console=ttyS0,115200n8"
参考資料
libvirt + qemue の kvm 仮想マシンで画面を持たないコンソールのVMをぱぱっと作成して コンテナみたいに使う - それマグで!
Install Ubuntu server 18.04 via USB disk and serial console · GitHub