环境篇:Virtualbox+Vagrant安装Centos7
环境篇:Virtualbox+Vagrant安装Centos7

1 安装Vagrant
Vagrant下载地址:https://www.vagrantup.com/
Vagrant百度网盘:https://pan.baidu.com/s/1jqnMml024niqWQPbrGVuJw提取码:xv8h
傻瓜安装即可
vagrant -v 查看版本

2 下载virtualbox.box镜像
virtualbox.box百度网盘:https://pan.baidu.com/s/1EBrysc13fd0qf9EbT5rKdw提取码:1dk4
3 安装Virtualbox
virtualbox下载地址:https://www.virtualbox.org
virtualbox百度网盘:https://pan.baidu.com/s/1InyLZ-8Zmjuj7Qyk0Qg1Uw提取码:ewty
傻瓜安装即可,注意和Vagrant有版本兼容问题
4 安装centos7
4.1 添加本地centos/7镜像
找到下载好的virtualbox.box文件目录
使用
vagrant box add centos/7 C:\Users\SMZC\Desktop\virtualbox\virtualbox.box添加vagrant镜像使用
vagrant box list查询镜像

4.2 创建虚拟机环境
- 新建一个文件夹,并进入命令行cmd

- 使用
vagrant init命令

- 修改Vagrantfile文件
# -*- mode: ruby -*-
# vi: set ft=ruby :
# All Vagrant configuration is done below. The "2" in Vagrant.configure
# configures the configuration version (we support older styles for
# backwards compatibility). Please don't change it unless you know what
# you're doing.
Vagrant.configure("2") do |config|
# The most common configuration options are documented and commented below.
# For a complete reference, please see the online documentation at
# https://docs.vagrantup.com.
# Every Vagrant development environment requires a box. You can search for
# boxes at https://vagrantcloud.com/search.
#拉取镜像centos/7
config.vm.box = "centos/7"
# Disable automatic box update checking. If you disable this, then
# boxes will only be checked for updates when the user runs
# `vagrant box outdated`. This is not recommended.
# config.vm.box_check_update = false
# Create a forwarded port mapping which allows access to a specific port
# within the machine from a port on the host machine. In the example below,
# accessing "localhost:8080" will access port 80 on the guest machine.
# NOTE: This will enable public access to the opened port
# config.vm.network "forwarded_port", guest: 80, host: 8080
#采用桥接网络,共享主机网络
config.vm.network "public_network"
# Create a forwarded port mapping which allows access to a specific port
# within the machine from a port on the host machine and only allow access
# via 127.0.0.1 to disable public access
# config.vm.network "forwarded_port", guest: 80, host: 8080, host_ip: "127.0.0.1"
# Create a private network, which allows host-only access to the machine
# using a specific IP.
# config.vm.network "private_network", ip: "192.168.33.10"
# Create a public network, which generally matched to bridged network.
# Bridged networks make the machine appear as another physical device on
# your network.
# config.vm.network "public_network"
# Share an additional folder to the guest VM. The first argument is
# the path on the host to the actual folder. The second argument is
# the path on the guest to mount the folder. And the optional third
# argument is a set of non-required options.
# config.vm.synced_folder "../data", "/vagrant_data"
# Provider-specific configuration so you can fine-tune various
# backing providers for Vagrant. These expose provider-specific options.
# Example for VirtualBox:
#
# config.vm.provider "virtualbox" do |vb|
# # Display the VirtualBox GUI when booting the machine
# vb.gui = true
#
# # Customize the amount of memory on the VM:
# vb.memory = "1024"
# end
#虚拟机名字heaton-centos7,内存,核数
config.vm.provider "virtualbox" do |vb|
vb.memory = "4096"
vb.name= "heaton-centos7"
vb.cpus= 2
end
#
# View the documentation for the provider you are using for more
# information on available options.
# Enable provisioning with a shell script. Additional provisioners such as
# Puppet, Chef, Ansible, Salt, and Docker are also available. Please see the
# documentation for more information about their specific syntax and use.
# config.vm.provision "shell", inline: <<-SHELL
# apt-get update
# apt-get install -y apache2
# SHELL
end
- 在Vagrantfile文件命令行目录,使用命令
vagrant up创建启动虚拟机

4.3 修改root密码
使用
vagrant ssh命令进入刚刚创建的虚拟机使用
sudo -i命令进入root用户使用
vi /etc/ssh/sshd_config命令修改sshd_config使root用户可以使用密码登录
PasswordAuthentication yes

- 使用
passwd设置密码

- 使用
systemctl restart sshd重启密码服务 - 使用
ip add查看ip即可使用远程工具登录root用户


5 复制虚拟机
- 关闭需要复制的虚拟机

- 进入虚拟机所在目录
vagrant package --output heaton-centos7.box
- 将上面得到的heaton-centos7.box文件添加进vagrant镜像中
vagrant box add heaton-centos77 heaton-centos7.box

- 进入一个新目录,生成新的虚拟机Vagrantfile
vagrant init heaton-centos77
- 启动,则得到一个一模一样的虚拟机(注意修改网络)
vagrant up

6 一次性创建多台centos7
6.1 添加本地centos/7镜像
找到下载好的virtualbox.box文件目录
使用
vagrant box add centos/7 C:\Users\SMZC\Desktop\virtualbox\virtualbox.box添加vagrant镜像使用
vagrant box list查询镜像

6.2 创建虚拟机环境
- 新建一个文件夹,并进入命令行cmd

- 使用
type nul>Vagrantfile命令创建Vagrantfile文件

- 修改Vagrantfile文件
- 先查询本机ip记住前三段,需要在Vagrantfile中指定
- 以下是创建3台的Vagrantfile
boxes = [
{
:name => "master",
:eth1 => "192.168.192.10",
:mem => "2048",
:cpu => "2",
:sshport => 22230
},
{
:name => "slave1",
:eth1 => "192.168.192.11",
:mem => "2048",
:cpu => "2",
:sshport => 22231
},
{
:name => "slave2",
:eth1 => "192.168.192.12",
:mem => "2048",
:cpu => "2",
:sshport => 22232
}
]
Vagrant.configure(2) do |config|
config.vm.box = "centos/7"
boxes.each do |opts|
config.vm.define opts[:name] do |config|
config.vm.hostname = opts[:name]
config.vm.network :public_network, ip: opts[:eth1]
config.vm.network "forwarded_port", guest: 22, host: 2222, id: "ssh", disabled: "true"
config.vm.network "forwarded_port", guest: 22, host: opts[:sshport]
config.vm.provider "vmware_fusion" do |v|
v.vmx["memsize"] = opts[:mem]
v.vmx["numvcpus"] = opts[:cpu]
end
config.vm.provider "virtualbox" do |v|
v.customize ["modifyvm", :id, "--memory", opts[:mem]]
v.customize ["modifyvm", :id, "--cpus", opts[:cpu]]
v.customize ["modifyvm", :id, "--name", opts[:name]]
end
end
end
end
- 在Vagrantfile文件命令行目录,使用命令
vagrant up创建启动虚拟机

6.3 修改root密码
使用命令进入刚刚创建的虚拟机,如下为上面创建的3台虚拟机,可以选择多开cmd,或者依次处理。
vagrant ssh mastervagrant ssh slave1vagrant ssh slave2
使用
sudo -i命令进入root用户使用
vi /etc/ssh/sshd_config命令修改sshd_config文件,使root用户可以使用密码登录
PasswordAuthentication yes

- 使用
passwd设置密码

- 使用
systemctl restart sshd重启密码服务 - 即可使用远程工具登录Vagrantfile上指定ip的root用户。
环境篇:Virtualbox+Vagrant安装Centos7的更多相关文章
- virtualbox + vagrant 安装centos7 以及 vagrant up下载太慢的解决方案
下载安装 virtualbox下载 vagrant下载 下载启动镜像vagrant up有下载过慢的问题,可以到网页vagrant镜像仓库,找到自己需要的镜像,选择virtualbox版本下载 下载好 ...
- VirtualBox下安装CentOS7系统
本文假定你已经知道如何安装VirtualBox虚拟机软件,并且已经安装好了. 首先我们需要准备好centos的iso镜像文件,可以从centos的官网下载. 以下操作使用的VirtualBox版本号是 ...
- (转)VirtualBox下安装CentOS7系统
转:https://www.cnblogs.com/hihtml5/p/8217062.html 本文假定你已经知道如何安装VirtualBox虚拟机软件,并且已经安装好了. 首先我们需要准备好cen ...
- Virtualbox/Vagrant安装
它们分别是什么? VirtualBox: 号称是最强的免费虚拟机软件和VM类似. 不仅具有丰富的特色,而且性能也很优异. Vagrant: 是一个基于Ruby的工具,用于创建和部署虚拟化开发环境. 使 ...
- vagrant安装centos7
1. 安装VirtualBox 去官网https://www.virtualbox.org/wiki/Downloads下载最新版的Virtualbox,然后双击安装,一直点击确认完成. 2. 安装V ...
- 在virtualbox中安装CentOS-7
当初才接触linux的时候,因为条件限制,只能在虚拟机中安装linux系统使用,由于是小白,爬了好多坑.于是决定写一篇关于在虚拟机中安装linux系统的博客.一是为了巩固自己的知识,二是希望能够对新手 ...
- 在VirtualBox上安装CentOS7
文章的出处:http://jingyan.baidu.com/article/9c69d48f8ec01613c8024e58.html 工具: VirtualBox-5.1.2-108956-Win ...
- Mac下安装VirtualBox并在VirtualBox中安装CentOS7
VirtualBox (百科)VirtualBox 是一款开源虚拟机软件.VirtualBox 是由德国 Innotek 公司开发,由Sun Microsystems公司Sun Microsystem ...
- VirtualBox中安装CentOS-7问题说明
之所以选择VirtualBox和CentOS,原因很简单. 目前我只有一台PC,用了几年了,性能很一般,我还需要用它做其他应用,不能直接装Linux,万一安装不成功,有可能一周内就完全没法学习了.以前 ...
随机推荐
- 为啥Waymo和Uber间的官司,这么难界定?
自动驾驶作为被众多巨头和创业者看好的技术及领域,已有众多企业涉足其中.在自动驾驶尚未完全落地.制定统一标准前,每家企业都在争分夺秒地进行研发,试图率先抢占自动驾驶的高地.毕竟一旦成功,就能够创造巨大的 ...
- loadrunner没有告诉你的
1. LoadRunner之-Block l 如何在一个脚本中实现不同事务不同次数的循环呢? l 案例:假如你想在一个脚本中,实现登录执行1次,查询执行2次,插入执行3次,怎么办?录 ...
- 高效JS简化版
详:.doc (颜色标注)2章17条 2018.6.24 星期日 1:24 第 1 章 让自己习惯 JavaScript 第 1 条:了解你使用的 JavaScript 版本 ES5 引入了另一种版本 ...
- Promethues配置
# my global config global: scrape_interval: 10s # Set the scrape interval to every 15 seconds. Defau ...
- JavaScript的封装和继承
提到JavaScript"面向对象编程",主要就是封装和继承,这里主要依据阮一峰及其他博客的系列文章做个总结. 继承机制的设计思想 所有实例对象需要共享的属性和方法,都放在这个对象 ...
- IT知识圈视频学习资源整理贴
原文地址 热门课程 1.2019 尚学堂大数据全套视频教程(视频.源码.课件) 2.IDEA破解补丁(支持最新2019.2) 3.2019年 MySQL DBA 6期视频教程 4.微信小程序实战开发特 ...
- GitLab-CI部署及踩坑总结
转载请注明出处:https://www.cnblogs.com/shining5/p/8863063.html 部署GitLab-CI 简介 GitLab_CI(gitlab continuous i ...
- Python左手画条龙右手画个彩虹
左手画龙右手画彩虹听说很火,Python也可以画出很美的彩虹,准确的说像彩虹棒棒糖:) 效果如下图: # -*- coding: utf-8 -*- # @Time : 2019/12/16 23:2 ...
- 从头认识js-基本概念(关键字,保留字,数据类型)
语法 ECMAScript的语法大量借鉴了C及其他类C语言(如Java和Perl)的语法.因此,熟悉这些语言的开发人员在接受ECMSAScript更加宽松的语法时,一定会有一种轻松自在的感觉. 区分大 ...
- 7-6 jmu_python_最大公约数&最小公倍数 (10 分)
本题要求从键盘输入两个整数(以逗号间隔),编程求出这两个数的最大公约数和最小公倍数 提示:求最大公约数可用辗转相除法,最小公倍数用两数的积除以最大公约数 输入格式: 在一行中输入两个整数,以逗号间隔 ...