• VitualBox+Vagrant搭建ubuntu 18.04 挂载共享目录


    1.安装VirtualBox和Vagrant

    在win10下先安装VirtualBox然后再安装Vagrant。我这里用的VirtualBox6.0.8,Vagrant_2.2.4_x86_64。

    1)安装VirtualBox
    直接下载安装一直点下一步即可;

    2)安装Vagrant
    直接下载安装一直点下一步即可;

    注意:下载的时候,virtualbox和vagrant的版本要搭配,建议都下载最新版的。还有就是要根据自己的操作系统版本进行选择32位或者64位下载。在windows系统中,可能还需要配置环境变量以及一定要开启VT-x/AMD-V硬件加速

    在windows下安装vagrant,为了写入相应配置到环境变量,可能会要求重新启动一下系统,或者可以自己将bin目录配置进环境变量,可不需重启系统

    2.下载box

    我这里用的ubuntu 18.04

    https://mirrors.tuna.tsinghua.edu.cn/ubuntu-cloud-images/bionic/current/bionic-server-cloudimg-amd64-vagrant.box

    官网的box列表,可以选择自己需要的系统进行安装

    3.添加box

    创建一个目录,把bionic-server-cloudimg-amd64-vagrant.box放到创建的目录下,然后cmd到该目录下执行以下命令

    vagrant box add ubuntu18 bionic-server-cloudimg-amd64-vagrant.box

    4.初始化ubuntu 18.04

    执行初始化后会在当前文件夹下生成一个文件Vagrantfile

    vagrant init ubuntu18

    修改配置文件如下

    Vagrant.configure("2") do |config|
      config.vm.box = "ubuntu18"
      config.vm.hostname = "ubuntu18"  #系统下的主机名
      config.vm.synced_folder "E:/dnmp", "/dnmp",create: true,owner: "root", group: "root",mount_options:["dmode=775","fmode=644"] #共享目录
      config.vm.network "public_network" #采用桥接网络,共享主机网络
      config.vm.provider "virtualbox" do |vb|
        vb.memory = 2048
        vb.cpus = 2
        vb.name = "ubuntu18_box"
      end
    end

    共享目录配置解释

    config.vm.synced_folder   
       "your_folder"(必须)   //物理机目录,可以是绝对地址或相对地址,相对地址是指相对与vagrant配置文件所在目录
      ,"vm_folder(必须)"    // 挂载到虚拟机上的目录地址
      ,create(boolean)--可选     //默认为false,若配置为true,挂载到虚拟机上的目录若不存在则自动创建
      ,disabled(boolean):--可选   //默认为false,若为true,则禁用该项挂载
      ,owner(string):'www'--可选   //虚拟机系统下文件所有者(确保系统下有该用户,否则会报错),默认为vagrant
      ,group(string):'www'--可选   //虚拟机系统下文件所有组( (确保系统下有该用户组,否则会报错),默认为vagrant
      ,mount_options(array):["dmode=775","fmode=644"]--可选  //dmode配置目录权限,fmode配置文件权限  默认权限777
      ,type(string):--可选     //指定文件共享方式,例如:'nfs',vagrant默认根据系统环境选择最佳的文件共享方式

    5.安装vbguest插件,(防止挂载失败,提示because the filesystem "vboxsf" is not available的问题,提前执行该命令安装插件)

    使用 vagrant 启动 Virtualbox,能够将宿主机当前目录下的文件同步(复制)到虚拟机 /dnmp目录,但在虚拟机中对 /dnmp所做的修改并不会在宿主机目录生效,无法实现双向共享

    由于vagrant没有Guest Additions,通过vagrant不能创建共享文件夹,所以需要下载vbguest插件,当启动时自动安装Guest Additions

    所以需要关闭虚拟机然后执行安装命令,安装完成后重新加载虚拟机,会看到VirtualBox Guest Additions installer正在安装。

    vagrant plugin install vagrant-vbguest

    6.启动虚拟机(启动后可看到VirtualBox会有该虚拟机自动生成)

    vagrant up
    首次执行vagrant up可能需要20分钟左右,根据自家网络情况而定

    7.连接虚拟机

    vagrant ssh

    初始密码账户是:

    账户密码
    vagrant vagrant

    设置root账号

    sudo passwd root #按照提示输入两次新的密码,并加以确认

    切换至root用户

    su root

    8.vagrant常用命令


    命令描述
    vagrant box add 添加box的操作
    vagrant init 初始化box的操作,会生成vagrant的配置文件Vagrantfile
    vagrant up 启动本地环境
    vagrant ssh 通过 ssh 登录本地环境所在虚拟机
    exit 退出虚拟机
    vagrant halt 关闭本地环境
    vagrant suspend 暂停本地环境
    vagrant resume 恢复本地环境
    vagrant reload 修改了 Vagrantfile 后,使之生效(相当于先 halt,再 up)
    vagrant destroy 彻底移除本地环境
    vagrant box list 显示当前已经添加的box列表
    vagrant box remove 删除相应的box
    vagrant package 打包命令,可以把当前的运行的虚拟机环境进行打包
    vagrant plugin 用于安装卸载插件
    vagrant status 获取当前虚拟机的状态
    vagrant global-status

    更多详细配置:https://blog.csdn.net/youcijibi/article/details/103119974

  • 相关阅读:
    C语言面试题大汇总
    cocos2d-x的win32编译环境
    完美解决Android SDK Manager无法更新
    ADT离线安装教程
    Android开发环境搭建教程
    如何利用dex2jar反编译APK
    Eclipse与Android源码中ProGuard工具的使用
    Proguard语法及常用proguard.cfg代码段
    Android之ProGuard混淆器
    Nutch源码阅读进程2---Generate
  • 原文地址:https://www.cnblogs.com/-mrl/p/13408676.html
Copyright © 2020-2023  润新知