質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.37%
Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

KVM

KVM【Kernel-based Cirtual Machine】は、 Linux上で仮想化環境を利用するためのソフトウェアです。 1台のPC上で複数のOSを同時に動作させるために必要な制御を行う 仮想化環境の仕組みを提供します。

Arch Linux

arch(アーク)は、バージョン管理システムです。 また、リポジトリ(アーカイブ)操作を行えるツールの総称として扱われています。

Q&A

解決済

1回答

5041閲覧

virt-install の方法について arch linux

EzrealTrueshot

総合スコア389

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

KVM

KVM【Kernel-based Cirtual Machine】は、 Linux上で仮想化環境を利用するためのソフトウェアです。 1台のPC上で複数のOSを同時に動作させるために必要な制御を行う 仮想化環境の仕組みを提供します。

Arch Linux

arch(アーク)は、バージョン管理システムです。 また、リポジトリ(アーカイブ)操作を行えるツールの総称として扱われています。

0グッド

0クリップ

投稿2019/04/13 10:48

前提・実現したいこと

ホストのarchlinuxにゲストのUbuntu18.04をインストールして、ホスト側から virsh console を使って Ubuntu18.04 を操作したい。

発生している問題・エラーメッセージ

インストール後に virsh console を用いると、画面が真っ暗で何も表示されない。

該当のソースコード

virt-install --connect qemu:///system --location http://archive.ubuntu.com/ubuntu/dists/bionic-updates/main/installer-amd64/ --name ubuntu1804 --vcpu 2 --ram 2048 --os-type=linux --disk /var/lib/libvirt/images/ubuntu1804.img --network bridge=br0,model=virtio --extra-args="console=tty0 console=ttyS0,115200n8 serial" --keymap=ja

このコマンドの後に、画面に何も表示されなくなるので、別のターミナル画面を起動してから virsh console してインストールを進めていきます。(このときはvirsh console で表示されます。)

インストール完了後の自動再起動のあとは、別のターミナル画面からでも virsh console しても画面が真っ暗のままです。

試したこと

調べてみたら、ttyの値が異なっていると画面が表示されないという記事を多数見かけました。

tty0 ttyS0
tty0 ttyS1
tty1 ttyS0
tty1 ttyS1

このような組み合わせでインストールを試しましたが、相変わらず画面が真っ暗です。

補足情報(FW/ツールのバージョンなど)

ホスト
archlinux 最新版

ゲスト
ubuntu18.04


インストール完了後に、virsh console して操作したいのですが方法をご存知のかたいらっしゃいましたらご教示いただけませんでしょうか?

archのkvm環境は下記のように作成しました。

host# pacman -S libvirt qemu-headless ebtables virt-install host# systemctl start libvirtd host# systemctl enable libvirtd host# systemctl start ebtables host# systemctl enable ebtables

*ゲストインストールについて
本当はpreseed使って最小構成で全然構わないので自動的にインストールしたいのですが、ちょっと敷居が高いので今は手動でインストールしています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

このコマンドの後に、画面に何も表示されなくなるので、

virt-viewer で VNC や SPICE の画面を表示させようとしているのかもしれません。
--noautoconsole オプションでシェルに戻るようにして、virsh console を実行するといいのではないでしょうか。

$ virt-install (略) --noautoconsole ; virsh console ubuntu1804

インストール完了後の自動再起動のあとは、別のターミナル画面からでも virsh console しても画面が真っ暗のままです。

インストール時の kernel 引数 console=tty0 console=ttyS0,115200n8 がインストールされた OS の grub.conf に設定されないのだと思います。
また、serial-getty@ttyS0.service サービスの有効化も必要と思います。

virt-manager, virt-viewer, ssh など、別の方法でログインして設定します。

$ sudo vi /etc/default/grub (GRUB_CMDLINE_LINUX="console=tty0 console=ttyS0,115200n8" など設定) $ sudo update-grub $ sudo cp /lib/systemd/system/serial-getty@.service /etc/systemd/system/serial-getty@ttyS0.service $ sudo systemctl daemon-reload $ sudo systemctl enable serial-getty@ttyS0.service (あるいはシンボリックリンクだけでもいいかも) $ sudo ln -s /lib/systemd/system/serial-getty@.service /etc/systemd/system/serial-getty@ttyS0.service

###(2019/04/14 17:39) 追記
guestmount コマンドでマウントして、(停止中の)仮想ディスクを直接操作する方法が考えられます。
update-grub など、稼働している OS 上じゃないと動かないものもあるので、暫定的に /boot/grub/grub.cfg を直接編集するなど、試してみてください。
guestunmount コマンドで終了します。

投稿2019/04/13 15:42

編集2019/04/14 08:39
TaichiYanagiya

総合スコア12173

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

EzrealTrueshot

2019/04/13 16:30

ありがとうございます! さっそく試してみました。 --noautoconsoleを試して、わざわざ別ターミナル起動する必要がなくなったので助かりました。 2つ目の virt-manager, virt-viewer, ssh ・・・の方ですが 伝え忘れてしまって申し訳ございませんが、この環境はCUIでグラフィカルではありません。 また、sshしようにもdhcpでIPをふるため何番になるのかわからず、sshできません。 他にゲストホストに入るためのいい方法はありますでしょうか?
EzrealTrueshot

2019/04/14 13:44

ご回答ありがとうございました。 guestmountコマンドを導入して利用してみたのですが [root@archlinux ~]# guestmount -d ubuntu1804 -i /mnt libguestfs: エラー: LIBGUESTFS_PATH (検索パス: /usr/lib/guestfs) において適切な libguestfs supermin、修正されたまたは旧形式のアプライアンスを検索できません このようなエラーがでてしまいました。 LIBGUESTFS_PATHを何に設定していいのかわからないため、archでのvirt-installはあきらめようと思います。 いろいろとご教示ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.37%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問