如何将数据磁盘附加到新虚拟机

您的应用程序可能需要存储数据。要这样设置,您可以将数据磁盘添加到先前创建的虚拟机。要做到这一点,最简单的方法是将空数据磁盘连接到本机。

在Linux上,磁盘资源通常由Azure Linux代理管理并自动挂载到/mnt/resource(或到Ubuntu上的/ mnt上) 。另一方面, Linux上的数据磁盘可能是由内核命名为/ dev / sdc,而用户将需要分区、格式化和安装该资源。请参阅Azure Linux代理用户指南以获取更多信息。

注意:

不要将数据储存在资源磁盘上。此磁盘为应用程序提供临时存储进程,并用于存储你不需要保留数据,如交换文件。数据磁盘将Azure存储作为.vhd文件驻留在页面blob中,并提供存储冗余以保护您的数据。有关详细信息,请参阅关于Azure中的磁盘和图像。

1.如果你还没有这样做,登录到Azure管理门户。

2.单击Virtual Machines ,然后选择您先前创建的MyTestVM1虚拟机。

3.在命令栏,单击Attach ,然后单击Attach Empty Disk

会出现Attach Empty Disk 对话框。

4.已经为您定义Virtual Machine NameStorage LocationFile Name 。所有你需要做的就是输入你想要的磁盘大小。在Size 字段中输入5。

注意:所有磁盘都可以从Azure存储中的VHD文件创建。你可以为添加到存储的VHD文件提供名称,但是会自动生成的磁盘名称。

5.单击复选标记将数据磁盘连接到虚拟机。

6.可以通过观察仪表板来验证数据磁盘是否已被成功连接到虚拟机。单击虚拟机的名称来显示仪表板。

虚拟机的磁盘数量现在是2,你连连接的磁盘列在Disks 表中。

您刚刚连接到虚拟机的数据磁盘在你添加之后处于脱机状态并且未初始化。你必须登录到本机并初始化磁盘,以用它来存储数据。

1.通过使用上面“如何在创建虚拟机之后登录虚拟机”中列出的步骤连接到虚拟机。

2.在SSH窗口中,输入以下命令,然后输入帐号密码:

sudo grep SCSI /var/log/messages

你可以看到显示的消息中的添加的最后一个数据盘的标识符

3.在SSH窗口中,输入以下命令来创建新设备,然后输入帐号密码:

sudo fdisk /dev/sdc

注意:

在这个例子中,如果/ sbin或/ usr / sbin不在你的$ PATH中 ,你可能需要在某些发行中使用sudo -i。

4.输入n建立新分区。

5.输入P,使该分区成为主分区,输入1 ,使其成为第一个分区,然后点击回车接受cylinder 的默认值。

6.输入p来查看有关该被划分磁盘的详细信息。

7.输入W来写入磁盘的设置。

8.您必须在新分区上创建文件系统。例如,输入以下命令来创建文件系统,然后输入帐号密码:

sudo mkfs -t ext4 /dev/sdc1

注意:

请注意,SUSE Linux Enterprise11系统只提供ext4文件系统的只读访问权。对于这些系统,我们推荐将新文件系统格式化为ext3 而不是ext4。

9.创建一个目录来安装新文件系统。例如,输入以下命令,然后输入帐户密码:

sudo mkdir / datadrive

10.输入以下命令来安装驱动器:

sudo mount /dev/sdc1 /datadrive

现在数据磁盘已准备好用作/ datadrive。

11.将新驱动器添加到/ etc / fstab:

为确保驱动器在重新启动后自动重新安装,它必须添加到/ etc / fstab文件。另外,强烈建议UUID (通用唯一标识符)用于/ etc / fstab中来引用驱动器,而不仅仅是设备名称(即/ dev / scd1 ) 。为了找到新驱动器的UUID,你可以使用blkid实用程序 :

输出类似如下所示:

注意:

blkid可能不是在所有情况下都需要sudo访问,但是,如果/ sbin或/ usr / sbin不在你的$ PATH中,在某些发行中,它使用sudo -i可能会更容易运行。

警告:不正确地编辑/ etc / fstab文件可能导致系统无法启动。如果不确定,请参阅发行的文档,了解有关如何正确编辑该文件的信息。它也建议在创建/ etc / fstab文件的备份之后,再编辑该文件。

使用文本编辑器,在/ etc / fstab文件的末尾输入有关新文件系统的信息。在这个例子中,我们将UUID值用于前面步骤中创建的新/ dev / sdc1设备和挂载点/ datadrive :

或者,在基于SUSE Linux的系统上,你可能需要使用一个稍微有所不同的格式:

如果创建了额外的数据驱动器或分区,您还需要将他们单独输入到/ etc / fstab。

现在,您可以通过简单卸载然后重新安装文件系统测试是否正确安装文件系统,即使用在前面的步骤中创建的示例挂载点/ datadrive:

如果第二个命令产生错误,请检查/ etc / fstab文件以检查语法是否正确。

注意:

随后在没有编辑fstab文件的情况下删除数据磁盘可能会导致虚拟机无法启动。如果这是一个普遍现象,那么大多数发行版都会提供nofail和/或nobootwait fstab选项,即使磁盘不存在也能让系统启动。请咨询您的发行版的文档,以了解有关这些参数的详细信息。

Next Steps

To learn more about Linux on Azure, see the following articles:

Introduction to Linux on Azure

How to use the Azure Command-Line Tools for Mac and Linux

About Azure VM configuration settings

使用Windows Azure创建Linux系统虚拟机-下的更多相关文章

  1. 使用Windows Azure创建Linux系统虚拟机-上

    创建虚拟机来运行Linux 当您在Azure管理门户中使用映像图库时,创建运行Linux的虚拟机很容易.本指南告诉您如何做到这一点,假设你没有使用过Azure. 注意: 即使你不需要使用过Azure虚 ...

  2. linux系统虚拟机下安装nginx基础

    虽然安装nginx什么的 .以及如何配置等等一系列的资料案例已经很多了 但是作为菜鸟的我还是搞了半天哈 官网上面也有.但是一些细节方面的并没有说明.导致踩了半天坑才搞好 本案例的系统环境     wi ...

  3. linux系统虚拟机下安装jdk

    首先需要得到可以创建文件和上传文件的权限 . 将下载好的jdk文件上传到指定的文件目录下. tar -zxvf        jdk-8u60-linux-x64.tar.gz 解压到当前文件下  会 ...

  4. 远程桌面连接Windows Azure中的Ubuntu虚拟机

    默认情况下,通过Windows Azure创建的ubuntu虚拟机是不能直接连接远程桌面的,只能通过SSH终端连接. 在Windows Azure Portal中创建Ubuntu虚拟机,创建完成后添加 ...

  5. 如何在Windows环境下安装Linux系统虚拟机

    如何在Windows环境下安装Linux系统虚拟机 本篇经验写给想要入门学习C语言的小白们.Windows系统因为使用窗口图形化,操作简单,功能多样,所以我们在Windows环境下可以做到很多,但想要 ...

  6. 关于vmware下复制linux系统虚拟机后eth0变成eth1问题解决

    在vmware虚拟机中,当我们克隆或者复制linux系统虚拟机后,再启动系统时会发现系统下不再有eth0,而变成了eth1 当我们使用/etc/init.d/network restart重启网络时, ...

  7. Windows Azure 上 Linux VM 中的交换空间 – 第 2 部分

    本文章由 Azure CAT 团队的 Piyush Ranjan (MSFT) 撰写. 在前一篇文章 Windows Azure 上Linux VM 中的交换空间第 1 部分中,我介绍了在默认情况下, ...

  8. liunx系统虚拟机下安装tomcat9以及访问tomcat案例

    在liunx系统虚拟机下安装tomcat9 首先下载好压缩包 liunx系统环境的安装包 将其解压到虚拟机自己创建的目录下 解压命令   tar -zxvf   文件名 解压好如图所示 然后修改配置文 ...

  9. Linux系统根目录下各文件夹介绍

    参考自:[1]Linux 系统根目录下各个文件夹的作用 https://www.cnblogs.com/jiangfeilong/p/10538795.html[2]了解Linux根目录"/ ...

随机推荐

  1. JAVA获取当前日期以及将字符串转成指定格式的日期

    /* * To change this template, choose Tools | Templates * and open the template in the editor. */ pac ...

  2. 支持阻塞操作和轮询操作的globalfifo设备驱动代码分析以及测试代码

    #include <linux/module.h> #include <linux/types.h> #include <linux/fs.h> #include ...

  3. Java学习--final与static

    final是java的关键字,它所表示的是“这部分是无法修改的”. 编译期常量,它在类加载的过程就已经完成了初始化,所以当类加载完成后是不可更改的,编译期可以将它代入到任何用到它的计算式中,也就是说可 ...

  4. 5.MVC框架开发(强类型开发,控制器向界面传递数据的几种方法)

    界面表单中的表单元素名字和数据库表的字段名相一一映射(需要哪个表的数据就是那个表的模型(Model)) 在View页面中可以指定页面从属于哪个模型 注:以上的关系可以通过MVC的强类型视图开发来解决我 ...

  5. linux nginx安装

    操作系统centOS7安装nginx: 1.如果centOS7中未安装编译器,先安装gcc编译模块 yum install gcc gcc-c++ ncurses-devel perl 2.安装ngi ...

  6. mysql的过程和Oracle的区别

    mySQL 和 Oracle 不一样  , mysql 中的function 中, 没有 CREATE OR REPLACE如果需要用到这句,可以使用 DROP FUNCTION IF EXISTS ...

  7. Dynamic Programming (DP) 问题总结

    所有的 DP 问题都可以简单得用 Recursion 的方式实现.这通常是最容易想到的思路. 问题是这种实现不够 efficient,存在 subproblem 被重复计算的情况.有两种解决这个问题的 ...

  8. 互联网科技今年九个兴奋点:O2O深耕细作,可穿戴设备分水岭

    http://new.iheima.com/detail/2014/0204/58374.html i黑马观察到,2014年是O2O的深耕细作年,而线上和线下结合这一互联网化趋势,将会向更多产业扩散, ...

  9. cs ip 通过jmp转移命令间接赋值。无法直接对其赋值。

    jmp 寄存器 命令 对IP间接赋值.

  10. easyui源码翻译1.32--Pagination(分页)

    前言 使用$.fn.pagination.defaults重写默认值对象下载该插件翻译源码 该分页控件允许用户导航页面的数据.它支持页面导航和页面长度选择的选项设置.用户可以在分页控件上添加自定义按钮 ...