阿里云磁盘无损扩容&Windows,Linux无损扩容分区大小

简介:
+关注继续查看

曾经何时,阿里云升级磁盘只能购买一块新的磁盘,这样老的磁盘大小不够的时候,只能被丢弃然后购买一块更大的磁盘。独立云磁盘推出后虽然可以随时释放老的磁盘了,但是数据迁移也是个大问题。终于,阿里云推出磁盘扩容功能,今天测试了一把无损扩容磁盘分区,记录下来分享大家。

由于涉及到磁盘操作,强烈建议操前创建一个自定义快照做个备份,数据无价,一个操作毁一生~~

如下,是一个7G的非LVM分区(LVM磁盘的扩容,只需要扩容物理磁盘,通过vgchange -a n vgname取消vg激活状态,通过fdisk等工具将新扩容的部分创建为一个新的分区,然后通过vgchange -ay vgname激活vg,将新的分区加入到vg中即可。)

1

从控制台扩容到8G,然后从控制台重启VM使新的磁盘尺寸生效(测试独立云磁盘,从控制台卸载后重新挂载也可生效,对无法重启的服务器可以用这招)

2

重启后查看,磁盘已经8G了,但是原来的/dev/xvdc1分区依然是7G

2

为了测试是否是真的无损,我们先在这个7G的分区下,创建一个内容为test的文件

1 [root@AY140627175005145240Z ~]# cd /mnt/
2 [root@AY140627175005145240Z mnt]# echo "test">>test.txt

保险起见,操作前,先对这个分区做一次检测:

1 [root@AY140627175005145240Z ~]# fsck -f /dev/xvdc1

完成后,进行最重要的一步:“删除现在的分区,重新分区”
按d删除现在的分区1,注意:删除后千万不要按w保存!直接按n创建新的分区,然后从原有的柱面开始,一直分到最后的尺寸(默认值两次回车即可,如果之前的分区不是从第一柱面开始,则需要记录之前分区的起始柱面),新的分区操作完毕后,按w保存。

1 [root@AY140627175005145240Z ~]# fdisk /dev/xvdc < <EOF
2 d
3 n
4 p
5 1
6  
7 w
8 EOF

操作完毕后,重新通过fsck -f /dev/xvdc1检测一下磁盘
然后通过resize2fs重新定义分区大小

1 [root@AY140627175005145240Z ~]# resize2fs /dev/xvdc1
2 resize2fs 1.41.12 (17-May-2010)
3 Resizing the filesystem on /dev/xvdc1 to 2096474 (4k) blocks.
4 The filesystem on /dev/xvdc1 is now 2096474 blocks long.

重新挂载分区,查看分区已经变成8G了

1 [root@AY140627175005145240Z ~]# mount /dev/xvdc1 /mnt/
2 [root@AY140627175005145240Z ~]# df -h
3 Filesystem Size Used Avail Use% Mounted on
4 /dev/xvdb1 20G 7.5G 12G 41% /
5 tmpfs 938M 0 938M 0% /dev/shm
6 /dev/xvdb1 20G 7.5G 12G 41% /alidata
7 /dev/xvdc1 7.9G 144M 7.4G 2% /mnt

查看之前分区里面的文件,依然完好

1 [root@AY140627175005145240Z ~]#
2 [root@AY140627175005145240Z ~]# cd /mnt/;cat test.txt
3 test

 

如下,是一个6G的小磁盘1
扩容到7G

2
控制台重启后新的磁盘容量生效

3

重启后如果扩容出来的分区变成了RAW的分区,删除即可。然后在老的磁盘分区上右键,选择扩展分区(扩展卷),选择多出来的1G空间后下一步确认。

4

这时候会提示,是否将磁盘转换为动态磁盘,这里选择是,不会影响数据。

5

完成后,原来的6G小分区,就变成了7G大分区了~~6

 

目录
相关文章
|
3天前
|
安全 Linux 数据安全/隐私保护
有什么事让你觉得在Linux上顺理成章,换到Windows上就令你费解?
有什么事让你觉得在Linux上顺理成章,换到Windows上就令你费解?
23 0
|
3天前
|
Linux API 图形学
sdl库配置(linux/windows)
sdl库配置(linux/windows)
10 0
|
17天前
|
NoSQL Linux Redis
【Redis从头学 -1】17张图带你学会Redis多环境(Linux、Windows)安装与配置
【Redis从头学 -1】17张图带你学会Redis多环境(Linux、Windows)安装与配置
29 0
|
20天前
|
Linux 开发工具 索引
安装Windows和Linux双系统需要注意的一些问题
安装Windows和Linux双系统需要注意的一些问题
30 0
|
27天前
|
NoSQL Linux Redis
redis安装(Windows+Linux)
redis安装(Windows+Linux)
33 0
|
1月前
|
Linux 数据处理 开发者
R语言如何快速安装R包?常见方法与报错解决方案汇总,适用于Windows、Mac、Linux多平台
R语言如何快速安装R包?常见方法与报错解决方案汇总,适用于Windows、Mac、Linux多平台
|
1月前
|
编解码 Linux PHP
windows和linux包含日志文件和环境变量getshell
windows和linux包含日志文件和环境变量getshell
33 1
|
1月前
|
Linux iOS开发 MacOS
安装Python 在 Windows、macOS 和 Linux上的详细步骤
安装Python 在 Windows、macOS 和 Linux上的详细步骤
51 2
|
1月前
|
安全 Linux 网络安全
快速学会sftp的 get和put命令,将linux上的linux.txt推送到windows上
sftp是Secure File Transfer Protocol的缩写,安全文件传送协议。可以为传输文件提供一种安全的网络的加密方法。sftp 与 ftp 有着几乎一样的语法和功能。SFTP 为 SSH的其中一部分,是一种传输档案至 Blogger 伺服器的安全方式。其实在SSH软件包中,已经包含了一个叫作SFTP(Secure File Transfer Protocol)的安全文件信息传输子系统,SFTP本身没有单独的守护进程,它必须使用sshd守护进程(端口号默认是22)来完成相应的连接和答复操作,所以从某种意义上来说,SFTP并不像一个服务器程序,而更像是一个客户端程序。
52 0
|
1月前
|
Linux 网络安全 开发工具
windows ssh Linux
windows ssh Linux
相关产品
云迁移中心
推荐文章
更多