VirtualBox+Vagrant快速搭建linux虚拟环境
1.下载安装VirtualBox
下载 Virtual Box 官网: https://www.virtualbox.org/
2.BIOS 里修改设置开启虚拟化设备支持(f2, f10)
参考: https://jingyan.baidu.com/article/ab0b56305f2882c15afa7dda.html
3.安装 Virtual Box,除了选择安装的位置,其他直接一路下一步即可
2.下载安装载 Vagrant
1.简单来说,vagrant 是一个操作虚拟机的工具。
2.它提供了一套高效而便利的虚拟机管理方式,通过命令和配置文件,能很快的完成一套开发环境的部署,并可以打包传播
3.方便在工作环境中,各个开发环境不一致的问题,也解决了重复配置环境的麻烦
4.也就是说通过vagrant可以快速的搭建开发环境, 比如安装Linux, 相比先安装 vmware, 然后通过镜像文件安装 Centos Linux的方式来说,vagrant 通过一条指令就可以在线安装 Centos Linux , 而且保证开发人员版本统一, 非常方便
5.通过 https://app.vagrantup.com/boxes/search 可以查看 vagrant 可以安装的软件/环境
6.下载 vagrant, 如图所示
7.安装Vagrant直接双击安装即可,除了选择安装位置其他一路下一步即可
8.重启系统,查看 vagrant 是否安装成功
3.vagrant init centos/7:初始化
1.通过 vagrant 下载指定 Linux 系统镜像文件,并启动系统
√ 查看有哪些虚拟系统可以下载安装 : https://app.vagrantup.com/boxes/search
vagrant init centos/7
#下载镜像文件,完成安装
vagrant up
打开VirtualBox可以看到安装的系统,正在运行
2.登陆 centos/Linux
vagrant ssh
#查看当前 centos/linux 版本
cat /etc/redhat-release
3.退出 centos/Linux
exit
4.关闭 centos/linux 和 重启 centos/linux
有些机器因为兼容问题, 如果你使用界面方式启动过,会保留上次的进程信息
需要重启机器, 才能使用下面方式启动
4.配置 windows 主机和 Linux,能相互通信
要求说明: 配置网络,让 Windows 主机和 Linux 互通
- 简单分析
- 查看 windows 网络, 注意观察 VirtualBox Host-Only
修改 vagrantfile
vagrantfile目录在哪里?在那个目录初始化vagrant init centos/7就在那个目录下
#在第35行
config.vm.network "private_network", ip: "192.168.56.100"
- 使用 vagrant up 重启 Linux, 如果系统在运行,也可以直接使用 vagrant reload 指令, 让配置生效, 启动后,登录 Linux , 使用指令 ip addr 查看 IP
# 启动Linux
vagrant up
# 重新加载
vagrant reload
- 查看 windows 主机的 IP, 完成 windows <---> Linux 互通测试
5.注意事项和细节
1.VitualBox 与某些软件不兼容,需要卸载这些软件,然后重启电脑。常见不兼容软件: 红蜘蛛, 360 等
6.使用远程连接工具连接虚拟机
1.配置实现
1.配置sshd
#查看sshd_config文件
sudo vi /etc/ssh/sshd_config
#将PasswordAuthentication的no改成yes
2.重启服务让配置生效
#重启sshd服务
systemctl restart sshd.service
重启ssh服务出现Redirecting to /bin/systemctl restart sshd.service
,参考:
http://t.zoukankan.com/yadongliang-p-8695215.html
修改文件权限不够,请使用sudo ...
3,使用Xshell 建立连接- 根据实际情况配置即可
默认,用户名 root : 密码是: vagrant
4.测试连接
5.如果像修改默认的密码,使用 passwd 用户名
指令即可
[root@llp home]# passwd milan
更改用户 milan 的密码 。
#这里我输入的123 会提示密码少于8个字符但是不影响使用
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
[root@llp home]#
#当前登录用户切换到milan
[root@llp home]# su - milan
#显示当前用户所在的目录 pwd
[milan@llp ~]$ pwd
/home/milan