ubuntu-14.04中/boot分区不足的解决办法
环境:
ubuntu-kylin 或者 ubuntu-14.04,
/boot单独分区
工具:
ubuntu的liveCD。
问题:
由于当初安装的时候,看网上说/boot很小,100M足以,于是单独分区,分了100M,结果实际上装好以后,我的/boot只有88M(因为分区时和装好后系统对于容量的计算方法不同)。
这就带来一个问题,ubuntu过个两三天就会有一些更新,每次都有有内核更新,每次提示/boot太小,不能更新,很是麻烦。
所以我需要把/boot扩大。
/boot没有单独分区的不会存在这个问题。
大致需要如下几步:
数据备份,重新分区,数据恢复,修复引导。
数据备份:
我的分区依次是:/boot,/,/home,swap. 分区与目录的对应关系是(/dev/sdaX表示分区,请根据自己实际情况):
/dev/sda5=>/boot
/dev/sda6=>/
/dev/sda7=>/home
所以要扩大/boot,就需要把/分出一部分,所以这两个分区上的数据都需要备份,就备份到/home下吧。
用liveCD启动登入系统,把/boot,/,/home这三个分区挂载上去:
sudo mount /dev/sda6 /mnt
sudo mount /dev/sda5 /mnt/boot
sudo mount /dev/sda7 /mnt/home
然后用tar命令把进行数据备份,注意硬盘上的/proc,/sys,/tmp,lost+found这4个目录不用备份。
/mnt/home是要放备份数据的分区,也不要把它自身备份。
不能用cp进行简单的拷贝备份,否则恢复数据的时候,很多重要文件的属性会变化。
cd /mnt/boot
sudo tar -cvf /mnt/home/boot.tar *
cd /mnt
sudo tar -cvf /mnt/home/rootdir.tar bin cdrom lib media opt root sbin usr vmlinuz
boot dev etc initrd.img mnt run srv var
重新分区:
首先确认一下刚才备份时挂载的几个分区都已经卸载了。
然后使用fdisk重新分区。
sudo fdisk /dev/sda
重新分区以后,/dev/sdaX会有变化,需要注意这个地方。
现在分区的对应关系变成了这样:
/dev/sda6=>/home
/dev/sda7=>/boot
/dev/sda8=>/
把新分的两个分区用mkfs进行格式化:
sudo mkfs /dev/sda7
sudo mkfs /dev/sda8
数据恢复:
由于刚才的分区,导致/dev/sdaX有变化,需要重新确认谁是谁(主要是根据容量区分,也可以试着挂载上,看里面有那些文件来区分)
重新挂载分区,进行数据恢复(如果这时候不能挂载,重启一下系统,再次进入liveCD)
sudo mount /dev/sda8 /mnt
sudo mount /dev/sda7 /mnt/boot
sudo mount /dev/sda6 /mnt/home
正确挂载/boot,/,/home后,使用tar进行数据恢复。
sudo tar -xvf /mnt/home/rootdir.tar -C /mnt
sudo tar -xvf /mnt/home/boot.tar -C /mnt/boot
修复引导:
此时如果进行重启,发现系统不能启动,连系统都找不到,需要进行引导修复。
所以现在不去重启,而是引导修复,
请看教程:使用liveCD修复grub引导
最后一步:
现在重启,从硬盘启动,发现能找到linux系统,但是不能启动,屏幕提示你进入单用户模式。
这时为什么不能启动?因为我们重新分区了,分区的UUID变化了,linux不能正确挂载分区了,需要修复/etc/fstab。
把里面的/boot,/ 这两个分区对应的UUID改正确,然后退出单用户模式,继续启动。
一切正常了。
ubuntu-14.04中/boot分区不足的解决办法的更多相关文章
- [转载]Ubuntu 14.04中root 密码忘记解决方法
Ubuntu 14.04中root 密码忘记解决方法 方法一: 如果用户具有sudo权限,那么直接可以运行如下命令: #sudo su root #passwd #更改密码 或者直接运行sudo ...
- Ubuntu 14.04中Elasticsearch集群配置
Ubuntu 14.04中Elasticsearch集群配置 前言:本文可用于elasticsearch集群搭建参考.细分为elasticsearch.yml配置和系统配置 达到的目的:各台机器配置成 ...
- Ubuntu 14.04中安装最新版Eclipse
Ubuntu 14.04中安装最新版Eclipse 来源:Linux社区 作者:Linux 1.安装OpenJDK Java 7 如果你的系统中没有安装Java,我们需要按照如下步骤事先安装好 ...
- Ubuntu 14.04中gedit打开文件出现中文乱码问题
http://blog.csdn.net/cywosp/article/details/32325449/ 在中文支持配置还不完整的Ubuntu 14.04中,使用gedit打开带有中文字符的文件有时 ...
- 如何在Ubuntu 14.04中安装最新版Eclipse
想必很多开发人员都知道,Ubuntu 软件源中提供的并不是最新版本的 Eclipse,本教程就教大家如何在 Ubuntu 14.04 中快速安装 Eclipse 官方发布的最新版本. 到目前为止,Ec ...
- zhuan:点滴记录——Ubuntu 14.04中gedit打开文件出现中文乱码问题
在中文支持配置还不完整的Ubuntu 14.04中,使用gedit打开带有中文字符的文件有时会出现乱码的情况,这是由于gedit对字符编码匹配不正确导致的,解决方法如下: 在终端中输入如下命令,然后重 ...
- 如何在Ubuntu 14.04中使用Samba共享文件
Linux 下的文件共享利器 Samba 想必大家已经非常熟悉了,今天我们介绍下如何在Ubuntu 14.04中使用 Samba 共享网络文件.打印机和其它公共资源. 1.安装 Samba 和图形配置 ...
- 怎样在Ubuntu 14.04中安装Java(转)
想知道如何在Ubuntu 14.04中安装Java?安装Java肯定是安装Ubuntu 14.04后首先要做的几件事情之一(见http://www.linuxidc.com/Linux/2014-04 ...
- 点滴记录——在Ubuntu 14.04中使SublimeText 3支持中文输入法
在Ubuntu 14.04中安装了SublimeText 3之后发现既然不支持输入中文,于是在网上搜罗一下,发现非常多人遇到了相同的问题,可是解决的方法大该就仅仅有一个.以下依据自身的安装及解决的方法 ...
随机推荐
- 使用jquery.mCustomScrollbar自定义滚动条(4)live使用,向未来元素添加滚动条,不实用,了解一下
.div_box元素是本来没有的,在滚动条初始化的时候方法是加在$('.content .div_box').mCustomScrollbar()上面,参数live:on; 点击按钮的时候,进行con ...
- java 1.8新特性(二) 关于 function 接口的使用
需求1:从user集合中 找出age=15的用户 传统方法 就不说了 举例明一下 java1.8 使用Predicate接口解决该需求: @FunctionalInterface public in ...
- 项目启动时报错Instantiation of bean failed; nested exception is java.lang.ExceptionInInitializerError
https://www.cnblogs.com/liuyp-ken/p/7911536.html 解决过程: 1.检查配置,反反复复看了很多遍,确认没有问题. 2. 网上找了很多资料,类似的问题很多, ...
- PHP 多态理解
PHP 多态 多态性是指相同的操作或函数.过程可作用于多种类型的对象上并获得不同的结果.不同的对象,收到同一消息将可以产生不同的结果,这种现象称为多态性. 多态性允许每个对象以适合自身的方式去响应 ...
- tesseract-ocr4.0 安装部署及训练验证码识别
1. 下载最新版本的leptonica, leptonica-1.74.1.tar.gz 2. 编译安装 tar -zxvf leptonica-.tar.gz cd leptonica- . ...
- Could not determine own NN ID in namespace 'mycluster'
执行hdfs namenode -bootstrapStandby的时候报错如下 19/03/24 18:00:48 ERROR namenode.NameNode: Failed to start ...
- github .net core
https://github.com/dotnet/core/blob/master/Documentation/core-repos.md
- Windows Server 2012 R2 无法启用Microsoft .NET Framework 3.5 功能
1 在新windows 2012 R2 上安装SQL 2014 ,提示需要安装 .NET Framework 3.5 2 在添加角色和功能--功能--.NET Framework 3.5,然后失败 3 ...
- 关于javascript三目
三目运算符能使我们的代码更为简洁,因而包括小编的我也很是青睐它,不过有时候我们给予它更多的希望,小编处于学习阶段,先从笔记开始: (3>1)?console.log(1):console.log ...
- 梯度下降(Gradient Descent)相关概念
梯度,直观理解: 梯度: 运算的对像是纯量,运算出来的结果会是向量在一个标量场中, 梯度的计算结果会是"在每个位置都算出一个向量,而这个向量的方向会是在任何一点上从其周围(极接近的周围,学过 ...