久しぶりに最新版にアップデートして vagrant up
したらマウントできなかったので、調べたことをメモしておく。
環境
name | version |
---|---|
Windows 10 | 2004(19041.685) |
VirtualBox | 6.1.16 |
Vagrant | 2.2.14 |
vagrant-vbguest | 0.28.0 |
この現象は、MacOS上でも同様に発生する。
現象
vagrant up
すると、次のようにマウントできない
$ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Importing base box 'centos/7'...
==> default: Matching MAC address for NAT networking...
==> default: Checking if box 'centos/7' version '2004.01' is up to date...
==> default: Setting the name of the VM: centos7_default_1608725302718_27652
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
default: Adapter 1: nat
default: Adapter 2: hostonly
==> default: Forwarding ports...
default: 22 (guest) => 2222 (host) (adapter 1)
==> default: Running 'pre-boot' VM customizations...
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
default: SSH address: 127.0.0.1:2222
default: SSH username: vagrant
default: SSH auth method: private key
default:
default: Vagrant insecure key detected. Vagrant will automatically replace
default: this with a newly generated keypair for better security.
default:
default: Inserting generated public key within guest...
default: Removing insecure key from the guest if it's present...
default: Key inserted! Disconnecting and reconnecting using new SSH key...
==> default: Machine booted and ready!
[default] No Virtualbox Guest Additions installation found.
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.riken.jp
* extras: ftp.riken.jp
* updates: ftp.riken.jp
Resolving Dependencies
--> Running transaction check
---> Package centos-release.x86_64 0:7-8.2003.0.el7.centos will be updated
---> Package centos-release.x86_64 0:7-9.2009.1.el7.centos will be an update
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================
Package Arch Version Repository Size
================================================================================
Updating:
centos-release x86_64 7-9.2009.1.el7.centos updates 27 k
Transaction Summary
================================================================================
Upgrade 1 Package
Total download size: 27 k
Downloading packages:
No Presto metadata available for updates
・・・中略・・・
No package kernel-devel-3.10.0-1127.el7.x86_64 available.
Error: Nothing to do
Unmounting Virtualbox Guest Additions ISO from: /mnt
umount: /mnt: not mounted
==> default: Checking for guest additions in VM...
default: No guest additions were detected on the base box for this VM! Guest
default: additions are required for forwarded ports, shared folders, host only
default: networking, and more. If SSH fails on this machine, please install
default: the guest additions and repackage the box to continue.
default:
default: This is not an error message; everything may continue to work properly,
default: in which case you may ignore this message.
The following SSH command responded with a non-zero exit status.
Vagrant assumes that this means the command failed!
umount /mnt
Stdout from the command:
Stderr from the command:
umount: /mnt: not mounted
原因
vboxの内容が CentOS 7.8
で構成されているが、CentOS 7.9
がリリースされてしまったため、インストールされているカーネルのバージョンと、一致する kernel-devel
パッケージがリポジトリから取得できなくなってしまった。
vbguest
を使用しているため VirtualBox Guest Additions の更新で 該当するバージョンの kernel-devel
を取得できずに失敗している。
対処方法
vagrant up
で失敗しても、SSH接続できるところまで起動できているので、次の手順で一度 kernel
をアップデートし、完了させる。
-
vagrant up
で失敗 vagrant ssh
sudo yum -y update kernel
exit
vagrant reload --provision
あくまでも応急処置なので、自分でアップデート済みのvboxを作成するか、公式のvboxがアップデートするのを待つしかない。