zoukankan      html  css  js  c++  java
  • 双系统Ubuntu分区扩容过程记录

    本人电脑上安装了Win10 + Ubuntu 12.04双系统。前段时间因为在Ubuntu上做项目要安装一个比较大的软件,导致Ubuntu根分区的空间不够了。于是,从硬盘又分出来一部分空间,分给Ubuntu。于是有了这篇Ubuntu扩容过程记录,也可以当作是一篇教程吧。


    1. 起因

    最近在做一个项目,有关KinectFusion算法,需要用到CUDA。但是在我的Ubuntu中安装CUDA的时候,提示根分区空间不足,无法完成安装。

    1. Not enough space on parition mounted at /.
    2. Need 3548872704 bytes.
    3. Disk space check has failed. Installation cannot continue.

    于是,开始着手对Ubuntu分区进行扩容。

    2. 扩容前后各分区状态

    在此次扩容前,我的整个硬盘上的各分区状态如下:

    (注:上图是在分区扩容前在Ubuntu系统中安装的GParted软件显示得到的。)

    其中可以看出,在整个硬盘的末尾有大约20G空间分配给了Ubuntu,并分成了几个分区,按顺序依次为:

    • /boot分区190M
    • swap分区(虚拟内存分区)3.81G
    • /分区(根分区)11.44G
    • /home分区4.55G

    (注:由于分区格式化需要占用一部分空间,因此上面显示的分区大小小于实际的分区大小)

    经过扩容操作,最后的Ubuntu分区状态如下:

    (注:上图以及以下各相似图片是在分区扩容过程中在Parted Magic启动盘中的GParted软件显示得到的。)

    其中可以看出,整个分配给Ubuntu的空间增加了15G,并且调整了个Ubuntu分区之间的顺序,各分区按顺序依次为:

    • /home分区9.55G(增加了5G)
    • /分区(根分区)21.26G(增加了10G)
    • /boot分区190M
    • swap分区(虚拟内存分区)4G

    PS:调整分区的顺序的原因是:

    1. /boot分区和swap分区一般不会需要扩容,也就是说以后一般不会变动,因此将其放到磁盘最后;
    2. /home分区和/分区今后可能会再次扩容,而扩充需要的空间是从前面的Windows分区压缩来的,所以放在靠近Windows分区的位置。

    3. 分区扩容操作步骤

    下面详细记录分区扩容操作步骤。

    (1) 制作Parted Magic启动盘

    Parted Magic是一个轻量的Linux发布版(可用来制作U盘启动盘),包含了许多可用于硬盘分区以及数据恢复的自由软件。

    参考:Parted Magic 分区魔术师 2015.11.15-dev版 BIOS,UEFI双启 —不再更新 - USB启动区 - 无忧启动论坛 - Powered by Discuz!

    下载地址:http://pan.baidu.com/s/1pJ6vlgR

    我下载的是镜像文件pmagic_2016_03_02.iso

    下载完成之后插入U盘,用UltraISO打开pmagic_2016_03_02.iso,然后点击菜单“启动”->“写入硬盘映像”,然后点击“写入”开始制作启动盘。

    制作完成之后拔出U盘即可。

    (2) 从U盘启动电脑

    将刚才的U盘插入电脑,然后将电脑重启,选择从U盘启动(具体操作依不同电脑型号有所区别,在此不赘述)。

    从U盘启动后会看到该启动盘系统的界面如下:

    (3) 打开GParted分区软件

    打开GParted分区软件,即双击桌面上的图标:

    (4) 调整分区顺序并扩容

    因为要调整分区顺序,所以先将/home分区复制到前面空余的未分配的磁盘部分,然后将/boot分区和swap分区移动到原来/home分区所在的位置。具体步骤如下:

    ① 将/home分区复制到前面空余的未分配的磁盘部分的最前端,并调整大小为9.55G;
    ② 删除原/home分区;
    ③ 将swap分区复制到原/home分区的最后端,并调整大小为4G;
    ④ 将/boot分区复制到原/home分区除去现swap分区后剩余部分的最后端,也就是紧挨着现swap分区,大小不变(注意:此步需将Free space sollowing设为1M,否则会出错,但忘记当时出了什么错了);
    ⑤ 删除原/boot分区和原swap分区;
    ⑥ 调整/分区大小,使其充满所有剩余空间。

    (5) 修复启动

    参考:GParted – Frequently Asked Questions
    Fixing Operating System Boot Problems

    此时分区扩容已经完成,但是如果此时重启,会发现系统无法正常启动,因为分区变化导致引导程序出错了。

    因此还需修复启动。

    还是在启动盘系统中,打开终端,即点击下方任务栏中的图标:

    执行以下命令(以root身份):

    1. mkdir /tmp/mydir
    2. mount /dev/sda8 /tmp/mydir (注:其中的`/dev/sda8`为我的`/`分区标识,根据自己情况修改为自己的`/`分区标识)
    3. mount /dev/sda11 /tmp/mydir/boot (注:同上,`/dev/sda11``/boot`分区标识)
    4. mount --bind /dev /tmp/mydir/dev
    5. mount --bind /proc /tmp/mydir/proc
    6. mount --bind /sys /tmp/mydir/sys
    7. chroot /tmp/mydir (此步可能输出一些信息,可以无视)
    8. grub-install /dev/sda (注:其中的`/dev/sda``/`分区所在硬盘的标识)
    9. exit

    下面是我执行上面命令的截图:

    (6) 重启系统

    重启系统,搞定!





  • 相关阅读:
    tomcat使用入门
    IDEA2020 创建springboot项目提示程序包org.springframework.boot不存在 问题
    jvm内存泄露
    tomcat 上设置可以直接访问的图片路径
    服务器上安装mysql后开启远程连接
    图的遍历,BFS和DFS的Java实现
    并查集
    深度优先搜索实现拓扑排序(leetcode210课程表)
    在Java中怎么实现字符'a'转成字符'b'
    MyBatis底层原理
  • 原文地址:https://www.cnblogs.com/jloveu/p/Ubuntu-partition-expansion-record.html
Copyright © 2011-2022 走看看