有没有办法让update-alternatives
命令在安装在“/”以外的路径上的根文件系统上运行?例如,update-rc.d
和ldconfig
命令有一个-r <path>
选项可以执行此操作。手册update-alternatives
页没有表明这种支持。
答案1
您可以使用--admindir
选项来选择状态目录,例如/my/root/var/lib/dpkg/alternatives
,并使用--altdir
选项来选择链接目录,例如/my/root/etc/alternatives
。但是,update-alternatives
会看到 中的绝对符号链接/my/root/etc/alternatives
、指向/usr/bin
等,因此可能会看到未安装在备用根目录中的程序的损坏链接。
没有办法让它完全在根内部工作。所以使用通用方法:chroot。
chroot /my/root update-alternatives …
如果你不想以root身份运行,你可以使用假根。