vmware虚拟机ubuntu系统扩容

vmware虚拟机ubuntu系统扩容

标签: 旭 linux


1.扩容原因

一开始装虚拟机时按照推荐设置了20g虚拟硬盘,结果半个月不到就被内存和储存空间整的很头疼,于是开始尝试给虚拟系统扩容。

2.扩容步骤

2.1.硬盘

用vmware给硬盘扩容还是很方便的,在虚拟机关闭的状态下选择硬盘->扩展,输入需要的大小就可以了。

2.2.内存

同样在虚拟机关闭的情况下选进行内存重新设置,扩容的内存将在下一次虚拟机开机时生效。

2.2.ubuntu系统

光扩展了硬盘当然还不够,我们需要把扩展的空间加入系统盘才能把这些磁盘空间利用起来,这里使用GParted工具。

2.2.1.安装GParted

打开虚拟机,用终端apt-get安装GParted工具。

apt-get install gparted

2.2.2.重置主分区大小

1) 打开GParted软件
2) 删除extend分区,扩展sda1大小
3) 新建extend逻辑分区(将其设为swap分区需要的大小)
4) 保存分区配置(点GParted软件上的绿色的小勾)

2.2.3.恢复swap交换分区

然后为了正常使用交换分区(之前那个在重置主分区大小时被连同extend分区删除了),我们要在extend分区下新建一个swap分区并将其挂载。
首先我们可用以下命令查看虚拟机磁盘分区情况:

$ sudo fdisk -l
Disk /dev/sda: 40 GiB, 42949672960 bytes, 83886080 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xcf6b045d

设备       启动    Start   末尾   扇区 Size Id 类型
/dev/sda1  *        2048 79693823 79691776  38G 83 Linux
/dev/sda2       79693824 83886079  4192256   2G  5 扩展

可以看到现在/dev/sda有40G硬盘容量,用GParted工具给sda1扩容后/dev/sda1从之前的19G->38G,新建的extend(/dev/sda2)分区2G,接下来我们把sda2分区重新设置为交换分区。

$ sudo fdisk /dev/sda

Welcome to fdisk (util-linux 2.27.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

在命令行输入’n’,按照提示默认设置。


命令(输入 m 获取帮助): n
All space for primary partitions is in use.
Adding logical partition 5
First sector (79695872-83886079, default 79695872): 
Last sector, +sectors or +size{K,M,G,T,P} (79695872-83886079, default 83886079): 

Created a new partition 5 of type 'Linux' and of size 2 GiB.

以上成功在sda2盘空间中创建了一个新的逻辑分区sda5,接下来输入’t’对这个分区类型进行重置。

命令(输入 m 获取帮助): t
分区号 (1,2,5, default 5): 

分区号改不改都无所谓,只要不和已有的区号重名就行,重要的是分区类型,下面用命令’L’列出所有类型id和对应的类型内容。

Partition type (type L to list all types): L

 0  空              24  NEC DOS         81  Minix / 旧 Linu bf  Solaris        
 1  FAT12           27  Hidden NTFS Win 82  Linux 交换 / So c1  DRDOS/sec (FAT-
 2  XENIX root      39  Plan 9          83  Linux           c4  DRDOS/sec (FAT-
 3  XENIX usr       3c  PartitionMagic  84  OS/2 hidden or  c6  DRDOS/sec (FAT-
 4  FAT16 <32M      40  Venix 80286     85  Linux 扩展      c7  Syrinx         
 5  扩展            41  PPC PReP Boot   86  NTFS 卷集       da  非文件系统数据 
 6  FAT16           42  SFS             87  NTFS 卷集       db  CP/M / CTOS / .
 7  HPFS/NTFS/exFAT 4d  QNX4.x          88  Linux 纯文本    de  Dell 工具      
 8  AIX             4e  QNX4.x 第2部分  8e  Linux LVM       df  BootIt         
 9  AIX 可启动      4f  QNX4.x 第3部分  93  Amoeba          e1  DOS 访问       
 a  OS/2 启动管理器 50  OnTrack DM      94  Amoeba BBT      e3  DOS R/O        
 b  W95 FAT32       51  OnTrack DM6 Aux 9f  BSD/OS          e4  SpeedStor      
 c  W95 FAT32 (LBA) 52  CP/M            a0  IBM Thinkpad 休 ea  Rufus alignment
 e  W95 FAT16 (LBA) 53  OnTrack DM6 Aux a5  FreeBSD         eb  BeOS fs        
 f  W95 扩展 (LBA)  54  OnTrackDM6      a6  OpenBSD         ee  GPT            
10  OPUS            55  EZ-Drive        a7  NeXTSTEP        ef  EFI (FAT-12/16/
11  隐藏的 FAT12    56  Golden Bow      a8  Darwin UFS      f0  Linux/PA-RISC  
12  Compaq 诊断     5c  Priam Edisk     a9  NetBSD          f1  SpeedStor      
14  隐藏的 FAT16 <3 61  SpeedStor       ab  Darwin 启动     f4  SpeedStor      
16  隐藏的 FAT16    63  GNU HURD or Sys af  HFS / HFS+      f2  DOS 次要       
17  隐藏的 HPFS/NTF 64  Novell Netware  b7  BSDI fs         fb  VMware VMFS    
18  AST 智能睡眠    65  Novell Netware  b8  BSDI swap       fc  VMware VMKCORE 
1b  隐藏的 W95 FAT3 70  DiskSecure 多启 bb  Boot Wizard 隐  fd  Linux raid 自动
1c  隐藏的 W95 FAT3 75  PC/IX           bc  Acronis FAT32 L fe  LANstep        
1e  隐藏的 W95 FAT1 80  旧 Minix        be  Solaris 启动    ff  BBT 

根据需要将分区类型设为’82’(Linux 交换)

Partition type (type L to list all types): 82

Changed type of partition 'Linux' to 'Linux swap / Solaris'.

将刚才重置的内容保存’w’

命令(输入 m 获取帮助): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Re-reading the partition table failed.: 设备或资源忙

The kernel still uses the old table. The new table will be used at the next reboot or after you run partprobe(8) or kpartx(8).

以上对硬盘进行了分区,下面告知内核当前磁盘的分区情况

$ sudo partx -a /dev/sda #告知硬盘分区情况
$ sudo partprobe /dev/sda #重读分区表

检查目前的磁盘分区情况

$ sudo fdisk -l /dev/sda
Disk /dev/sda: 40 GiB, 42949672960 bytes, 83886080 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xcf6b045d

设备       启动    Start   末尾   扇区 Size Id 类型
/dev/sda1  *        2048 79693823 79691776  38G 83 Linux
/dev/sda2       79693824 83886079  4192256   2G  5 扩展
/dev/sda5       79695872 83886079  4190208   2G 82 Linux 交换 / Solaris

将sda5分区置为swap分区

$ sudo mkswap /dev/sda5
Setting up swapspace version 1, size = 2 GiB (2145382400 bytes)
无标签, UUID=4092d40b-7f97-4790-90bb-33a2bc4bc4c9

下面我们需要手动修改/etc/fstab内容才能让系统开机自动识别新设的swap分区,键入以下命令:

$ sudo vim /etc/fstab

修改其中的swap分区信息

UUID=['此处输入mkswap获得的UUID号'] swap            swap    defaults              0       0

关闭所有swap,后重新开启

$ sudo swapoff -a
$ sudo swapon -a

至此配置完成,输入以下命令检查swap分区情况

$ swapon -s

重启虚拟机,开启后再次检查swap分区挂载情况,完成!(终于搞定了让我歇会)
blackcat

3.补充 partprobe 和 partx 的用法

此处参考博客链接

3.1. partprobe

用于重读分区表,当出现删除文件后,出现仍然占用空间。可以partprobe在不重启的情况下重读分区。将磁盘分区表变化信息通知内核,请求操作系统重新加载分区表。
-d 不更新内核
-s 显示磁盘分区汇总信息
-h 显示帮助信息
-v 显示版本信息
eg:

$ partprobe /dev/sdb

当磁盘分区信息完整时,手动删除/dev/disk/by-id目录下对应的wwn链接文件,执行partprobe操作,系统会自己创建删除的链接文件。通过udevadmin monitor命令可以监控到相关信息。

3.2.partx

用来告诉内核当前磁盘的分区情况
语法
partx [-a|-d|-l] [–type TYPE] [–nr M-N] [partition] disk

对一个磁盘或者分区表类型,尝试解析分区表。可以增加或删除分区。但不是fdisk,增加,删除分区对磁盘造成改变,只是告诉内核当前磁盘的分区情况。

选项
  -a 增加制定的分区或读磁盘新增的分区
  -d 删除制定或所有的分区
  -l 列出分区
  --type 指定分区类型。dos,bsd,solaris,unix,或者gpt
  --nr M-N 指定分区范围
虚拟机可能出现以下错误:

$ partx -a /dev/sdb
BLKPG: Device or resource busy
error adding partition 1

将命令修改后不再有上面的提示

$ partx -a /dev/sdb1 /dev/sdb
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值