我知道有一个配置脚本,但是我问的是另一个脚本。我想要一个在虚拟机每次重启后都能执行的脚本。
我正在使用shell脚本配置程序。
config.vm.provision :shell, path: "vagrant/bootstrap.sh"
我无法将我想在每次重启后运行的命令放入这个脚本中。
基本上,我希望当用户执行vagrant up
时启动我的某个应用程序。
我的虚拟机是ubuntu 14.04 trusty,我找到的一个解决方案是在我的虚拟机上执行以下操作 -
sudo crontab -e
#add the following line
@reboot sh /path/to/my_script_on_guest.sh
我可以尝试在我的配置脚本中完成这个任务,但是sudo crontab -e
需要一个编辑器,我必须交互式地添加这一行。因为crontab文件不是固定的,所以我不知道是否可以像下面一样进行单行文件编辑:
echo '@reboot sh /path/to/my_script_on_guest.sh' >> crontab_file
我猜这可能是特定于客户操作系统的事情。
使用Vagrant可以实现吗?
编辑:从ssh provisioner更正为shell provisioner。