进一步阅读

进一步阅读

在尝试将 pfSense 2.2.6 升级到最新版本时(如所述这里)并运行pkg,我得到:

The package management tool is not yet installed on your system.
Do you want to fetch and install it now? [y/N]:

回答“是”后,我得到:

Bootstrapping pkg from pkg+http://pkg.FreeBSD.org/freebsd:10:x86:64/latest, please wait...
Verifying signature with trusted certificate pkg.freebsd.org.2013102301... done
Installing pkg-1.10.5...
Newer FreeBSD version for package pkg:
To ignore this error set IGNORE_OSVERSION=yes
- package: 1003000
- running kernel: 1001000
Allow missmatch now?[Y/n]:

我决定冒险并回答“是”。最终,安装结束并出现错误消息:

/usr/local/lib/libpkg.so.4: Undefined symbol "openat"

这大概意味着pkg我得到的版本确实与我的系统不兼容。不幸的是,每次进一步尝试运行pkg都会产生相同的错误。

如何再次摆脱不兼容的pkg版本,以及如何在我的 pfSense 上获得与 BSD 版本兼容的版本?或者还有其他方法可以解决这个问题吗?

答案1

pkgng 有几个后备方案:

  • 有一个静态链接版本可用,如pkg-static.
  • 您可以通过明确告诉它来再次运行安装工具/usr/sbin/pkg bootstrap -f

您需要做的就是告诉pkg我们使用 FreeBSD 10.1 存储库。因为您的配置文件表明latest它正在使用 FreeBSD 10.3 存储库,该存储库的软件包含对 10.1 或更早版本中未找到的库函数的各种未定义引用,包括openatutimensat。 10.1 ABI 不向前兼容 10.3。

您可以通过将相应的.conf文件更改/usr/local/etc/pkg/repos/为特定版本而不是latest,然后重新引导来完成此操作pkg

或者您可以在 ports 树中编译您自己的。但你仍会拉着其他10.3 软件latest如果你这样做的话。

进一步阅读

相关内容