Just do IT

思うは招く

VirtualBoxとVagrantを再インストールして仮想環境を作り直すメモ

VirtualBoxのアンイストールで少しつまづいたのでメモ。

背景:「やべぇ、仮想環境がバグった・・・」

なにかをどうかして仮想環境がバグり、vagrant sshをしてもUbuntu-bionicの文字が白色のまま。lsコマンドもできなくなっている・・・。おそらく、パスを変にいじってしまったことが原因。

こちらに書いてある解決方法をやってみてもダメだった。

PATHを通すために環境変数の設定を理解する (Mac OS X)

やること:困ったときの再インストール

直し方がわからないので、仮想環境を作り直す。ザ・力技。時間はかかるものの、必ず直る。

カフェオレを飲んで腹を決めたら、次のことをする。

  • VirtualBoxのアンイストールと再インストール
  • Vagrantのアンイストールと再インストール
  • Linuxは「Ubuntu」をインストール

地味につまづくポイントは、VirtualBoxをアンイストールしても、再インストールするときに「まだVirtualBox動いてるよ!」とアラートが出てインストールできない点だった。

【追記】上記の荒行をする前に

仮想マシンを管理しているディレクトリへ移動し、次のコマンドを打つ。

$ vagrant destroy

これで一旦破棄され、virtualboxを見ても該当のOS(ここではUbuntu)が消える。

次にこちら。

$ vagrant up

まずはこっちをやったほうがいいかも。ただし、このやり方でもインストールしたものはすべて消える。SSHGitHubに公開鍵認証もできなくなっているので注意。

これでダメなら最初からやり直すしかない。

修復の流れ

1、VirtualBoxのパッケージをダウンロードし、アンイストール

インストール時に使用したdmgファイルがあればそちらで、なければあらたにダウンロードしてくる。

VirtualBox

ダウンロードしたdmgファイルを開くと、「VirtualBox_Uninstall.tool」があるので、それを使用してアンイストールをする。

2、VirtualBoxを再インストール

同じdmgファイルを使用し、今度は再インストールする。 再インストールをしようとしたとき、もしかしたら「バーチャルマシンまだ動いてるでぇ〜!」的なメッセージが出てインストールできない場合、アプリケーションフォルダにある「VirtualBox.app」を開く。するとこんな感じになってるはず。

スクリーンショット 2019-08-04 0.15.23.jpg

停止中、もしくはアクセスできないなどと表示されてる「Ubuntu〜」もしくは「ユーザー名〜」みたいなのが表示されてるので、その上までカーソル移動し、右クリックで「除去」を選択する。これがおそらくつまづくポイントかも? これができたらもうほぼ終わったようなもん。

3、Vagrantをアンイストール

VagrantVirtualBoxと同様に、dmgパッケージをダウンロードしてその中にあるアンイストールファイルuninstall.toolを実行する。

スクリーンショット 2019-08-04 0.26.35.jpg

もしくは、これが面倒ならVagrantに関連するディレクトリを削除する。

root/Applications/Vagrant
/usr/bin/vagrant
/usr/local/bin/vagrant
/Users/ユーザ名/.vagrant.d※隠しディレクトリ
/opt/vagrant

※それぞれ別のディレクトリ(つまり5回削除する) 削除コマンドはこちらで。

rm -r -d -f (ディレクトリ名)

これは次の記事より引用させていただきました。感謝ッッ MacでのVirtualbox,Vagrantアンインストールメモ

4、Vagrantを再インストール

これはVagrantdmgパッケージ内にあるvagrant.pkgを使ってインストールするだけ。 あとはUbuntuを入れて終わり。あともうちょっと!

5、Ubuntuを入れる

Ubuntuを入れるディレクトリを作る。名前はなんでもOKだと思う。

mkdir -p ~/vagrant/ubuntu64_18

作ったディレクトリへ移動

cd ubuntu64_18

そこでUbuntuを入れるコマンドを実行。バージョンは自分の用途に合わせて。

vagrant box add ubuntu/bionic64 --box-version 20181129.0.0

これが10分ほどかかるので、コンビニへ行ってカフェオレでも買ってきましょう。 終わったら、仮想マシンの設定ファイルを作成。

vagrant init ubuntu/bionic64

あとはvagrant upをして、vagrant sshをすればUbuntuSSH接続できる。

この後すること

githubとの連携作業(公開鍵登録)、ポストグレス、Node.jsの再インストールなど。

振り返り

今回でPATHについて自分がかなり無知だということがわかったので、イチから勉強してみようと思った。