Linux格式化、挂载及卸载数据盘
注意:
- 磁盘分区和格式化是高风险行为,请慎重操作。本文档描述如何处理一个新买的数据盘,如果您的数据盘上有数据,请务必对数据进行备份以避免可能的数据丢失。
- 服务器仅支持对 数据盘 进行分区,而不支持对 系统盘 进行分区。如果您强行使用第三方工具对系统盘进行分区操作,可能引发未知风险,如系统崩溃、数据丢失等。
本文描述如何用一个新的数据盘创建一个单分区数据盘并挂载文件系统。
您还可以根据业务需要,对数据盘进行多分区配置。建议使用系统自带的工具进行分区操作。
在本示例中,我们用一个新的 20 GB 数据盘(设备名为 /dev/xvdb)创建一个单分区数据盘并挂载一个 ext3 文件系统。使用的实例是 I/O 优化实例,操作系统为 CentOS 7.1。
运行
fdisk -l命令查看实例是否有数据盘。如果执行命令后,没有发现 /dev/vdb,表示您的实例没有数据盘,无需格式化数据盘。如果您的数据盘显示的是 dev/xvd?,表示您使用的是非 I/O 优化实例。
其中 ? 是 a−z 的任一个字母。创建一个单分区数据盘,依次执行以下命令:
运行
fdisk /dev/vdb:对数据盘进行分区。输入
n并按回车键:创建一个新分区。输入
p并按回车键:选择主分区。因为创建的是一个单分区数据盘,所以只需要创建主分区。如果要创建 4 个以上的分区,您应该创建至少一个扩展分区,即选择
e。输入分区编号并按回车键。因为这里仅创建一个分区,可以输入 1。
输入第一个可用的扇区编号:按回车键采用默认值 1。
输入最后一个扇区编号:因为这里仅创建一个分区,所以按回车键采用默认值。
输入
wq并按回车键,开始分区。[root@iXXXXXXX ~]# fdisk /dev/dbDevice contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabelBuilding a new DOS disklabel with disk identifier 0x5f46a8a2.Changes will remain in memory only, until you decide to write them.After that, of course, the previous content won't be recoverable.Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)WARNING: DOS-compatible mode is deprecated. It's strongly recommended toswitch off the mode (command 'c') and change display units tosectors (command 'u').Command (m for help): nCommand actione extendedp primary partition (1-4)pPartition number (1-4): 1First cylinder (1-41610, default 1): 1Last cylinder, +cylinders or +size{K,M,G} (1-41610, default 41610):Using default value 41610Command (m for help): wqThe partition table has been altered!Calling ioctl() to re-read partition table.Syncing disks.
查看新的分区:运行命令
fdisk -l。如果出现以下信息,说明已经成功创建了新分区 /dev/vdb1。[root@iXXXXXXX ~]# fdisk -lDisk /dev/vda: 42.9 GB, 42949672960 bytes255 heads, 63 sectors/track, 5221 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisk identifier: 0x00053156Device Boot Start End Blocks Id System/dev/vda1 * 1 5222 41942016 83 LinuxDisk /dev/vdb: 21.5 GB, 21474836480 bytes16 heads, 63 sectors/track, 41610 cylindersUnits = cylinders of 1008 * 512 = 516096 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisk identifier: 0x5f46a8a2Device Boot Start End Blocks Id System/dev/vdb1 1 41610 20971408+ 83 Linux
在新分区上创建一个文件系统:运行命令
mkfs.ext3 /dev/vdb1。本示例要创建一个 ext3 文件系统。您也可以根据自己的需要,选择创建其他文件系统,例如,如果需要在 Linux、Windows 和 Mac 系统之间共享文件,您可以使用
mkfs.vfat创建 VFAT 文件系统。创建文件系统所需时间取决于数据盘大小。
[root@iXXXXXXX ~]# mkfs.ext3 /dev/vdb1mke2fs 1.41.12 (17-May-2010)Filesystem label=OS type: LinuxBlock size=4096 (log=2)Fragment size=4096 (log=2)Stride=0 blocks, Stripe width=0 blocks1310720 inodes, 5242852 blocks262142 blocks (5.00%) reserved for the super userFirst data block=0Maximum filesystem blocks=4294967296160 block groups32768 blocks per group, 32768 fragments per group8192 inodes per groupSuperblock backups stored on blocks:32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,4096000Writing inode tables: doneCreating journal (32768 blocks): doneWriting superblocks and filesystem accounting information: doneThis filesystem will be automatically checked every 37 mounts or180 days, whichever comes first. Use tune2fs -c or -i to override.
(建议)备份 etc/fstab:运行命令
cp /etc/fstab /etc/fstab.bak。向 /etc/fstab 写入新分区信息:运行命令
echo /dev/vdb1 /mnt ext3 defaults 0 0 >> /etc/fstab。注意:Ubuntu 12.04 不支持 barrier,所以对该系统正确的命令是:
echo '/dev/vdb1 /mnt ext3 barrier=0 0 0' >> /etc/fstab。如果需要把数据盘单独挂载到某个文件夹,比如单独用来存放网页,请将以上命令 /mnt 替换成所需的挂载点路径。
查看 /etc/fstab 中的新分区信息:运行命令
cat /etc/fstab。[root@iXXXXXXX ~]# cat /etc/fstab## /etc/fstab# Created by anaconda on Thu Feb 23 07:28:22 2017## Accessible filesystems, by reference, are maintained under '/dev/disk'# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info#UUID=3d083579-f5d9-4df5-9347-8d27925805d4 / ext4 defaults 1 1tmpfs /dev/shm tmpfs defaults 0 0devpts /dev/pts devpts gid=5,mode=620 0 0sysfs /sys sysfs defaults 0 0proc /proc proc defaults 0 0/dev/vdb1 /mnt ext3 defaults 0 0
挂载文件系统:运行命令
mount /dev/vdb1 /mnt。查看目前磁盘空间和使用情况:运行命令
df -h。如果出现新建文件系统的信息,说明挂载成功,可以使用新的文件系统了。挂载操作完成后,不需要重启实例即可开始使用新的文件系统。
[root@iXXXXXXX ~]# mount /dev/vdb1 /mnt[root@iXXXXXXX ~]# df -hFilesystem Size Used Avail Use% Mounted on/dev/vda1 40G 6.6G 31G 18% /tmpfs 499M 0 499M 0% /dev/shm/dev/vdb1 20G 173M 19G 1% /mnt- 最后说下卸载磁盘,上面我们已经初始化和挂载数据盘,卸载就比较简单了。
- 查询下挂载数据盘名:df -h
- 使用umount /dev/vdb命令即可将上面挂载的硬盘卸载。
- 在卸载过程中如果出现:umount: /mut: device is busy.说明是你的工作目录正处于这个磁盘的某个目录下,解决方式就是切换到别的磁盘中,比如: cd /root这样就可以卸载成功了。
- 卸载后如果想重新挂载到别的目录,只需要:mount /dev/vdb1 /var/lib/docker 即可挂载成功(本人亲测重挂后数据不会丢失,但为了安全起见建议还是备份下数据再重新挂载)。
Linux格式化、挂载及卸载数据盘的更多相关文章
- Linux 系统挂载阿里云数据盘
适用系统:Linux(Redhat , CentOS,Debian,Ubuntu) * Linux的云服务器数据盘未做分区和格式化,可以根据以下步骤进行分区以及格式化操作. 下面的操作将会把数据盘划 ...
- 在linux下挂载、卸载U盘
首先你得保证你的U盘的格式是fat格式. 先进入/mnt/目录新建一个usb目录 cd /mnt/ mkidr usb 先fdisk -l,然后插上U盘,fdisk -l 查看是否有新的硬盘添加上来了 ...
- Linux 挂载和卸载U盘
一般的U盘挂载方法: mount [-fnrsvw] [-t vfstype] [-o options] device dir 参数:device表示要挂载的设备,dir表示挂载点 -t 指定设备的 ...
- 【Linux】扩展阿里云数据盘分区和文件系统
扩容云盘只是扩大存储容量,不会扩容文件系统 一.准备工作 在扩展数据盘扩展分区和文件系统前,请提前完成以下工作. 创建快照以备份数据,防止操作失误导致数据丢失. 通过ECS控制台或者API扩容云盘容量 ...
- Linux系统下常见的数据盘分区丢失的问题以及对应的处理方法
在修复数据前,您必须先对分区丢失的数据盘创建快照,在快照创建完成后再尝试修复.如果在修复过程中出现问题,您可以通过快照回滚将数据盘还原到修复之前的状态. 前提条件 在修复数据前,您必须先对分区丢失的数 ...
- 树莓派挂载和卸载U盘或移动硬盘
通常我们在 /mnt 或 /media 目录下新建一个目录udisk作为挂载点 sudo mkdir /mnt/udisk 1.手动挂载: 挂载命令: sudo mount -o uid=pi,gid ...
- [求助]linux同一目录可否挂载多个数据盘?
https://bbs.aliyun.com/read/281222.html?pos=20
- 攻城狮在路上(叁)Linux(二十二)--- linux磁盘挂载与卸载 mount umount
挂载就是将文件系统与目录结合的操作.挂载点就是目录,该目录就是进入分区或文件系统的入口. 一.挂载前的注意事项: 1.单一文件系统不应该被重复挂载在不同的挂载点中. 2.单一目录不应该重复挂载多个文件 ...
- linux mount挂载设备(u盘,光盘,iso等 )使用说明
对于新手学习,mount 命令,一定会有很多疑问.其实我想疑问来源更多的是对linux系统本身特殊性了解问题. linux是基于文件系统,所有的设备都会对应于:/dev/下面的设备.如: [cheng ...
随机推荐
- java @Override 报错解决
有时候Java的Eclipse工程换一台电脑后编译总是@override报错,把@override去掉就好了,但不能从根本上解决问题,因为有时候有@override的地方超级多. 这是jdk的问题,@ ...
- Linux 安装zookeeper
分享到: 1.下载zokeeper 1.1 官网下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/ 1.2 链接:https:/ ...
- ECMA Script 6_数组的扩展_扩展运算符
1. 扩展运算符 内部调用的是数据结构的 Iterator 接口, 因此只要具有 Iterator 接口的对象,都可以使用扩展运算符 ... 如 map,,,, [...arr] 扩展运算符(spre ...
- js高级4
1.Date 类 getDate()返回一个月中的某一天 1-31 getDay() 返回一周中的某一天0-6 getFullyear()返回四位数的年份 getMonth()返回月份 比实际情况小 ...
- SQL2005EXPress自动备份
STEP1:在数据库服务器的master表中创建存储过程sp_BackupDatabase 代码如下 USE [master] GO /****** 对象: StoredProcedure [dbo] ...
- Android自定义控件之日历控件
标签: android 控件 日历 应用 需求 2015年09月26日 22:21:54 25062人阅读 评论(109) 收藏 举报 分类: Android自定义控件系列(7) 版权声明:转载注 ...
- vins-mono中的imu参数设置
na:加速度计的测量噪声 nw:陀螺仪的测量噪声 nba: randow walk noise随机游走噪声 nbw:randow walk noise随机游走噪声 ba:加速度计的偏差 bw:陀螺仪的 ...
- Linux下查找某一文件常用的方式
当我们需要在ubuntu中找到之前的某一个文件,该用什么方式呢?用以下命令你就可以快速定位: find / -name "pycharm.sh" 用find查找这个命令,确定查找范 ...
- eclipse启动报错
我的是win64位系统,eclipse,jdk1.8 64位 原因:网上说是jdk和eclipse的版本不一致导致的(32位jdk64位eclipse,或者相反): 解决过程: 安装了jdk1. ...
- PDM:Training Models of Shape from Sets of Examples
这篇论文介绍了一种创建柔性形状模型(Flexible Shape Models)的方法--点分布模型(Point Distribution Model).该方法使用一系列标记点来表示形状,重要的是根据 ...