实习期间公司给配了个台式机,由于习惯了 Archlinux,所以便想将笔记本上的系统给直接复制过去。
网上查了资料,可以使用 tar 命令来转移系统:
- $ tar cvpzf ~/root.tar.gz --exclude=/proc --exclude=/lost+found --exclude=/mnt --exclude=/sys --exclude=/media --exclude=/home /
用 LiveCD 启动公司电脑,将压缩包解压:
- $ tar xvpf root.tar.gz -C /
修改好 /etc/fstab 和 grub 后重启。
然而,启动后却出错了!提示:
- ...device /dev/sda3 not found...
因为这个问题,实在是折腾了好久,网上搜寻了大量资料后才发现,原来还要重新生成内核镜像:
- # 用 LiveCD 启动电脑,然后使用 chroot 命令进入恢复的 Arch 系统(存放在 /dev/sda8 上)
- # mount /dev/sda8 /mnt
- # mount -o bind /proc /mnt/proc
- # mount -o bind /dev /mnt/dev
- # mount -o bind /sys /mnt/sys
- # chroot /mnt
- # mkinitcpio -p linux
# exit
然后重启,这次终于可以进入系统了。
然而,进入系统后,却发现几个 Windows 中的分区不见了,在 Thunar 的侧边栏根本不显示。
同时,cairo-dock 的 Logout 插件中的 Shut down, Restart 等命令也是灰色的。
首先查看日志:
- localhost console-kit-daemon[427]: CRITICAL: polkit_authority_check_authorization: assertion `POLKIT_IS_AUTHORITY (authority)' failed
- localhost console-kit-daemon[946]: WARNING: polkit_authority_get: Error getting authority: Error initializing authority: Could not connect: No such file or directory
- localhost console-kit-daemon[946]: WARNING: Failed to acquire org.freedesktop.ConsoleKit
- localhost console-kit-daemon[946]: WARNING: Could not acquire name; bailing out
又是一番折腾,其中过程之艰辛不再言述。
最终发现,原来却是 /var/run 的问题。
在 Archlinux 中, /var/run 是 /run 的软链接。但不知为什么,恢复后的系统却是单独的一个文件夹,这样dbus 运行会出现问题,直接导致依赖于 dbus 的一系列程序运行出错。解决方法:
- # rm -rf /var/run
- # ln -s /run /var
再次重启,久违的 Windows 分区终于在 Thunar 的侧边栏显示出来了!同时,也可以直接通过 cairo-dock 的 Logout 插件直接关机了。
阅读(2442) | 评论(0) | 转发(0) |