谷粒商城学习-06-使用vagrant快速创建linux虚拟机

这一节的内容是在Windows上安装虚拟机。

为什么要按照虚拟机呢?

原因是很多软件只能在Linux下运行,有的虽然也可以在Windows上运行,但从安装到运行会遇到很多问题,为这些解决这些问题花时间对于大多数人特别是初学者是没有什么价值的。

最好的方式就是在自己的Windows机器上安装虚拟机,模拟Linux环境。

如果使用Linux或者Mac开发就不用安装虚拟机。

常见的虚拟机有VMWare和VirtualBox,项目采用了VirtualBox。

一,安装VirtualBox

1,下载VirtualBox

打开VirtualBox官网,找到左侧菜单栏,点击"Downloads"。

点击下图的"Windows hosts"开始下载。

大约105M,不算很大。

2,安装

双击下载的exe文件,即可开始安装,和安装其他软件没什么区别。

一般要修改下安装的目标文件夹,最好装在非系统盘。

不过这一步可能报错:virtualbox invalid directory

原因是VirtualBox新版本不允许安装到系统盘之外的磁盘。

解决办法就是在你想要安装的分区下建一个空的文件夹,然后执行修改权限的命令,比如我创建的文件是D:\virtualbox :

注意:安装路径要直接在盘符下面,比如D:\VirtualBox或者E:\VirtualBox,否则就要把所有上级目录的文件权限都改一遍

bash 复制代码
icacls D:\virtualbox /reset /t /c
icacls D:\virtualbox /inheritance:d /t /c
icacls D:\virtualbox /grant *S-1-5-32-545:(OI)(CI)(RX) /t /c
icacls D:\virtualbox /deny *S-1-5-32-545:(DE,WD,AD,WEA,WA) /t /c
icacls D:\virtualbox /grant *S-1-5-11:(OI)(CI)(RX) /t /c
icacls D:\virtualbox /deny *S-1-5-11:(DE,WD,AD,WEA,WA) /t /c

二,安装Vagrant

Vagrant 是一款用于构建和管理虚拟开发环境的工具,它简化了开发环境的一致性配置和分发过程。

通过 Vagrant,开发者可以在本地机器上快速搭建预配置的虚拟机,确保所有团队成员的工作环境相同,消除"在我的机器上能运行"的问题。

总之,使用Vagrant能一键创建虚拟机,让我们专注于Java的学习,避免耗费时间应付各种虚拟机问题。

1,下载Vagrant

点击此处官网下载

如果是64为电脑选择`AMD64`。

如果直接从官网下载可能需要17分钟。

可以在CSDN搜索下载。

2,安装Vagrant

安装非常简单,点击上一步下载的msi文件即可完成安装。

安装完成后需要重启电脑,Vagrant才能正常使用。

3,验证是否安装成功

打开windows的cmd,执行命令 vagrant,如果有以下输出,说明安装成功。

三,使用Vagrant创建虚拟机

1,初始化centos7系统

打开 window cmd 窗口,执行命令 vagrant init centos/7,即可初始化一个 centos7 系统。

执行这个命令后,会在C盘用户目录下创建一个名为"Vagrantfile"配置文件。

2,启动虚拟机

在cmd中执行命令 vagrant up 即可启动虚拟机,系统 root 用户的密码是 vagrant。

这个命令的完成需要10分钟左右时间,请耐心等待。

cmd控制台有如下日志,说明虚拟机启动成功。

3,vagrant 其他常用命令

  • vagrant ssh:自动使用 vagrant 用户连接虚拟机。
  • vagrant upload source destination name\|id:上传文件

四,Vagrant使用

1,初始化

使用命令 vagrant init,只需要初始化一次。

2,启动虚拟机

使用命令 vagrant up,虚拟机关机后,重新启动也是使用这个命令。

3,ssh操作虚拟机

使用命令vagrant ssh即可通过ssh连上虚拟机。

相关推荐
Ruiery7 小时前
Linux 6.6内核内存管理深度解析(十六):mmap — 用户态“申请内存“的真相
linux·运维·服务器
欧米欧8 小时前
Linux系统篇(七),环境变量的底层溯源,核心获取机制与安全应用
linux·运维·服务器
Ruiery8 小时前
Linux 6.6内核内存管理深度解析(十八):KASLR 内核地址空间随机化
linux·运维·服务器·安全
qetfw9 小时前
UOS MariaDB 数据库:安装、最小权限与备份验证
linux·数据库·mariadb·uos
逆风的蚂蚁10 小时前
linux服务器性能调整怎么落地?我把 CPU 调度、I/O 优先级和内核参数这几个旋钮都拧了一遍
linux·运维·服务器
apple-mapping11 小时前
网络RTK定位学习总结
学习·网络rtk
楚山之石11 小时前
【Lancet Neurology 】多发性硬化认知障碍的 SDMT 筛查、灰质萎缩标志与认知康复循证路径
图像处理·人工智能·学习·mri
海海不掉头发13 小时前
CSDN博客_时序预测9模型复现对比
人工智能·学习·软件工程
沫璃染墨14 小时前
从零入门计算机网络系列(十一):HTTP协议进阶——从重定向原理到GET/POST与Fiddler抓包
linux·服务器·开发语言·网络·c++·tcp/ip·html
蓝祁子yoky15 小时前
Qt学习日记 Day13:网络编程(一)-TCP基础与Socket实战
网络·qt·学习