如何在 FreeBSD jail 中安装 PostgreSQL 9.3?

Eon*_*nil 5 freebsd jails bsd-ports postgresql

我使用 配置了虚拟 NICS pf,并使用qjail create pgsql-jail 192.168.0.3.

当我尝试使用端口收集安装 PostgreSQL 9.3 时,它首先显示奇怪的消息。

pgsql-jail /usr/ports/databases/postgresql93-server >make install
===> Building/installing dialog4ports as it is required for the config dialog
===>  Cleaning for dialog4ports-0.1.5_1
===> Skipping 'config' as NO_DIALOG is defined
====> You must select one and only one option from the KRB5 single
*** [check-config] Error code 1

Stop in /basejail/usr/ports/ports-mgmt/dialog4ports.
*** [install] Error code 1

Stop in /basejail/usr/ports/ports-mgmt/dialog4ports.
===> Options unchanged
=> postgresql-9.3.0.tar.bz2 doesn't seem to exist in /var/ports/distfiles/postgresql.
=> Attempting to fetch ftp://ftp.se.postgresql.org/pub/databases/relational/postgresql/source/v9.3.0/postgresql-9.3.0.tar.bz2
postgresql-9.3.0.tar.bz2                        1% of   16 MB   71 kBps
Run Code Online (Sandbox Code Playgroud)

无论如何,安装仍在继续,所以我等待。我为所有选项对话框选择了所有默认选项。在过程结束时,我看到它最终失败并显示此消息。

====> Compressing man pages
===>  Building package for pkgconf-0.9.3
Creating package /basejail/usr/ports/devel/pkgconf/pkgconf-0.9.3.tbz
Registering depends:.
Registering conflicts: pkg-config-*.
Creating bzip'd tar ball in '/basejail/usr/ports/devel/pkgconf/pkgconf-0.9.3.tbz'
tar: Failed to open '/basejail/usr/ports/devel/pkgconf/pkgconf-0.9.3.tbz'
pkg_create: make_dist: tar command failed with code 256
*** [do-package] Error code 1

Stop in /basejail/usr/ports/devel/pkgconf.
*** [build-depends] Error code 1

Stop in /basejail/usr/ports/textproc/libxml2.
*** [install] Error code 1

Stop in /basejail/usr/ports/textproc/libxml2.
*** [lib-depends] Error code 1

Stop in /basejail/usr/ports/databases/postgresql93-server.
*** [install] Error code 1

Stop in /basejail/usr/ports/databases/postgresql93-server.
Run Code Online (Sandbox Code Playgroud)

我不知道为什么这会失败。一开始的错误似乎我有问题dialog4ports。最后错误似乎安装程序无法写入端口文件树。AFAIK,端口文件是从主机系统只读共享的。

我的监狱怎么了?如何在我的监狱中安装 PostgreSQL 9.3?

小智 0

我有同样的问题。我找到了一个解决方法。试试这个: - 手动安装dialog4ports-0.1.5_1

cd /usr/ports/ports-mgmt/dialog4ports
make install
Run Code Online (Sandbox Code Playgroud)

- 然后尝试安装postgresql93

cd /usr/ports/databases/postgresql93-server/
make install
Run Code Online (Sandbox Code Playgroud)

- 出错时创建链接来解决 pkgconfig 的问题

ln -s /basejail/usr/ports/devel/pkgconf/work/stage/usr/local/ /dati/ports/usr/ports/devel/pkgconf/work/stage/basejail/usr/local
Run Code Online (Sandbox Code Playgroud)

我对监狱骨架的构想有点不同,但这项工作是我的。PostgreSQL9.3安装正确!

问候。