今日,突然发觉由于要在ubuntu64bit上编译android源码,本来装64位时就没有想用很久,电脑配置跑64bit还是有点吃力的,。但是还是决重新分配,
开始:
我64bit只分配了一个/ ,/swap,/boot没有单独分配/home,
32bitubuntu单独分配了/home,
我采用,缩小64bit根目录,将腾出的空间给32bit作为/home,把32bit的/home作为64bit的/home
首先备份home的env:输入如下:sudo tar -zcvpf /media/username/yourwant.tar.gz --exclude=. --exclude=.. /home/username/.*
然后u盘启动进入livecd,用gpart划分好分区,然后输入blkid ,查看目标分区的uuid,和sdn记下来,
然后修改你32bit的/etc/fstab分区表,将uuid和sdn填入对应位置,保存即可
64bit同理,注意不要将换行符加入,否则开机后会显示分区错误,若发生也不用着急,进入命令行,将/etc/fstab中的换行符删除即可。
然后在livecd 把备份的env还原到现在的/home/username/中即可。
然后重启。
若发现进不了卓面,显示.ICEauthority错误,不用着急,这是因为在还原过程中文件所有权被root强行剥夺了,ubuntu提供了六种纯文字界面控制台,按crtl+alt+f1-f6 进入,和6种gui控制台,按crtl+alt+f7-f12进入,开可以在命令行输入startx进入x-window,我们选择进入纯文字界面控制台
进入登录后,sudo chown username -R /home/username(也可以sudo chown username ~/.ICEauthority,不过为防止出现其他错误最好不要这样做),然后sudo chmod 644 ~/.ICEau* 然后crtl+alt+f7进入gui登录即可
上面思路也适用于其他问题无法进入桌面的情形,具体解决要看具体问题,原理差不多