双系统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) 重启系统

重启系统,搞定!



来自为知笔记(Wiz)


转载于:https://www.cnblogs.com/jloveu/p/Ubuntu-partition-expansion-record.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/372231.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用MongoDB的MapReduce

MapReduce是Google在2004年推出的一种软件框架,用于支持对计算机集群中的大数据集进行分布式计算。 您可以从此处阅读有关MapReduce的信息 。 MongoDB是用C 编写的面向开源文档的NoSQL数据库系统。 您可以从此处阅读有关MongoDB的更多信息。 1.安装MangoDB。 请遵…

java epson指令集_EPSON机械手 SPEL+语言指令集

下面是全部指令的简明列表,放在这里方便参考。之后重要的指令,勇哥要拿出来单独学习。系统管理相关命令Reset 将控制器重置为初始状态。SysConfig 显示系统设置参数。SysErr 返回最新的错误状态或警告状态。Date 显示日期。Time 显示时间。Date$ 以字符串…

1、关于action中解决跨域请求问题:

(1)、action中使用ajax传值时HttpServletRequest request ServletActionContext.getRequest(); String origin request.getHeader("Origin"); HttpServletResponse response ServletActionContext.getResponse(); response.setContentType(…

dom contains 包含关系

<!DOCTYPE html><html lang"en"><head> <meta charset"UTF-8"> <title>contains</title></head><body> <div id"p-node"> <div id"c-node">子节点内容&…

ANTLR:入门

这篇文章使您了解ANTLR的基础知识。 以前&#xff0c;我们已经了解了如何将ANTLR设置为外部工具。 在这里&#xff1a; ANTLR外部工具 :) 所以&#xff0c;我们开始…。 什么是ANTLR&#xff1f; •另一个语言识别工具&#xff0c;是一种语言工具&#xff0c;它提供了一个框架…

安装JAVA8要登录_JDK8的安装及环境配置

原文链接:https://www.cnblogs.com/chenxj/p/10137221.html1、下载JDK&#xff1b;b、或百度网盘&#xff1a;链接&#xff1a;https://pan.baidu.com/s/1S14y4_3eN9G6oOVfhmbe_w提取码&#xff1a;0cf62、双击安装程序&#xff0c;点击下一步安装目录若不修改&#xff0c;可直…

【学习笔记】JavaScript基础(一)

【学习过程遇到疑问和延伸阅读】 1.document.write()的深入理解write()方法可向文档写入HTML表达式或JavaScript代码。可使用document.write()向输出流写文本或者HTML 延伸阅读《js中document.write的那点事》http://www.cnblogs.com/dh616854836/articles/2140349.html 2.编程…

js操纵cookie技术

<% page language"java" import"java.util.*" pageEncoding"UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <title>图片浏览</title> <script typ…

java none怎么用tomcat_使用tomcat做java中间件

tomcat是一个老牌的中间件了&#xff0c;从我从业到现在时不时都会遇到它&#xff0c;方便、灵活、性能一般是我对它的使用经验总结。配置注意 &#xff1a; tomcat 7 和 6 有很大差别&#xff0c;server.xml catalina.sh 配置文件不能通用设置tomcat7 使用jdk1.7export JAVA_H…

早期访问中带有NetBeans的Oracle公共云Java服务

谁期望发生这种情况&#xff1a;Oracle正在开发公共云产品&#xff0c;并且即将开始正式启动的迹象已经出现。 在正式宣布之后将近一年&#xff0c;我被邀请加入所谓的“抢先体验”计划&#xff0c;以试驾新服务并提供反馈。 多亏负责产品的经理Reza Shafii &#xff0c;我才可…

MySQL 分组之后如何统计记录条数 gourp by 之后的 count()

SELECT count(*) FROM 表名 WHERE 条件 // 这样查出来的是总记录条SELECT count(*) FROM 表名 WHERE 条件 GROUP BY id //这样统计的会是每组的记录条数.如何获得 第二个sql语句的总记录条数? 则是&#xff0c;如下&#xff1a;    select count(*) from(SELECT count(*) F…

python CS游戏1--角色创建,武器购买

#codingutf-8 import random 本文字主要目的是随机创建一个角色&#xff0c;并且武器是随机产生的&#xff0c;自带系统给的费用10000,10000元钱可以购买武器&#xff0c;购买武器以后&#xff0c;钱会减少&#xff0c;直到不足提示无法购买 dir{"AK47":2000,"…

App Engine中的Google Services身份验证,第2部分

在本教程的第一部分中&#xff0c; 我描述了如何使用OAuth进行Google API服务的访问/身份验证。 不幸的是&#xff0c;正如我稍后发现的那样&#xff0c;我使用的方法是OAuth 1.0&#xff0c;显然现在Google正式弃用了OAuth 1.0&#xff0c;改用OAuth 2.0版本。 显然&#xff0…

字符串常用操作

1 常用&#xff1a;分割、长度、索引、切片2 r (1,2,3,4,5)#只读列表元组3 name "liangml"4 strip5 username input("user:")6 if username.strip() "liangml":#strip可以将输入前后的空格都换掉7 print("welcome")8 9 split …

java 保存bufferedimage_java - 如何将BufferedImage保存为Fi

答案在于Java Documentation的编写/保存图像教程。SaveImage.java类提供以下保存图像的方法&#xff1a;static boolean ImageIO.write(RenderedImage im, String formatName, File output) throws IOException该教程解释了这一点BufferedImage类实现RenderedImage接口。所以它…

MarkDownPad2 注册码

注册信息 邮箱地址&#xff1a; Soar360live.com 授权秘钥&#xff1a;GBPduHjWfJU1mZqcPM3BikjYKF6xKhlKIys3i1MU2eJHqWGImDHzWdD6xhMNLGVpbP2M5SN6bnxn2kSE8qHqNY5QaaRxmO3YSMHxlv2EYpjdwLcPwfeTG7kUdnhKE0vVy4RidP6Y2wZ0q74f47fzsZo45JE2hfQBFi2O9Jldjp1mW8HUpTtLA2a5/sQytX…

[51nod1297]管理二叉树

一个初始为空的二叉搜索树T&#xff0c;以及1到N的一个排列P: {a1, a2, ..., aN}。我们向这个二叉搜索树T添加这些数&#xff0c;从a1开始, 接下来是 a2, ...&#xff0c; 以aN结束。在每一个添加操作后&#xff0c;输出T上每对节点之间的距离之和。例如&#xff1a;4 7 3 1 8 …

Java Swing中的聊天气泡

本文将向您解释“如何在Java swing应用程序中绘制聊天气泡&#xff1f;” 聊天气泡与呼出气泡或思想气泡相同。 今天&#xff0c;大多数聊天应用程序都以这种格式显示转换&#xff0c;因此本文将帮助您在用Java swing创建的桌面应用程序中进行相同的操作。 以下课程用于绘制第一…

java内存模型按照线程隔离性_深入理解Java多线程与并发框(第③篇)——Java内存模型与原子性、可见性、有序性...

一、Java内存模型Java Memory Modle&#xff0c;简称 JMM&#xff0c;中文名称 Java内存模型&#xff0c;它是一个抽象的概念&#xff0c;用来描述或者规范访问内存变量的方式。因为各中计算机的操作系统和硬件不同&#xff0c;方式机制也可能不同&#xff0c;Java内存模型用于…

PHP通过PDO连接Microsoft Access数据库

1连接到access数据库 $db new PDO("odbc:Driver{Microsoft Access Driver (*.mdb, *.accdb)}; dbq" .realpath("yourfilepath\# ddsbbn3A02.Mdb")) or die("Connect Error"); realpath函数用来规范化绝对路径 2修改数据库中BM_sitelink表中字段…