linux 将分区更改挂载,<转>[Linux]细说linux挂载3:我的linux分区当初设置得不合理,如何调整或更改分区大小?...

刚入门的新手,似乎大多数都遇上过一个困扰——当初的分区不合理,怎么办?

最“傻瓜”的办法就是重装,我不罗嗦了。

不过这样的话,你就轻易放过了一个菜鸟变老鸟的大好机会,可惜。

想起飞又不怕摔得钻心疼的菜鸟请继续往下看。

其实如果你理解了linux的树形目录的话,这事干起来也没啥大不了的,借助几个工具,敲几行代码就行。

第一、准备一张liveCD,最好是desktop;

用alternat或者硬盘启动ISO文件也行,但alternat只能全终端操作,没有GUI喔;而硬盘启动必须保证ISO文件所在分区,与被影响到的分区完全无关。

第二、观察一下目前的分区状态,制定调整方案;

这里请搞清,你要调整一个分区,如果是变大,那么变大的部分只能从临近的分区“掠夺”而来,而且这个“临近的分区”必须是与被调整分区同类的,即同为主分区或同为逻辑分区,如果不是,那不幸的你只好再麻烦点,先调整为同类喽。

记住,临近和同类是必须的,缺一不可。

如果是变小就简单点了,你可以把多余出来的部分合并入临近分区,或者单独建立为新分区;

步骤如下:

1.

使用gparted可动态调整分区(也可以叫“无损分区”),就是在不破坏原有分区数据的前提下,改变分区大小。这一步和windows没啥本质区别;

2. 编辑fstab文件,使系统能正常启动;

注意到fstab文件里的第一项了么?ubuntu默认使用UUID挂载,一般情况下这个UUID是不会变的,即使你把硬盘拿到其他电脑使用,也不会变。

但是,如果你“改变”了该分区现状,比如改变大小、格式化(正常的向分区写入数据不属于改变现状)等等,则将会重新生成新的UUID。

所以你必须在调整完毕后,在fstab中用新的UUID替换旧的,否则无法启动就是很自然的事了。

如果你的fstab用类似/dev/sda5这种写法的话……,也应该检查一下是否的确没问题。

引用:

合理的分区方案:

再一次不厌其烦的重申,linux是一个树状系统结构,所以根分区不用太多,在足够容纳系统及程序数据的情况下稍有富裕即可,多了就是浪费。

按照一般家庭用户的使用来说,如果主要用于上网、听歌、看电影等等,对于这种“大众化”的要求,可按照如下方案分配:

/ -------------->10G±5G(其实如果不用X的话,5G还嫌太多);

/home ------->1G~10G(足够存储配置文件和一些必要的数据即可,太大了不好);

以下为可选的(即不是必要的,没有也行)

swap -------->大于内存即可。如内存本身大于2G且不使用休眠功能的话,根本不需要这个分区;

/boot

-------->如果你使用太大的硬盘(500G以上)且根分区被安排到了磁盘末尾部分,就在磁盘靠前部分分配一个/boot分区(放置内核用),100~200M足够。多一点都是浪费。如果你硬盘不大,或者根分区靠前的话,同样根本不需要这个分区;

/var ----------> 5~15G,对于网速不快且经常需要重装的新手,建议要,省去很多麻烦。

其他空间你自己看着办吧,搞好之后挂载到你喜欢的地方去就好。

如果你感觉当初的分区方案的确欠妥的话,动手!

a4c26d1e5885305701be709a3d33442f.png第一步_______________________________________________________________________________________

用liveCD启动系统(linux不是windows,你想直接在本机系统干这事也不是不可以,不过需要你具备更强的终端能力,请自己学习去吧)。

引用:

进入桌面后,首先问一个问题,如果现在需要调整fstab文件,它在哪?

——老师老师我知道,输入sudo gedit /etc/fstab,然后……

KAO,这位同学请自己出去弹老二100下,然后回2楼重读100遍再来!

——老师老师我知道,现在的根分区其实和刚才的不一样了,所以要找原来的fstab文件,必须先把原来的根分区挂载进来,成为现在系统下一个普通的挂载点,然后sudo

gedit //etc/fstab就OK啦!

呵呵,乖仔乖喔,过来老师亲一口。

然后呢?打开gparted调整?

等会……

这样当然是没问题的,不过你可能不了解一个情况,就是gparted干这事……,忒慢!

是的,慢到令人吐血,我曾经用它调整一个20G的分区,猜猜它干这事要多久?

10个小时。KAO!这点时间足够重装10遍的!

更要命的是,一旦开工就不能cancel了,否则你就准备找数据修复软件吧(没办法,windows下的分区工具PM、PQ这些不支持ext4,不过就算支持也难以令人放心)。

不过如果是空分区,那就好办了,20分钟足够!

so……,咱们变通一下,先把待调整的分区备份好--->然后删除,令它成为空闲分区--->再来调整好--->再重建分区--->再把备份的数据放回去

不就好了?挖哈哈哈哈~~~~

引用:

备份不能用ghost,这跟支持不支持linux没关系。ghost是以区块备份的,用这个等你调整好后再ghost恢复回去,包你到时候要傻眼。

原因么,自己搜去,总之不听我老人家劝,吃亏就在眼前。

我现在假定你需要增大鼠标指向的sda5(其实8G也够了),想把旁边sda6上的空间“挪”2G到sda5变成10G,保持sda1不变,并令其作为临时储存备份文件的地方(你得确定有足够空闲空间喔,可以用df命令查看sda5有多大,空闲空间至少要等于它)。a4c26d1e5885305701be709a3d33442f.png

a4c26d1e5885305701be709a3d33442f.png第二步_______________________________________________________________________________________

请打开终端,使用强大的tar命令(类似生成windows的wim格式的ImageX,不过这玩意在tar面前简直是个小学生),跟我一起敲码:

代码:

cd (确保当前处于“家目录”)

mkdir sda5 (建立一个名为“sda5”的空目录,之所以叫这个是为了保持与分区编号一致,以免头晕)

sudo mount /dev/sda5 sda5 (挂载第二分区到sda5)

cd sda5 (进去看看对不对)

ls (实在不习惯终端的话,也可以打开nautilus看)

确定没问题吗?那么继续

代码:

cd (回到“家目录”)

mkdir sda1 (再创建一个空目录用于挂载sda1)

sudo mount /dev/sda1 sda1 (挂载sda1)

cd sda5 (再次进入sda5)

sudo tar -cvpf ~/sda1/ubuntu.tar ./  (打包本目录下的所有文件到sda1,并命名为ubuntu.tar,注意这里没有使用压缩,只为了节约时间)

等屏幕上停止滚动,再次出现终端提示符的时候,去~/sda1看看确定一下,然后

代码:

sudo umount

/dev/sda5 (卸载sda5,这是调整时必须的,可能sda1也必须卸载掉)

a4c26d1e5885305701be709a3d33442f.png第三步_______________________________________________________________________________________

OK,现在可以打开gparted胡作非为了

先删除sda5分区,然后从sda6哪里“掠夺”2G空间出来,再在10G空闲空间上创建sda5分区。这个怎么做不用我说了吧?

你可能会发现这样还是很慢,因为sda6上有数据,我说了,gparted干这事令人吐血。

所以……,如果你还有地方的话,可以像对付sda5一样对付sda6,即备份、删除、再调整、再还原,^_^

呵呵,好在调整分区这档子破事,咱也不用天天整吧?嫌慢就去找个gf聊聊哈。

等到那花儿也些了,你也就苦到头了,谁让你当时不想好了再下手呢?

a4c26d1e5885305701be709a3d33442f.png第四步_______________________________________________________________________________________

好了就再来,还是终端

代码:

cd (回到“家目录”)

sudo mount /dev/sda5 sda5 (再次挂载sda5)

sudo mount /dev/sda1 sda1 (再次挂载sda1)

sudo tar -xvpf ~/sda1/ubuntu.tar -C ~/sda5 (释放刚才打包的文件到sda5目录)

cd sda5 (再次进入sda5看看有问题没?)

我觉得应该可以了的说。

a4c26d1e5885305701be709a3d33442f.png

a4c26d1e5885305701be709a3d33442f.png第五步_______________________________________________________________________________________

也是最后一步——调整fstab文件

代码:

blkid

sudo gedit ~/sda5/etc/fstab

把现在的新sda5的UUID贴上去吧,如果fstab里也挂载了sda6的话,一样,改!

再来,把grub菜单中所有引用到的UUID全改掉,否则等会你又要见到经典的ERRO

15了。

代码:

sudo gedit

~/sda5/boot/grub/grub.cfg

请注意,如果/boot单独分区了的话,该挂载哪个分区、编辑那个文件就要自己琢磨琢磨了。

一切OK后,删除~/sda1/ubuntu.tar(当然你硬盘空间富裕的话,留着做个备份也不错,去学一学怎么用tar把它再压缩一下,呵呵)。

a4c26d1e5885305701be709a3d33442f.png如果你认为还应该有一步的话_______________________________________________________________________________________

就是重启,over

a4c26d1e5885305701be709a3d33442f.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值