[原文首次发表于51cto http://cloudapps.blog.51cto.com/3136598/1653672】

在Azure上创建了虚拟机之后,我们在一些情况下会需要添加更多的数据磁盘来存储持久化数据,本文介绍如何快速的在Azure Linux的虚拟机上添加数据磁盘并初始化:

 

  1. 登陆Azure的管理界面,并创建虚拟机,本文使用CentOS 6.5作为示例操作系统,其他Linux操作系统类似

  2. 我们先使用SSH登录到改Linux操作系统,检查下当前系统的磁盘状态:

    我们可以看到,目前的Linux系统下只有/sda和/sdb设备,其中/dev/sdb1是系统自动分配的临时磁盘,请不要将重要数据存储在上面,重要的数据需要存储在新建的持久化存储中。

     

  3. 在Azure的管理门户上,选择你要添加磁盘的虚拟机,选择"仪表板",在底部的菜单栏选择"附加"-》"附加空磁盘"来添加新的数据盘:

  4. 在弹出的对话框中,选择你要添加的磁盘大小,单个磁盘最大不超过1T,根据虚拟机大小不同,最大可添加的磁盘书也不相同,具体可以参考官方文档(https://msdn.microsoft.com/zh-cn/library/dn197896.aspx  ),本处为了测试,设为50G:

     

  5. 在界面添加完磁盘以后,你可以看到以下信息,系统多了一个数据盘:

  6. 使用ssh登陆到Linux虚拟机,剩下的步骤都要通过Linux命令行完成。首先检查目前的系统硬件变化和当前的设备变化,使用如下命令检查:

    [azureuser@centostest ~]$ sudo tail -f /var/log/messages

    [azureuser@centostest ~]$ ls -l /dev/sd*

  7. 可以看到系统中实际上已经添加了一个sdc的设备,这个设备就新添加的系统盘,但没有分区也没有格式化,就像你挂了一块硬盘到一个服务器上是一样的,所以第一步我们用fdisk来做分区:

    $ sudo fdisk /dev/sdc

    在它提示符下输入N,建立新的分区,P选择primary partition,w将相关结果写入分区表。

    8. 将新加载的硬盘分区后,我们需要将新建立的分区格式化城系统可以识别的文件系统:

    $ sudo mkfs -t ext4 /dev/sdc1

    9.建立一个新的目录,用来挂载新的分区,在本例中使用/data,然后将新的分区挂载到该目录下:

    $ sudo mkdir /data

    $ sudo mount /dev/sdc1 /data

    10.到目前为止,你已经可以正常使用新加载的数据盘了,加载目录在/data,然而有个问题是,目前是临时加载硬盘,一旦系统重启,加载信息就会丢失,在Linux下,磁盘加载信息会保存在fstab文件中,系统会自动加载该文件中的分区,而在加载磁盘的时候,我们一般使用UUID来作为标示符:

    $ sudo -i blkid

    $ sudo vi /etc/fstab

     

    11. 最后一件事情,目前所创建的/data,属于root用户,就意味着其他用户无法使用该目录,如果默认用户azureuser想要读写该目录怎么办呢?可以在该目录下创建一个子目录,使用Linux命令修改owner属性,然后就可以使用了:

Azure上如何在Linux下挂载数据磁盘的更多相关文章

  1. Linux下挂载新磁盘

    Linux的硬盘识别: 一般使用”fdisk -l”命令可以列出系统中当前连接的硬盘 设备和分区信息.新硬盘没有分区信息,则只显示硬盘大小信息.   1.关闭服务器加上新硬盘   2.启动服务器,以r ...

  2. Aliyun上Linux服务器挂载数据盘及速度测试

    原始文档来自于阿里云官方文档:  Linux 系统挂载数据盘 铁锚 于 2013年12月19日 根据自己的需要进行整理 操作系统: CentOS 6.3, 平台  : 阿里云 ECS 云服务器 1. ...

  3. Dcloud课程6 php脚本如何在Linux下定时更新数据

    Dcloud课程6 php脚本如何在Linux下定时更新数据 一.总结 一句话总结:linux下用crontab命令实现定时任务. 1.linux下执行php脚本用什么命令? 直接用php命令php ...

  4. 如何在Linux下使用Rsync

    如何在Linux下使用Rsync 吐槽 昨天对scp进行总结之后看到最后有说到Rsync,俗语有云:好奇心害死猫.抱着学习的态度将Rsync给找了出来,然后进行了一些简单的学习.下面介绍一些个常用的命 ...

  5. linux下玩转磁盘管理与挂载硬盘

    前言 本文将带来linux下的磁盘管理中的硬盘挂载,Linux操作系统挂载硬盘需要了解的一些知识.这可能是迄今为止介绍的最最最实用的linux硬盘挂载的文章了,比较详细.由于工作原因,平时使用的比较多 ...

  6. 如何在linux下制作一个windows的可启动u盘?

    如何在linux下制作一个windows的可启动u盘? 情景是这样的,有一个windows10的iso,现在想通过U盘安装,要求即支持UEFI(启动引导器),又支持Legacy(启动引导器),因为有一 ...

  7. linux下挂载U盘

    转:http://www.cnblogs.com/yeahgis/archive/2012/04/05/2432779.html linux下挂载U盘 一.Linux挂载U盘: 1.插入u盘到计算机, ...

  8. CentOS下挂载数据盘

    CentOS下挂载数据盘 1.显示磁盘使用情况:#df 2.显示磁盘:#fdisk -l 3.格式化分区:#mkfs.ext4 /dev/vdb1           //注:将/dev/vdb1格式 ...

  9. VMware,win7与linux centos6.4文件互传,linux下挂载windows共享文件夹,vmware tools安装方法

    本方法是以win7,VMware9.0.1 ,centos6.4为基础实验的. 对于linux的初级使用阶段,都会Windows中使用linux虚拟机VMWare或者其它的.在Windows与linu ...

随机推荐

  1. x位全排列(next_permutation)

    擅长排列的小明 时间限制:1000 ms  |  内存限制:65535 KB 难度:4   描述 小明十分聪明,而且十分擅长排列计算.比如给小明一个数字5,他能立刻给出1-5按字典序的全排列,如果你想 ...

  2. 活生生的例子:qInstallMessageHandler接受指定类型的函数指针,这样就可以随心所欲的让程序员自定义函数名以及函数位置

    理论:qInstallMessageHandler是被定义在全局空间里: http://doc.qt.io/qt-5/qtglobal.html#QtMessageHandler-typedef 实践 ...

  3. .net 反编译利器 dnspy

    Binaries Latest release: https://github.com/0xd4d/dnSpy/releases Latest build (possibly unstable): h ...

  4. Why Functional Programming Matters

    http://hi.baidu.com/lhurricane/item/35b57e12a1e3c5ddbf9042a7 http://blog.csdn.net/ddwn/article/detai ...

  5. Reverse Linked List 解答

    Question Reverse a singly linked list. Solution 1 -- Iterative Remember to set head.next = null or i ...

  6. LeeCode-Linked List Cycle

    Given a linked list, determine if it has a cycle in it. /** * Definition for singly-linked list. * s ...

  7. Raphaël—JavaScript Library

    Raphaël-JavaScript Library What is it? Raphaël is a small JavaScript library that should simplify yo ...

  8. 《火球——UML大战需求分析》(第3章 分析业务模型-类图)——3.8 小结与练习

    摘要:类图(Class Diagram)可能是用得最多的一种UML图.类图的基本语法并不复杂,你可能最多学习两三天就可以掌握,然而要真正做到活用类图则可能需要几年的功力.类图是锻炼面向对象分析(OOA ...

  9. js的for in循环和java里的foreach循环的差别

    js里的for in循环定义例如以下: for(var variable in obj) { ... } obj能够是一个普通的js对象或者一个数组.假设obj是js对象,那么variable在遍历中 ...

  10. 使用JUnit单元测试入门

    一.JUnit是什么? JUnit是一个开发源代码的java测试框架,用于编写和运行可重复的测试.它是用于单元测试框架体系xUnit的一个实例(用于java语言).JUnit最初是由Erich Gam ...