【Big Sur】Local by FlywheelでVirtualBoxエラー【アップデート不具合】
MacのOSをBig Surにアップデートしたあと、Local by FlyWheelを立ち上げると、こんな「VirtualBox Error」が表示されて起動すらできない。
...という場合の解決までの道のりをメモします。
結論だけいうと、僕の場合は「VirtualBoxを最新版に更新」することで起動するようになりました。
ただ、Big SurにアップデートしてもLocal by Flywheelを使えている人もいるようなので、個人端末の環境に依存するものと考えています。
我慢できずにiMacをBig Surにアップデートしたけど、以下のアプリは今のところ普通に使えてます。
Chrome
Illustrator
Photoshop
Visual studio code
FilleZilla
local by flywheel
Evernote
Slack
Chatworkまだガッツリ使った訳ではないのでこれから不具合が出てくるかもですね。#bigsurupdate
— RYOB (@ryobstyle) November 20, 2020
なので、本記事では僕が直面した具体的な事象を書き記すところから始めるので「同じ事象っぽい」と感じる点があれば参考にしてください。
作業時の環境:
- MacOS:Big Sur バージョン 11.1
- Local by Flywheel:バージョン 3.3.0
- VirtualBox:更新前のバージョンをメモり忘れました...
ー もくじ ー
Big Surアップデート後に直面したLocal by Flywheelエラーの具体的な状況
以下、僕が直面した具体的な不具合の状況です。
1. セキュリティとプライバシー から「許可」...できず
まずはエラー画面の指示に従うのが鉄則ということで以下赤枠にある通り、
左上リンゴマーク > システム環境設定 > セキュリティとプライバシー を開いて「許可」をしようとしました。
ですが、「許可」と表示されるべきところに見当たらず...↓
2. "big sur local by flywheel error"でググる...絶望
この項目はトラブルシュートには直接関係ないので読み飛ばしても大丈夫です。
同じようなエラーを経験した人はいないかと調べてみると、ちょうどLocalの公式コミュニティ上に同じ事象と思われる投稿を発見。
参考Local Community:Local won’t open on Mac OS Big Sur
最新の回答を読んで、冷や汗をかくことに...。
If I’m not mistaken the previous version of Local which uses Virtual Box is no longer being worked on. It would have been possible to export your sites from the old Local and import them to the new one before you updated to the new macOS.
訳:
VirtualBoxを使用する古いバージョンのLocalはもう更新されていません。新しいmacOSに更新する前に、古いLocalからサイトをエクスポートして新しいLocalにインポートすることは可能でした。
macOSをBig Surに更新する前にLocal by Flywheelのバージョン更新が必要だった...!?そんな!!!じゃあもう諦めるしかないのか...!?
と絶望しそうに。なんせ、今まで使っていたLocalはもう起動しないので、サイトをエクスポートしようがなかったのです。
ちょうどWordPressテーマ作成の途中だったため、このとき焦り・不安感で僕のワキの下は汗でビッショビショ...。
「新しいバージョンのローカル」のことをよく知らなかったのでさらにググってみると、
- バージョン3.3.x以下のLocal by Flywheelは裏でVirtualBoxを使っている
- バージョン5.x以上のLocal("Lightning"という名前に変わった)はVirtualBoxを使わない
ということが判明。
Local by Flywheelという呼称自体がもう古いものを指すようで、今は「Local」や「Local lightning/ライトニング」と呼ばれているようです。
道理で、いま使っているLocal by Flywheelはバージョン3.3.0=VirtualBoxに依存している=VirtualBoxのエラーが出るというのはつじつまが合う状況でした。
3. VirtualBoxを単体で起動してみる...できず【ヒントになった】
いったんLocal by Flywheelから目を離し、VirtualBoxのエラーなので「じゃあVirtualBoxは単独で開くのかい」と思いアプリケーションフォルダにあった「VirtualBox.app」を起動してみると...
エラーで起動しません。
がしかし僕の場合、実質的にはこれが解決のヒントに。
Localが悪いのではなく、VirtualBoxに問題があって間接的にLocalが起動できなくなっている?
Big SurとLocalではなく、Big SurとVirtualBoxの問題では?
という仮説を立てました。
4. "big sur virtual box"でググる → 互換性を改善したとの記事を発見
こんな記事を見つけ「やはりBig SurとVirtual Boxの問題では...」という疑いを強めます。
参考「VirtualBox 6.1.16」リリース、「macOS Big Sur」との互換性を改善
6.1.16は僕の作業時で最新のVirtualBoxのバージョンだったので、トラブルシュートの方針を「VirtualBoxのバージョンを最新にしてみよう!(作業当時の最新版は6.1.16)」と決めました。
事象解決後の発見:
「Local 3.3.0を使っていて、VirtualBoxを最新版にしたら直った」というTwitterを見つけました。方針が合っていて安心。
Big SurにアップデートしたらLocal by FlywheelのVersion 3.3.0がVirtualBoxのエラーで起動しなくなりましたが、VirtualBoxを最新版にアップデートしたら直りました。
— RYOB (@ryobstyle) December 7, 2020
以上、ここまでが僕の直面した事象です。
以降、解決するためにおこなった手順を書いていきます。
【これで解決】VirtualBoxのバージョンを最新にする
【最も簡単な方法】VirtualBoxインストーラーでバージョンアップ
VirtualBoxは、公式インストーラーを使えば新規インストールと同じ方法で新しいバージョンにアップデートできます。
https://www.virtualbox.org/wiki/Downloads
僕はこの方法で試していないのですが、インストーラーを使ったほうがGUI操作でわかりやすいのでこちらをおすすめ。
アップデートが完了したら、いちどPCの再起動を推奨します。
インストーラーでアップデートした場合は「Local by Flywheelを起動する【完了】」まで手順を飛ばしてください。
以下は、インストーラーを使わずコマンドライン操作でアップデートする手順です。
virtualboxをアンインストール
brew cask uninstall virtualbox
ターミナルからこのコマンドでVirtualBoxをアンインストールしようとしたら、以下エラーが出てアンインストールできなかったので、
~ $ brew cask uninstall virtualbox
Error: Cask 'virtualbox' is not installed.
Macのフリーソフト「AppCleaner」を使ってアンインストールしました。
Macのアプリアンインストールはよく「アプリをゴミ箱へ入れるだけでOK」と言われますが、複雑なアプリはあちこちに散在する関連ファイルが残ったままになるのでいつもこれを使ってアプリをアンインストールしています。
最新版virtualboxをインストール
brew install --cask virtualbox
で最新版をインストールしなおします。
~ $ brew install --cask virtualbox
Error:
homebrew-core is a shallow clone.
To `brew update`, first run:
git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallow
This restriction has been made on GitHub's request because updating shallow
clones is an extremely expensive operation due to the tree layout and traffic of
Homebrew/homebrew-core and Homebrew/homebrew-cask. We don't do this for you
automatically to avoid repeatedly performing an expensive unshallow operation in
CI systems (which should instead be fixed to not use shallow clones). Sorry for
the inconvenience!
==> Caveats
virtualbox requires a kernel extension to work.
If the installation fails, retry after you enable it in:
System Preferences → Security & Privacy → General
For more information, refer to vendor documentation or this Apple Technical Note:
https://developer.apple.com/library/content/technotes/tn2459/_index.html
==> Downloading https://download.virtualbox.org/virtualbox/6.1.16/VirtualBox-6.1
######################################################################## 100.0%
==> Installing Cask virtualbox
==> Running installer for virtualbox; your password may be necessary.
==> Package installers may write to any location; options such as --appdir are i
Password:
installer: Package name is Oracle VM VirtualBox
installer: choices changes file '/var/folders/bv/_lsjxt2s0g15d6g5tx5x34bw0000gn/T/choices20210104-3467-guuwrz.xml' applied
installer: Upgrading at base path /
installer: The upgrade failed. (エラーによってインストールできませんでした。ソフトウェアの製造元に問い合わせてください。 パッケージ“VirtualBox.pkg”からスクリプトを実行中にエラーが起きました。)
==> Purging files for version 6.1.16,140961 of Cask virtualbox
Error: Failure while executing; `/usr/bin/sudo -E -- /usr/bin/env LOGNAME=xxx USER=xxx USERNAME=xxx /usr/sbin/installer -pkg /usr/local/Caskroom/virtualbox/6.1.16,140961/VirtualBox.pkg -target / -applyChoiceChangesXML /var/folders/bv/_lsjxt2s0g15d6g5tx5x34bw0000gn/T/choices20210104-3467-guuwrz.xml` exited with 1. Here's the output:
installer: Package name is Oracle VM VirtualBox
installer: choices changes file '/var/folders/bv/_lsjxt2s0g15d6g5tx5x34bw0000gn/T/choices20210104-3467-guuwrz.xml' applied
installer: Upgrading at base path /
installer: The upgrade failed. (エラーによってインストールできませんでした。ソフトウェアの製造元に問い合わせてください。 パッケージ“VirtualBox.pkg”からスクリプトを実行中にエラーが起きました。)
~ $
僕の場合赤文字部分にあるようにエラーが出ましたが、このまま次の手順を行えば大丈夫だったのでインストールは完了したようでした。
上記エラーが表示されたと同時に以下ポップアップが表示されたので、「"セキュリティ"環境設定を開く」をクリックします。
すると「セキュリティとプライバシー」が開くので、
- 鍵マークをクリックしてロックを外す
- 「許可」をクリック
僕の場合、ここでPC再起動を促すポップアップが出ました。他に起動しているアプリを停止してから再起動をします。
Local by Flywheelを起動する【完了】
PCを再起動後、Local by Flywheelを起動すると...動いた!!
VirtualBoxは認識していることが分かるので、「LET'S GO」でWordPressサイトをホストする仮想マシンを作成します。
完了すると、懐かしの画面がようやく戻ってきた...と思いきや、なにやら作っておいたサイトが真っ赤です。
サイトを選択すると、「RESTORE SITE」といういかにも自動的に修正してくれそうなボタンがあるので押します。
プログレスバーが現れるので、終わるまで自動修復を祈りながら待ちます。
完了すると、サイトが起動状態に!! 「ADMIN」か「VIEW SITE」も押せるようになっています。
これでサイトが無事に閲覧できれば全ての作業は完了!
冷や汗が止まらない半日でしたが、これで無事にサイトを失うことなくBig SurでLocal by Flywheelを起動することができるようになりました。
今後はVirtualBoxに依存しない最新版Localを使うべし
今後のことを考えると、Local by Flywheelは卒業してLocal lightningに移行したほうが幸せかと考えたので、このトラブルをキッカケにLocal最新版へサイトを移行してみました。
VirtualBoxの仮想環境をはさまないLocal Lightningは、その名の通りサイト起動/停止などがイナズマのごとく激速というメリットがあります。
移行手順をまとめた記事も別で書いたので、以下参考にしてみてください。
簡単に言うと「エクスポートしたサイトを新Localでインポートするだけ」なので、5分で終わります。
参考古いLocal By Flywheelから新しいLocalへサイト移行手順