VMware下ubuntu扩展磁盘空间的方法

 更新时间:2017年02月28日 15:21:43   作者:Quietly_water  
这篇文章主要介绍了VMware下ubuntu扩展磁盘空间的方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下

近日由于虚拟机下安装软件过多,时不时弹出磁盘空间不足的问题。查找了很多资料,都没有很好的解决办法。

朋友发来一个链接,还是老外有良心。翻译出来放在这里,根据我的实际需求进行了操作,达到了预期目的。

以防万一,在操作之前将虚拟机进行了备份。

         由于安装时没有自己进行分区,磁盘大小也使用了默认的20G。后来发现果然悲剧。

使用df -h命令查看具体使用情况

@ubuntu:~$ df -h 
Filesystem   Size Used Avail Use% Mounted on 
/dev/sda1    19G  17G 1020M 95% / 
none      4.0K   0 4.0K  0% /sys/fs/cgroup 
udev      745M 4.0K 745M  1% /dev 
tmpfs      151M 1.3M 150M  1% /run 
none      5.0M   0 5.0M  0% /run/lock 
none      755M 220K 755M  1% /run/shm 
none      100M  48K 100M  1% /run/user 

使用root权限 fdisk -l查看

在虚拟机的设置——>硬盘——>扩展 选项,选择需要扩展到的容量,这里我是从20G扩展到40G。

设置完成后发现依然无法使用,而是在扩展分区里。

Disk /dev/sda: 42.9 GB, 42949672960 bytes 
255 heads, 63 sectors/track, 5221 cylinders, total 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 
Disk identifier: 0x000ea50f 
  Device Boot   Start     End   Blocks  Id System 
/dev/sda1  *    2048  39845887  19921920  83 Linux 
/dev/sda2    39847934  41940991   1046529  5 Extended 
/dev/sda5    39847936  41940991   1046528  82 Linux swap / Solaris 

具体思路是将分区先删除,然后再重新进行分区。注意,这里使用fdisk -l查看的信息建议记录下来,后面进行重新分区时会使用到。

使用free -m命令查看

bay@ubuntu:~$ free -m 
       total    used    free   shared  buffers   cached 
Mem:     1508    1065    443     5     74    419 
-/+ buffers/cache:    572    936 
Swap:     1021     0    1021 

我们可以看到交换分区的大小,先将交换分区关掉使用命令

root@ubuntu:# swapoff -a 
root@ubuntu:# free -m 
       total    used    free   shared  buffers   cached 
Mem:     1508    1075    433     5     73    419 
-/+ buffers/cache:    581    926 
Swap:   0     0     0 

这时候可以看到swap的分区大小已经为0了。

接下来的步骤就是删除掉  /dev/sda1  和 /dev/sda2。使用fdisk /dev/sda删除分区

root@ubuntu:# fdisk /dev/sda 
Command (m for help): p 
Disk /dev/sda: 42.9 GB, 42949672960 bytes 
255 heads, 63 sectors/track, 5221 cylinders, total 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 
Disk identifier: 0x000ea50f 
  Device Boot   Start     End   Blocks  Id System 
/dev/sda1  *    2048  39845887  19921920  83 Linux 
/dev/sda2    39847934  41940991   1046529  5 Extended 
/dev/sda5    39847936  41940991   1046528  82 Linux swap / Solaris 
Command (m for help): d 
Partition number (1-5): 1 
Command (m for help): d 
Partition number (1-5): 2 
Command (m for help): p 
Disk /dev/sda: 42.9 GB, 42949672960 bytes 
255 heads, 63 sectors/track, 5221 cylinders, total 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 
Disk identifier: 0x000ea50f 
  Device Boot   Start     End   Blocks  Id System 

删除旧的分区之后,就开始进行创建新分区了,注意这时候让之前保存的信息就派上用场了。

Command (m for help): n 
Partition type: 
  p  primary (0 primary, 0 extended, 4 free) 
  e  extended 
Select (default p): p 
Partition number (1-4, default 1): 1 
First sector (2048-83886079, default 2048):  
Using default value 2048 
Last sector, +sectors or +size{K,M,G} (2048-83886079, default 83886079): 82869552 

注意这是时候可能会有人疑惑,这个大小该如何设置。

这个大小是总的大小减去Swap的大小:83886080 - 1046528 = 82839552。这里的1046528 就是Swap的大小。

接着将分区的事情做完:

Command (m for help): n 
Partition type: 
  p  primary (1 primary, 0 extended, 3 free) 
  e  extended 
Select (default p): p 
Partition number (1-4, default 2): 2 
First sector (82839553-83886079, default 82839553):  
Using default value 82839553 
Last sector, +sectors or +size{K,M,G} (82839553-83886079, default 83886079):  
Using default value 83886079 
Command (m for help): p 
Disk /dev/sda: 42.9 GB, 42949672960 bytes 
255 heads, 63 sectors/track, 5221 cylinders, total 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 
Disk identifier: 0x000ea50f 
  Device Boot   Start     End   Blocks  Id System 
/dev/sda1      2048  82839552  41418752+ 83 Linux 
/dev/sda2    82839553  83886079   523263+ 83 Linux 

这个时候分区大小是正确的了,但是ID还是同一个值。在这里我们将交换分区的ID修改为82.

Command (m for help): t 
Partition number (1-4): 2 
Hex code (type L to list codes): 82 
Changed system type of partition 2 to 82 (Linux swap / Solaris) 

使用w进行保存

Command (m for help): w 
The partition table has been altered! 
Calling ioctl() to re-read partition table. 
WARNING: Re-reading the partition table failed with error 16: Device or resource busy. 
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) 
Syncing disks. 

将虚拟机进行重启。

交换分区使用UUID进行挂载。在创建新的分区之后,UUID将会不匹配,在reboot之后将没有交换分区可以使用。这里有两种方式进行处理

1)在 /etc/fstab 中使用新的UUID

2)在新的分区上使用旧的UUID。这里使用第二种方法。

查看UUID:

root@ubuntu:/home/bay# awk '/swap/ { print $1 }' /etc/fstab 
# 
UUID=990ae69c-2bbe-425f-bb8f-91200f70c9b9 
[html] view plain copy
root@ubuntu:# swapoff -a 
root@ubuntu:# free -m 
       total    used    free   shared  buffers   cached 
Mem:     1508    1171    337     6    191    424 
-/+ buffers/cache:    555    953 
Swap:      0     0     0 
root@ubuntu:# dd if=/dev/zero of=/dev/sda2 
dd: writing to ‘/dev/sda2': No space left on device 
1046528+0 records in 
1046527+0 records out 
535821824 bytes (536 MB) copied, 1.89975 s, 282 MB/s 
root@ubuntu:# mkswap -U 990ae69c-2bbe-425f-bb8f-91200f70c9b9 /dev/sda2 
Setting up swapspace version 1, size = 523256 KiB 
no label, UUID=990ae69c-2bbe-425f-bb8f-91200f70c9b9 
root@ubuntu:# swapon -a 
root@ubuntu:# free -m 
       total    used    free   shared  buffers   cached 
Mem:     1508    717    790     6     6    164 
-/+ buffers/cache:    546    961 
Swap:     510     0    510 
root@ubuntu:# df -h 
Filesystem   Size Used Avail Use% Mounted on 
/dev/sda1    19G  17G 1023M 95% / 
none      4.0K   0 4.0K  0% /sys/fs/cgroup 
udev      745M  12K 745M  1% /dev 
tmpfs      151M 1.3M 150M  1% /run 
none      5.0M   0 5.0M  0% /run/lock 
none      755M 152K 755M  1% /run/shm 
none      100M  48K 100M  1% /run/user 
root@ubuntu:# resize2fs /dev/sda1 
resize2fs 1.42.9 (4-Feb-2014) 
Filesystem at /dev/sda1 is mounted on /; on-line resizing required 
old_desc_blocks = 2, new_desc_blocks = 3 
The filesystem on /dev/sda1 is now 10354688 blocks long. 
root@ubuntu:# df -h 
Filesystem   Size Used Avail Use% Mounted on 
/dev/sda1    39G  17G  21G 45% / 
none      4.0K   0 4.0K  0% /sys/fs/cgroup 
udev      745M  12K 745M  1% /dev 
tmpfs      151M 1.3M 150M  1% /run 
none      5.0M   0 5.0M  0% /run/lock 
none      755M 152K 755M  1% /run/shm 
none      100M  48K 100M  1% /run/user 

dd命令仅仅是保证在分区开始的地方没有数据。

以上所述是小编给大家介绍的VMware下ubuntu扩展磁盘空间的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • 虚拟机网络配置(NAT、桥接、Hostonly)详解

    虚拟机网络配置(NAT、桥接、Hostonly)详解

    很多人安装虚拟机的时候,经常遇到不能上网的问题,而vmware有三种网络模式,对初学者来说也比较眼花聊乱,今天我就来基于虚拟机3种网络模式,帮大家普及下虚拟机的网络配置知识
    2017-02-02
  • VMWare安装Centos 6.9教程

    VMWare安装Centos 6.9教程

    这篇文章主要为大家详细介绍了VMWare安装Centos 6.9教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • VMware虚拟机开机黑屏的解决方法小结

    VMware虚拟机开机黑屏的解决方法小结

    在VMware中装了虚拟机,但是在启动后一直处于黑屏而无法进入系统,也没有报错提示,出现这种问题的主要原因是VMware软件跟本地网路规范有所冲突,解决办法也简单,重置一下网络规范就好了,具体的操作方法如下,需要的朋友可以参考下
    2024-09-09
  • 详解VMware12安装centOS8的配置图文教程(vm虚拟机安装centos8教程)

    详解VMware12安装centOS8的配置图文教程(vm虚拟机安装centos8教程)

    这篇文章主要介绍了VMware12安装centOS8配置图文教程(vm虚拟机安装centos8教程),本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-11-11
  • VMware虚拟机三种网络模式区别

    VMware虚拟机三种网络模式区别

     提到VMware大家就想起了虚拟机技术,虚拟机技术在最近的几年中得到了广泛的发展,一些大型网络服务商都开始采用虚拟机技术,不仅节省了投资成本,更节约了能源的消耗。
    2016-10-10
  • Vmware虚拟机安装Ubuntu 16.04 LTS(长期支持)版本+VMware tools安装的图文教程

    Vmware虚拟机安装Ubuntu 16.04 LTS(长期支持)版本+VMware tools安装的图文教程

    这篇文章主要介绍了Vmware虚拟机安装Ubuntu 16.04 LTS(长期支持)版本+VMware tools安装的图文教程,需要的朋友可以参考下
    2017-01-01
  • Vmware虚拟机设置主机端口映射方式

    Vmware虚拟机设置主机端口映射方式

    这篇文章主要介绍了Vmware虚拟机设置主机端口映射方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • VMWare VMNet 8的配置使用详解

    VMWare VMNet 8的配置使用详解

    这篇文章主要介绍了VMWare VMNet 8的配置使用详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-01-01
  • Vmware Station安装Arch Linux的详细流程

    Vmware Station安装Arch Linux的详细流程

    这篇文章主要介绍了Vmware Station安装Arch Linux的流程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-04-04
  • 教你如何在Mac上安装VMware Fusion和CentOS-7

    教你如何在Mac上安装VMware Fusion和CentOS-7

    这篇文章主要介绍了Mac上安装VMware Fusion和CentOS-7,其实安装过程很简单和安装其他mac软件一样,双击app文件就可以,本文分步骤给大家介绍的非常详细,需要的朋友可以参考下
    2022-01-01

最新评论