You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
==> linguobot-admin: Mounting NFS shared folders...
The following SSH command responded with a non-zero exit status.
Vagrant assumes that this means the command failed!
mount -o vers=3,udp,actimeo=1,nolock 192.168.10.1:/D/www/linguobot_admin /home/vagrant/Code/linguobot-admin
result=$?
if test $result -eq 0; then
if test -x /sbin/initctl && command -v /sbin/init && /sbin/init --version | grep upstart; then
/sbin/initctl emit --no-wait vagrant-mounted MOUNTPOINT=/home/vagrant/Code/linguobot-admin
fi
else
exit $result
fi
Stdout from the command:
Stderr from the command:
mount.nfs: Connection timed out
Using this script from homestead on Vagrant 1.9.0:
Vagrantfile:
# -*- mode: ruby -*-
# vi: set ft=ruby :
require 'json'
require 'yaml'
VAGRANTFILE_API_VERSION ||= "2"
confDir = $confDir ||= File.expand_path(File.dirname(__FILE__))
homesteadYamlPath = confDir + "/Homestead.yaml"
homesteadJsonPath = confDir + "/Homestead.json"
afterScriptPath = confDir + "/after.sh"
aliasesPath = confDir + "/aliases"
require File.expand_path(File.dirname(__FILE__) + '/scripts/homestead.rb')
Vagrant.require_version '>= 1.9.0'
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
if File.exist? aliasesPath then
config.vm.provision "file", source: aliasesPath, destination: "/tmp/bash_aliases"
config.vm.provision "shell" do |s|
s.inline = "awk '{ sub(\"\r$\", \"\"); print }' /tmp/bash_aliases > /home/vagrant/.bash_aliases"
end
end
if File.exist? homesteadYamlPath then
settings = YAML::load(File.read(homesteadYamlPath))
elsif File.exist? homesteadJsonPath then
settings = JSON.parse(File.read(homesteadJsonPath))
else
abort "Homestead settings file not found in #{confDir}"
end
Homestead.configure(config, settings)
if File.exist? afterScriptPath then
config.vm.provision "shell", path: afterScriptPath, privileged: false
end
if defined? VagrantPlugins::HostsUpdater
config.hostsupdater.aliases = settings['sites'].map { |site| site['map'] }
end
end
class Homestead
def Homestead.configure(config, settings)
# Set The VM Provider
ENV['VAGRANT_DEFAULT_PROVIDER'] = settings["provider"] ||= "virtualbox"
# Configure Local Variable To Access Scripts From Remote Location
scriptDir = File.dirname(__FILE__)
# Prevent TTY Errors
config.ssh.shell = "bash -c 'BASH_ENV=/etc/profile exec bash'"
# Allow SSH Agent Forward from The Box
config.ssh.forward_agent = true
# Configure The Box
config.vm.define settings["name"] ||= "homestead-7"
config.vm.box = settings["box"] ||= "laravel/homestead"
config.vm.box_version = settings["version"] ||= ">= 2.0.0"
config.vm.hostname = settings["hostname"] ||= "homestead"
# Configure A Private Network IP
config.vm.network :private_network, ip: settings["ip"] ||= "192.168.10.10"
# Configure Additional Networks
if settings.has_key?("networks")
settings["networks"].each do |network|
config.vm.network network["type"], ip: network["ip"], bridge: network["bridge"] ||= nil
end
end
# Configure A Few VirtualBox Settings
config.vm.provider "virtualbox" do |vb|
vb.name = settings["name"] ||= "homestead-7"
vb.customize ["modifyvm", :id, "--memory", settings["memory"] ||= "2048"]
vb.customize ["modifyvm", :id, "--cpus", settings["cpus"] ||= "1"]
vb.customize ["modifyvm", :id, "--natdnsproxy1", "on"]
vb.customize ["modifyvm", :id, "--natdnshostresolver1", settings["natdnshostresolver"] ||= "on"]
vb.customize ["modifyvm", :id, "--ostype", "Ubuntu_64"]
if settings.has_key?("gui") && settings["gui"]
vb.gui = true
end
end
# Configure A Few VMware Settings
["vmware_fusion", "vmware_workstation"].each do |vmware|
config.vm.provider vmware do |v|
v.vmx["displayName"] = settings["name"] ||= "homestead-7"
v.vmx["memsize"] = settings["memory"] ||= 2048
v.vmx["numvcpus"] = settings["cpus"] ||= 1
v.vmx["guestOS"] = "ubuntu-64"
if settings.has_key?("gui") && settings["gui"]
v.gui = true
end
end
end
# Configure A Few Parallels Settings
config.vm.provider "parallels" do |v|
v.name = settings["name"] ||= "homestead-7"
v.update_guest_tools = settings["update_parallels_tools"] ||= false
v.memory = settings["memory"] ||= 2048
v.cpus = settings["cpus"] ||= 1
end
# Standardize Ports Naming Schema
if (settings.has_key?("ports"))
settings["ports"].each do |port|
port["guest"] ||= port["to"]
port["host"] ||= port["send"]
port["protocol"] ||= "tcp"
end
else
settings["ports"] = []
end
# Default Port Forwarding
default_ports = {
80 => 8000,
443 => 44300,
3306 => 33060,
5432 => 54320,
8025 => 8025,
27017 => 27017
}
# Use Default Port Forwarding Unless Overridden
unless settings.has_key?("default_ports") && settings["default_ports"] == false
default_ports.each do |guest, host|
unless settings["ports"].any? { |mapping| mapping["guest"] == guest }
config.vm.network "forwarded_port", guest: guest, host: host, auto_correct: true
end
end
end
# Add Custom Ports From Configuration
if settings.has_key?("ports")
settings["ports"].each do |port|
config.vm.network "forwarded_port", guest: port["guest"], host: port["host"], protocol: port["protocol"], auto_correct: true
end
end
# Configure The Public Key For SSH Access
if settings.include? 'authorize'
if File.exists? File.expand_path(settings["authorize"])
config.vm.provision "shell" do |s|
s.inline = "echo $1 | grep -xq \"$1\" /home/vagrant/.ssh/authorized_keys || echo \"\n$1\" | tee -a /home/vagrant/.ssh/authorized_keys"
s.args = [File.read(File.expand_path(settings["authorize"]))]
end
end
end
# Copy The SSH Private Keys To The Box
if settings.include? 'keys'
settings["keys"].each do |key|
config.vm.provision "shell" do |s|
s.privileged = false
s.inline = "echo \"$1\" > /home/vagrant/.ssh/$2 && chmod 600 /home/vagrant/.ssh/$2"
s.args = [File.read(File.expand_path(key)), key.split('/').last]
end
end
end
# Copy User Files Over to VM
if settings.include? 'copy'
settings["copy"].each do |file|
config.vm.provision "file" do |f|
f.source = File.expand_path(file["from"])
f.destination = file["to"].chomp('/') + "/" + file["from"].split('/').last
end
end
end
# Register All Of The Configured Shared Folders
if settings.include? 'folders'
settings["folders"].each do |folder|
if File.exists? File.expand_path(folder["map"])
mount_opts = []
if (folder["type"] == "nfs")
mount_opts = folder["mount_options"] ? folder["mount_options"] : ['actimeo=1', 'nolock']
elsif (folder["type"] == "smb")
mount_opts = folder["mount_options"] ? folder["mount_options"] : ['vers=3.02', 'mfsymlinks']
end
# For b/w compatibility keep separate 'mount_opts', but merge with options
options = (folder["options"] || {}).merge({ mount_options: mount_opts })
# Double-splat (**) operator only works with symbol keys, so convert
options.keys.each{|k| options[k.to_sym] = options.delete(k) }
config.vm.synced_folder folder["map"], folder["to"], type: folder["type"] ||= nil, **options
# Bindfs support to fix shared folder (NFS) permission issue on Mac
if Vagrant.has_plugin?("vagrant-bindfs")
config.bindfs.bind_folder folder["to"], folder["to"]
end
else
config.vm.provision "shell" do |s|
s.inline = ">&2 echo \"Unable to mount one of your folders. Please check your folders in Homestead.yaml\""
end
end
end
end
# Install All The Configured Nginx Sites
config.vm.provision "shell" do |s|
s.path = scriptDir + "/clear-nginx.sh"
end
if settings.include? 'sites'
settings["sites"].each do |site|
type = site["type"] ||= "laravel"
if (type == "symfony")
type = "symfony2"
end
config.vm.provision "shell" do |s|
s.name = "Creating Site: " + site["map"]
s.path = scriptDir + "/serve-#{type}.sh"
s.args = [site["map"], site["to"], site["port"] ||= "80", site["ssl"] ||= "443"]
end
# Configure The Cron Schedule
if (site.has_key?("schedule"))
config.vm.provision "shell" do |s|
s.name = "Creating Schedule"
if (site["schedule"])
s.path = scriptDir + "/cron-schedule.sh"
s.args = [site["map"].tr('^A-Za-z0-9', ''), site["to"]]
else
s.inline = "rm -f /etc/cron.d/$1"
s.args = [site["map"].tr('^A-Za-z0-9', '')]
end
end
end
end
end
config.vm.provision "shell" do |s|
s.name = "Restarting Nginx"
s.inline = "sudo service nginx restart; sudo service php7.1-fpm restart"
end
# Install MariaDB If Necessary
if settings.has_key?("mariadb") && settings["mariadb"]
config.vm.provision "shell" do |s|
s.path = scriptDir + "/install-maria.sh"
end
end
# Install MongoDB If Necessary
if settings.has_key?("mongodb") && settings["mongodb"]
config.vm.provision "shell" do |s|
s.path = scriptDir + "/install-mongo.sh"
end
end
# Configure All Of The Configured Databases
if settings.has_key?("databases")
settings["databases"].each do |db|
config.vm.provision "shell" do |s|
s.name = "Creating MySQL Database: " + db
s.path = scriptDir + "/create-mysql.sh"
s.args = [db]
end
config.vm.provision "shell" do |s|
s.name = "Creating Postgres Database: " + db
s.path = scriptDir + "/create-postgres.sh"
s.args = [db]
end
if settings.has_key?("mongodb") && settings["mongodb"]
config.vm.provision "shell" do |s|
s.name = "Creating Mongo Database: " + db
s.path = scriptDir + "/create-mongo.sh"
s.args = [db]
end
end
end
end
# Configure All Of The Server Environment Variables
config.vm.provision "shell" do |s|
s.name = "Clear Variables"
s.path = scriptDir + "/clear-variables.sh"
end
if settings.has_key?("variables")
settings["variables"].each do |var|
config.vm.provision "shell" do |s|
s.inline = "echo \"\nenv[$1] = '$2'\" >> /etc/php/7.1/fpm/php-fpm.conf"
s.args = [var["key"], var["value"]]
end
config.vm.provision "shell" do |s|
s.inline = "echo \"\n# Set Homestead Environment Variable\nexport $1=$2\" >> /home/vagrant/.profile"
s.args = [var["key"], var["value"]]
end
end
config.vm.provision "shell" do |s|
s.inline = "service php7.1-fpm restart"
end
end
# Update Composer On Every Provision
config.vm.provision "shell" do |s|
s.name = "Update Composer"
s.inline = "sudo /usr/local/bin/composer self-update && sudo chown -R vagrant:vagrant /home/vagrant/.composer/"
s.privileged = false
end
# Configure Blackfire.io
if settings.has_key?("blackfire")
config.vm.provision "shell" do |s|
s.path = scriptDir + "/blackfire.sh"
s.args = [
settings["blackfire"][0]["id"],
settings["blackfire"][0]["token"],
settings["blackfire"][0]["client-id"],
settings["blackfire"][0]["client-token"]
]
end
end
end
end
The text was updated successfully, but these errors were encountered:
Many years later if it helps other. Using Windows 11. Add exceptions for the winnfsd.exe files at C:\Users\[your-user-name]\.vagrant.d. Do a *.exe search in that directory. Specifically C:\Users\[your-user-name]\.vagrant.d\gems\3.1.3\gems\vagrant-winnfsd-1.4.0\bin\winnfsd.exe was the culprit for me using my Vipre Firewall.
Using this script from homestead on Vagrant 1.9.0:
Vagrantfile:
Homestead.yaml:
homestead.rb
The text was updated successfully, but these errors were encountered: