Ubuntu12 vagrant up Setting hostname・・でエラー!!

Ubuntu14のBox(ubuntu/trusty64)で動かせていたプロジェクトをコピーしてBoxを変更した。

(php5.3が使いたかったため)

 

php5.3を使いたかったので、Ubuntu14(php5.6)のBox(ubuntu/trusty64)のvagrant+ansible設定をコピーして、

BoxをUbuntu12(ubuntu/precise64)のBoxに変更し、vagrant upを実行すると・・

早速エラーが!!

==> default: Setting hostname…

The following SSH command responded with a non-zero exit status.

Vagrant assumes that this means the command failed!

hostnamectl set-hostname ‘hoge’

Stdout from the command:

Stderr from the command:
stdin: is not a ttybash: line 3: hostnamectl: command not found

 

う〜ん。。

そもそもset-hostnameのところに表示されているホスト名がVagrantfileで設定している名前を違う・・

設定してるホスト名にドットが入ってたからか?と思っていろいろいじってみたけど、同じエラーが。。

 

ググる先生に聞いてみると、

ビンゴ〜〜〜〜!!

http://ja.stackoverflow.com/questions/12338/ubuntu12-04-%E3%81%AE-box-%E3%82%92%E7%AB%8B%E3%81%A1%E4%B8%8A%E3%81%92%E3%82%8B%E9%9A%9B-hostnamectl-command-not-found

 

どうやらVagrantがUbuntuのホスト名設定の変更に対応できてないバージョンがあるみたい。

調べてみると、確かにvagrant 1.7.3 だった。

この時点では、まだ1.7.4がリリースされていない感じだったけど、見てみるとすでにリリースされていたので、

vagrantを1.7.4に変更して、もう一度 vagrant up!!

 

動いた〜〜〜

Ubuntu14は、vagrant1.7.3で動いたのにねぇ。。

 

ググる先生、ありがとう。