我的电脑“死机”了。
我购买了一台新机器,并希望将我的 Arch 安装迁移到我的新机器上。从 Intel 转移到 AMD、新主板等。我认为更好的方法是进行全新安装,然后:
- 安装旧安装中的所有软件包
- 将我的点文件复制到新文件中。
全新安装后,如何列出上次安装时安装的软件包?我无法登录它以使用 pacman 列出软件包。我正在将 SSD 移至新计算机。
我应该 chroot 并执行 pacman - q >package_list.txt 吗?有更简单的方法吗?
我的电脑“死机”了。
我购买了一台新机器,并希望将我的 Arch 安装迁移到我的新机器上。从 Intel 转移到 AMD、新主板等。我认为更好的方法是进行全新安装,然后:
全新安装后,如何列出上次安装时安装的软件包?我无法登录它以使用 pacman 列出软件包。我正在将 SSD 移至新计算机。
我应该 chroot 并执行 pacman - q >package_list.txt 吗?有更简单的方法吗?
您已经自己回答了这个问题:chroot 是您在另一个安装中运行内容的方式,其中包括包管理器命令。
Pacman 确实有自己的选择来处理替代根:
-r
,例如pacman -Qr <dir>
,但它并没有本质上的不同。最简单的方法是
ls /mnt/var/lib/pacman/local
. 每个已安装软件包的元数据都存储为一个单独的目录,该目录以该软件包命名;截掉最后两个字段以获得 pkgname。Pacman 不区分 AUR 包和其他类型的包。一旦安装,它始终是一个“本地”包,无论它来自存储库还是来自您自己的 makepkg。