以前書いた件、
この問題がフィックスされるVagrant 1.8.6のリリースを待っていたのですが、1ヶ月経ってもリリースされる様子がないので自分でコードを修正することにしました。下記を参考にしました。
まず、該当のファイルですがsudo find / -name public_key.rb
で確認しました。どうやら次のパスにあるようです。見つけたらCTRL+Cでfindコマンドを中止します。
$ sudo find / -name public_key.rb Password: find: /dev/fd/ytooyama: No such file or directory find: /dev/fd/ytooyama: No such file or directory /opt/vagrant/embedded/gems/gems/vagrant-1.8.5/plugins/guests/bsd/cap/public_key.rb /opt/vagrant/embedded/gems/gems/vagrant-1.8.5/plugins/guests/linux/cap/public_key.rb ←これ ...
該当のバグは下記の部分です。
該当のファイルをviコマンドで開きます。
$ sudo vi /opt/vagrant/embedded/gems/gems/vagrant-1.8.5/plugins/guests/linux/cap/public_key.rb
ファイルが開かれたら:set nu
と入力してEnterキーを押します。すると左側に行番号が表示されます。
56行目でi
キーを押して挿入モードにしたら該当の文字列chmod 0600 ~/.ssh/authorized_keys
を追記して:wq
を入力して保存、終了します。これでLinuxにおけるSSH Authentication failure問題を解決できます。
この修正により、晴れてVirtualBoxの5.1が利用できます(Vagrant 1.8.5でVirtualBox 5.1.xに対応したため)。また、Vagrant 1.8.5で修正されたバグも修正済みの環境にすることができます。
ちなみにVagrantとVirtualBoxのChange logを貼っておきます。