Linux下把rootfs移动到SSD,以及移动后启动发现Firefox打开仿佛刷新一遍找不到原有账户数据的处理办法

参考链接

grub2 - grub-probe: error: failed to get canonical path of /cow - Unix & Linux Stack Exchange

linux .mozilla文件夹,Firefox在Linux系统配置文件夹的默认路径_椰子大魔头的博客-CSDN博客

移动 rootfs

要移动rootfs是因为在用的电脑,原来的rootfs是放在了机械盘上,虽然7200rpm,但是最近才注意到,开机一次要3分多钟……

都买了SSD然后发现,原来装的SSD留了一个分区是Windows的操作系统,格式化以后空出100G,刚好……SSD拿别的地方用了

我的思路比较简单,

  1. 格式化分区为ext4,挂载到新目录
  2. 机械盘里除了home目录以外的东西都挪到新分区,用的是cp -a的命令,软链接不会解析
  3. 修改新分区的/etc/fstab,更换挂载为rootfs的SSD的root分区的UUID,机械盘则
  4. 参考mount命令结果,在新rootfs下建立缺少的dev, tmp, proc 等目录用于挂载
  5. 设置新分区下的home目录软链接到,/etc/fstab里指定的挂载机械盘的目录下的home,如/media/ssdpart/home -> /media/hdd/home
  6. 修改grub2引导,启动改用SSD作为rootfs
  7. 等尘埃落定,再把机械盘里其他非home目录删掉,把新盘里的home目录改成空文件夹,直接把机械盘整个分区挂载到home目录

一通操作完,发现启动还是3分钟!

怎么回事呢?一看gnome磁盘,好家伙,挂载的还是机械盘的rootfs

我重启进grub,手动引导进SSD的rootfs,发现新系统是能正常跑起来的

多尝试几次,在grub2界面按e查出了端倪:里面指定的rootfs的UUID还是机械盘分区……

再查,发现/boot/efi/EFI/ubuntu/grub.cfg里面的内容是

search.fs_uuid 58daa52f-8d21-497d-998e-a27135554968 root hd0,gpt3 
set prefix=($root)'/boot/grub'
configfile $prefix/grub.cfg

找的还是机械盘……

虽然直接修改这里的UUID和root,但是我还是研究了一下标准命令的方法

结果update-grub更新不到这个地方,install-grub怎么执行都不对,报错是 grub-probe: error: failed to get canonical path of /cow 最后那个cow好像是别的什么单词

最后找资料(资料链接1),知道了install-grub的用法

root@raspixmc:/home/pi# mount /dev/sda1 /mnt
root@raspixmc:/home/pi# cd /mnt
root@raspixmc:/mnt# mount --bind /dev dev/
root@raspixmc:/mnt# mount --bind /sys sys/
root@raspixmc:/mnt# mount --bind /proc proc/
root@raspixmc:/mnt# mount --bind /dev/pts dev/pts
root@raspixmc:/mnt# chroot . bin/bash
root@raspixmc:/# update-grub
Generating grub configuration file ...
Found Raspbian GNU/Linux 9 (stretch) on /dev/mmcblk0p2
done
root@raspixmc:/#

绑定挂载后我这边能执行了,然后启动后也正确使用SSD作为rootfs,30秒开机登录,老电脑焕发第二春,nice

恢复 Firefox

但是还是有少许问题掺杂在里面的,比如打开Firefox

image

我还以为我数据都丢了……

虽然我有登录国内服务器的Firefox帐号,登录完同步一遍也可以……但是好像登录之后是登录的国际服……也就是说这个新的火狐里没有国内插件附加组件管理器

考虑到我没有删除什么数据,应该可以恢复,我就尝试搜索了一下,在资料链接2里找到了这个~/.mozilla/firefox目录

发现有最新时间戳的数据文件夹s6r4dujs.default-release只有十几MB,而我原来的另一个文件夹,700MB,没有带上-release后缀

我就把新的文件夹备份了下,把我700MB的文件夹改名成s6r4dujs.default-release,重新打开Firefox,我的收藏夹,插件都回来了!

就是皮肤加载不完全,要去关闭,重新打开,然后重新启动Firefox,就恢复正常了。

后面还想尝试,我的Firefox程序和数据都是在机械盘,是把Firefox的程序放到SSD更快,还是数据放过去更快……

还没研究出来,因为打开一次以后再重新打开Firefox,启动速度就非常快了,内存里有缓存可能

期间发现,程序移到SSD,数据文件夹又变了名字2g9fc6z0.default-release-1。。

posted @ 2022-12-09 22:06  ItsShowTime  阅读(214)  评论(0编辑  收藏  举报