也谈对ubuntu下/usr目录的一次“半成功”迁移

为当前最终发行版之前的所有版本提供支持
回复
anffernee
帖子: 47
注册时间: 2008-07-01 23:07
送出感谢: 0
接收感谢: 0

也谈对ubuntu下/usr目录的一次“半成功”迁移

#1

帖子 anffernee » 2008-09-02 0:10

讲讲我在ubuntu下面对usr目录的一次瞎胡闹:
1、缘由:事情是这样的,我在我的笔记本上安装了ubuntu之后,由于一开始对ubuntu占用空间估计不足,仅仅分给了她3.7G(其实是我那个时候xp系统的c盘差不多就剩4G多了)。结果到后来随着安装的程序越来越多,我发现3.7G很轻松的就被用光了,于是就想看看到底根目录下面谁是罪魁祸首。接着我就发现了/usr目录居然占了将近2.5G,老天,不革它的命似乎不行诶。
2、腾地儿:经过在ubuntu的官方论坛的不懈版搜,我用livecd启动了ubuntu的图形界面,然后动用了gparted工具在我xp系统的某分区resize了3.5G空间出来,重新format为ext2格式的一个新分区。
3、挂载:接着我就在根目录下面建了一个新的目录/extdisk,修改/etc/fstab文件,然后将上面一点提到的新分区挂载到该目录下面。
4、挪窝儿(对于这一点,高手肯定嗤之以鼻,因为显然按照我这样的作法儿,很多现场都没有被保留,比如文件/文件夹的所有者、群组等信息;其实事实也证明,这样做是不专业和遗患无穷的,所以──还请高手指点!):然后用root启动了文件管理器“sudo /usr/bin/nautilus”(当然,你也可以不这样做,大可以直接用sudo cp -R指令操作,我只不过为了看到图形的进度条罢了,很无语吧-_-!!),将/usr目录下面的所有东东拷贝到了/extdisk目录下面,注意,拷贝后/extdisk目录下面的文件结构和/usr下面的是一样的,千万别拷贝到了诸如你自己新建的/extdisk/usr目录里面去,千万,千万别。
5、让位:这里有个细节的先后顺序,请一定小心。首先,请一定先修改/etc/fstab文件,让第2点中的新分区改为挂载到/usr下面;然后,同志们还是直接用su切到root下面吧,在terminal里面进入/usr目录,用rm -r *命令删除/usr目录下面的所有文件。别害怕(其实我自己是抱着实在不行就重装的决心的,所以没有被吓到),等全部删除完了,你会发现你的任务栏上的图标全没了,菜单里面的东西也不对头了(大部分也都不见了),我们接着下面一步慢慢来就会都回来的,老天。
6、继承:还是接着上面在同一个terminal里面,umount /extdisk,再mount /usr吧;然后,这里其实我还没有完全搞清楚这样做的后遗症都有哪些(起码sudo有点儿用起来不正常),用chown -R xxx /usr命令(xxx是你一般用来登录ubuntu图形界面用的账户)让一切恢复过来吧(其实,这一步有点鲁莽和图省事儿,是不知其所以然的缘故,还请高手指点啊!),哈哈。
7、后遗症:目前碰到的就是,sudo的时候老是提示“sudo: must be setuid root”,不过要解决也不难,打开一个terminal,切到root,用指令chown root:root /usr/bin/sudo和chmod 4755 /usr/bin/sudo重新设置一下,然后登出、登入(Ctrl-Alt-Backspace)就ok了。
8、欢呼:至少我是高兴的,根目录下面现在多了2.5G对空间诶,哈哈。
9、结束语?我不敢说结束了,至少今天晚上折腾完了,还没碰到其他更大的问题,其实这里只是想抛砖引玉,是希望有真正的高手给予指点,非常感谢!
上次由 anffernee 在 2008-09-03 14:30,总共编辑 3 次。
头像
HuntXu
论坛版主
帖子: 5776
注册时间: 2007-09-29 3:09
送出感谢: 0
接收感谢: 6 次

#2

帖子 HuntXu » 2008-09-02 0:40

/usr的权限变成普通用户的了?危险哦

cp能保留权限的啊...建议从分区到重新挂载都用livecd...直接重启,完毕~
HUNT Unfortunately No Talent...
anffernee
帖子: 47
注册时间: 2008-07-01 23:07
送出感谢: 0
接收感谢: 0

#3

帖子 anffernee » 2008-09-02 14:57

全程用livecd?可以么?
反正我觉得livecd好慢,倒是没留意livecd里面的文件管理器是否可以访问已安装好ubuntu的分区。。。
改天看看,呵呵。
多谢2楼的建议!
头像
cnkilior
论坛版主
帖子: 4979
注册时间: 2007-08-05 17:40
送出感谢: 0
接收感谢: 5 次

#4

帖子 cnkilior » 2008-09-02 15:04

/usr 目录下面的所有东东拷贝到了/extdisk目录下面,注意,拷贝后/extdisk目录下面的文件结构和/usr下面的是一样的,千万别拷贝到了诸如你自己新建的/extdisk/usr目录里面去,千万,千万别。

文件位置不对吧?这个位置是livecd的。应该是/mount/point/usr
anffernee
帖子: 47
注册时间: 2008-07-01 23:07
送出感谢: 0
接收感谢: 0

#5

帖子 anffernee » 2008-09-03 14:33

回复4楼的热心人:
这个extdisk目录是我在系统的根目录下建立后并mount了新建的一个分区的,我不知道你说的/mount/point/usr是特指哪儿呢? :)
头像
cnkilior
论坛版主
帖子: 4979
注册时间: 2007-08-05 17:40
送出感谢: 0
接收感谢: 5 次

#6

帖子 cnkilior » 2008-09-04 8:49

你用livecd启动后,文件系统的根就在livecd上了,而硬盘上的ext3分区就挂载在/media上了(可以通过命令mount查看)
假设原来的根被挂到/media/sda5。那么应该/media/sda5/usr就是你应该复制的源,而不是/usr。这样该说清楚了吧?

---
/mount/point/usr指的是挂载点上的usr文件夹!
anffernee
帖子: 47
注册时间: 2008-07-01 23:07
送出感谢: 0
接收感谢: 0

Re: 也谈对ubuntu下/usr目录的一次“半成功”迁移

#7

帖子 anffernee » 2011-02-20 0:05

哦,多谢6楼指教,时间过得飞快,居然一晃就过去2年多了,分特。。。
头像
beikejinmiao
帖子: 48
注册时间: 2012-03-20 23:17
来自: 北京海淀
送出感谢: 8 次
接收感谢: 0

Re: 也谈对ubuntu下/usr目录的一次“半成功”迁移

#8

帖子 beikejinmiao » 2012-10-15 21:00

又一年过去.
Ubuntu,I am coming!
funicorn
帖子: 1131
注册时间: 2005-09-13 4:56
系统: Ubuntu QQ
送出感谢: 0
接收感谢: 47 次

Re: 也谈对ubuntu下/usr目录的一次“半成功”迁移

#9

帖子 funicorn » 2012-10-15 21:17

对/usr单独分区这是上古年代的事了,现在硬盘都这么大了,ubuntu一直跑在runlevel2,你弄这个干什么

过去把linux分成很多个分区,是因为硬盘不够大,另外可以按照runlevel去划定分区,这样系统比较安全

可是debian/ubuntu使用upstart作为启动管理器,init的runlevel序列已经不承担主要任务了,upstart启动序列根本不遵守runlevel顺序,分那么多区一点实际意义都没有
添加ppa后只更新此ppa:
update-ppa()
{ sudo apt-get update -o Dir::Etc::sourcelist="sources.list.d/$1.list" -o Dir::Etc::sourceparts="-" -o APT::Get::List-Cleanup="0"
}
写入~/.bashrc,source一下,就可以直接用,是不是很方便?觉得方便就按个赞。
yjcpu
帖子: 7
注册时间: 2008-03-07 19:56
送出感谢: 0
接收感谢: 0

Re: 也谈对ubuntu下/usr目录的一次“半成功”迁移

#10

帖子 yjcpu » 2013-08-05 12:03

funicorn 写了:对/usr单独分区这是上古年代的事了,现在硬盘都这么大了,ubuntu一直跑在runlevel2,你弄这个干什么

过去把linux分成很多个分区,是因为硬盘不够大,另外可以按照runlevel去划定分区,这样系统比较安全

可是debian/ubuntu使用upstart作为启动管理器,init的runlevel序列已经不承担主要任务了,upstart启动序列根本不遵守runlevel顺序,分那么多区一点实际意义都没有

等到系统挂掉的时候,楼主就会知道单独分区的好处了
回复

回到 “老旧版本支持”