vagrant报错:default:Warning:Au

2020-11-22 07:39:41 字数 5211 阅读 9967

1楼:匿名用户

原因不甚了解,google得到一个解决方法:

在vagrantfile配置文件中添加了两行**,使用明文用户名密码config.ssh.username = "vagrant"

config.ssh.password = "vagrant"

重启解决。

我的vagrant 每次启动到 default: ssh auth method: private key 这一步就不动了

2楼:寒气袭人

添加box

如下添加一个debian的box

e:\ubuntu\vagrant-box-ngixn-php-fpm-mysql-redis-nodejs>vagrant box add debian p

ackage.box

==> box: adding box 'debian' (v0) for provider:

box: downloading: file://e:/ubuntu/vagrant-box-ngixn-php-fpm-mysql-redis-nod

ejs/package.box

box: progress: 100% (rate: 11.0m/s, estimated time remaining: --:--:--)

==> box: successfully added box 'debian' (v0) for 'virtualbox'!

vagrantfile

在任何vagrant工程下面都有一个vagrantfile,就像makefile一眼规,用来配置vagrant的欣慰所创建的虚拟机信息。

vagrant使用

添加镜像

vagrant box add abc boxpath[url|path] #abc未名称

开发到开发目录

vagrant init abc #初始化

d:\work\test>vagrant init debian

a vagrantfile has been placed in this directory. you are now

ready to vagrant up your first virtual environment! please read

the ***ments in the vagrantfile as well as documentation on

vagrantup.*** for more information on using vagrant.

vagrant up #启动

d:\work\test>vagrant up

bringing machine 'default' up with 'virtualbox' provider...

==> default: importing base box 'debian'...

==> default: matching mac address for nat ***working...

==> default: setting the name of the vm: test_default_1413449093680_48484

==> default: clearing any previously set ***work inte***ces...

==> default: preparing ***work inte***ces based on configuration...

default: adapter 1: nat

==> default: forwarding ports...

default: 22 => 2222 (adapter 1)

==> default: booting vm...

==> default: waiting for machine to boot. this may take a few minutes...

default: ssh address: 127.0.0.1:2222

default: ssh username: vagrant

default: ssh auth method: private key

default: warning: connection timeout. retrying...

default: warning: connection timeout. retrying...

==> default: machine booted and ready!

==> default: checking for guest additions in vm...

==> default: mounting shared folders...

default: /vagrant => d:/work/test

vagrant ssh #ssh登录

d:\work\test>vagrant ssh

ssh executable not found in any directories in the %path% variable. is an

ssh client installed? try installing cygwin, mingw or git, all of which

contain an ssh client. or use your favorite ssh client with the following

authentication information shown below:

host: 127.0.0.1

port: 2222

username: vagrant

private key: c:/users/zhangwei_f/.vagrant.d/insecure_private_key

开启ssh后使用xshell登录

网络配置

vagrant的网络有三种模式

1、较为常用是端口映射,就是将虚拟机中的端口映射到宿主机对应的端口直接使用 ,在vagrantfile中配置:

config.vm.***work :forwarded_port, guest: 80, host: 8080

guest: 80 表示虚拟机中的80端口, host: 8080 表示映射到宿主机的8080端口。

开启这个后,如果vagrant已经启动了,在命令行输入 vagrant reload 重启机器,就可以再宿主机伤使用 localhost:8080来访问虚拟机的localhost:80 。

2、如果需要自己自由的访问虚拟机,但是别人不需要访问虚拟机,可以使用private_***work,并为虚拟机设置ip ,在vagrantfile中配置:

config.vm.***work :private_***work, ip: "192.168.1.104"

192.168.1.104 表示虚拟机的ip,多台虚拟机的话需要互相访问的话,设置在相同网段即可

3、如果需要将虚拟机作为当前局域网中的一台计算机,由局域网进行dhcp,那么在vagrantfile中配置:

config.vm.***work :public_***work

目录映射:

既然是开发环境,那么开发工作肯定还是需要在本地完成,而不是都要进到虚拟机中去完成,虚拟机就好好在后台运行服务就好了,不然就本末倒置了,所以这里就需要使用目录映射功能,将本地的目录映射到虚拟机的对应目录。

默认情况下,当前的工作目录,会被映射到虚拟机的 /vagrant 目录,当前目录下的文件可以直接在 /vagrant 下进行访问,当然也可以在通过 ln 创建软连接,如

ln -fs /vagrant/wwwroot /var/www

来进行目录映射,当然,从自动化配置的角度,能不进系统就不需要进系统,所以在vagrant也可以进行目录映射的操作:

config.vm.synced_folder "wwwroot/", "/var/www"

前面的参数 “wwwroot/” 表示的是本地的路径,这里使用对于工作目录的相对路径,这里也可以使用绝对路径,比如: “d:/www/”

后面的参数 “/var/www” 表示虚拟机中对应映射的目录。

一些命令

vagrant up (启动虚拟机)

vagrant halt (关闭虚拟机——对应就是关机)

vagrant suspend (暂停虚拟机——只是暂停,虚拟机内存等信息将以状态文件的方式保存在本地,可以执行恢复操作后继续使用)

vagrant resume (恢复虚拟机 —— 与前面的暂停相对应)

vagrant destroy (删除虚拟机,删除后在当前虚拟机所做进行的除开vagrantfile中的配置都不会保留)

vagrant reload (重启)

vagrant ssh 登陆ubuntu 为什么每次都要输密码?并未在vagrantfile中配置password

3楼:匿名用户

先进入recovery mode,然后以root身份启动一个可启动的bash,最后进行root密码的设定,就ok了.详情可以去看一下vagrant ssh 登录突然需要输入密码的问题里面的内容

vagrant up 启动过程中的问题:如下描述,请问怎么解决呀? 100

4楼:匿名用户

**看不清 建议你去csdn看看。blog.csdn.***/ty_hf/article/details/78314583?locationnum=4&fps=1

5楼:匿名用户

我今天遇到好几次这问题了,而且换了几个不同的virtualbox版本都不行,后来网上查了一下,可能是virualbox有bug,关闭虚拟机要使用vagrant halt ,如果是直接在virualbox里面强制关闭虚拟机的话会导致错误。解决方式如下:vagrant halt ,然后vagrant up ,此时问题解决了

vagrant up启动报错,但是vagrant ssh还是能登陆虚拟机

6楼:开心一哥岁月

打开虚拟机里面的系统报错?两种可能:

第一种,上次打开虚拟机后,你直接关闭电源或常关机后,就无法再次打开虚拟机,提示加载什么错误,可以在虚拟机的系统目录下在,删除所有的lck文件夹后,重新开机再看看。

第二种,上次打开虚拟机后,把当前的操作系统“挂起该虚拟机”,挂起后,恢复不了,提示出错,这时,可以在虚拟机安装目录下,把挂起的文件(该文件的图标上有“暂停”的标识)删除后,重启虚拟机。