VirtualBox
昔、フリーのUnixライクなOSは使うのに苦労した。だいたいバグだらけで、プログラマが想定していないことをすると、全く反応ないとか、落ちるとかよくあった。
今更Linuxなんて・・と思っていたが、とあることから使いたくなりいろいろ調べた。結婚して転勤してと環境が変わるたび自分のスペースは無くなっていき、独身の頃は自作PC(ミドルタワー)2台持ちだったが、今はノートPC(台所とかしか場所ない)でOS入れるのめんどくせーと思っていた。
そういえば、仮想マシン立てられるんだっけ?あ、VirtualBoxがあるじゃん!楽しそう・・・
約1年前にインストールしたが遅い!!何じゃこりゃ!今から思えばHDD使ってたからなんだけどそりゃ遅いよ。SSDにしちゃえ!おう、ぼちぼち使えるじゃん、で現在に至る。
ところでホストOSとゲストOSとのファイルのやりとりはどうするんだっけ??なるほど 、勝手に/mnt/sf_{xxx}ができるのか。
・・・出来てないじゃん。あ、設定か。Virtualマシンの共有フォルダ設定か。
(設定を変えてみる)
・・・アクセス出来ないじゃん。パーミッションか。え、Group変えるのか。
sudo gpasswd -add {user} vboxfs
・・・やっぱり出来ない。なぜだ・・・
約1年が過ぎ、怪しいと思っていたところが原因だった。
仮に共有フォルダが "share" とするなら、必ず「ホストOS」からも「ゲストOS」からも読めないといけない。そう、Linux(ubuntu)からは、日本語2バイト文字の「C:\ユーザー\漢字の名前」フォルダは見えない。Windowsのユーザー名を日本語にしてしまった上にVirtualBoxインストール時のデフォルトフォルダがユーザフォルダ直下になっていたため、ここにVMのフォルダや共有フォルダを置くと見事にゲストOSから見えなくなっていたのだ。
ということで、C:\直下にVirtualBoxのVMフォルダを作成(勿論ASCII文字)しそちらで実行すると見事に共有出来るようになった。
考えるとばかばかしいが、また「制作者の思いも寄らないこと」に合致してしまってかなりの時間をつぶしてしまった。
教訓:たとえWindowsでも、他OSで開発されたものを使うときは、フォルダ(フルパス)に絶対に2バイト文字が入ってはいけない。動かないならまずそこを疑え。