いやー、vagrant使えよ、とかいやいやコンテナっしょとか色々あるけどね。
そういうのは全部忘れよう。
virtual boxでguest addions image のインスコがうまくいかない場合について。
ゲストosはcent7。恐らくvirtualbox側のverがどうであっても、エラーが同じである場合は解決策は同じになるんじゃないかな。多分。もし違っても俺が言ってたとか言わないでね。
ゲストos側でimageに入ってるbootのシェル起動させると通常はそのままインスコが始まると思うんだけど、kernel-develのversionと喧嘩してる場合ビルドに失敗する。
(この場合、yumでdevel入れなさいなってメッセージ出てくるはず。違うメッセージだった場合は多分原因が違います)
が、素直にyum installで入れようとしても「それ利用できんで」と言われてしまう場合の解決策でございます。
まずcentのverを確認します。自分の場合は7.3.1611でした。
cat /etc/redhat-release
次に、centos vaultリポジトリの参照設定を追記して有効にします。
base/updatesだけで問題ないかと。
もし既に記載があった場合は
enabled=1
にするだけで良いです。
自分の場合はなかったので
vi /etc/yum.repos.d/CentOS-Vault.repo
[C7.3.1611-base]
name=CentOS-7.3.1611 - Base
baseurl=http://vault.centos.org/7.3.1611/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
enabled=1
[C7.3.1611-updates]
name=CentOS-7.3.1611 - Updates
baseurl=http://vault.centos.org/7.3.1611/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
enabled=1
こいつを追記。
で、既に入ってるkernel-develを吹っ飛ばします。
rpm -qa | grep kernel-devel
念のため、これで表示されるバージョンが最初に入れなさいなって言われたのと同じでないかどうか確認。
問題なければ
rpm -e --nodeps [[さっきの結果]]
で、あとは最初に指定されたyum installコマンドを実行すりゃ良いです。
おわり。