¿Cómo instalar PostgreSQL 9.3 en la cárcel de FreeBSD?

¿Cómo instalar PostgreSQL 9.3 en la cárcel de FreeBSD?

Configuré NICS virtuales usando pf, y una cárcel para FreeBSD usando qjail create pgsql-jail 192.168.0.3.

Cuando intenté instalar PostgreSQL 9.3 usando la colección de puertos, al principio muestra un mensaje extraño.

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

De todos modos, la instalación continúa, así que esperé. Elegí todas las opciones predeterminadas para todos los cuadros de diálogo de opciones. Y al final del proceso, vi que finalmente falló con este mensaje.

====> 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.

No tengo idea de por qué esto falla. Errores al principio, parece que tengo algún problema dialog4ports. Y por fin parece que el instalador no puede escribir en el árbol de archivos de puertos. AFAIK, los archivos de puertos se comparten de solo lectura desde el sistema host.

¿Qué le pasa a mi cárcel? ¿Cómo puedo instalar PostgreSQL 9.3 en mi cárcel?

Respuesta1

Si desea crear puertos en una cárcel que podría tener sistemas de archivos de sólo lectura, será mejor que configure suentorno portuarioadecuadamente. Yo uso make.confpara esto.

Utilizo estas configuraciones, si mi /usr/portsestá montado como de solo lectura:

WRKDIRPREFIX=/usr/workdir-ports
DISTDIR=/usr/distfiles
PACKAGES=/usr/packages

Con respecto a las advertencias anteriores:

Ha configurado NO_DIALOGlos puertos, por ejemplo, en make.conf, pero el puerto necesita un elemento de configuración. No puede ejecutar la configurefase con la NO_DIALOGopción configurada.

Tu podrías quererusar paquetes, si no quieres que te molesten las opciones en absoluto.

Respuesta2

Tengo el mismo problema. Encontré una solución. Pruebe esto: - instale manualmente dialog4ports-0.1.5_1

cd /usr/ports/ports-mgmt/dialog4ports
make install

- luego intenta instalar postgresql93

cd /usr/ports/databases/postgresql93-server/
make install

- en caso de error, cree un enlace para resolver el problema de pkgconfig

ln -s /basejail/usr/ports/devel/pkgconf/work/stage/usr/local/ /dati/ports/usr/ports/devel/pkgconf/work/stage/basejail/usr/local

Mi esquema del esqueleto de la cárcel es un poco diferente pero este trabajo es mío. ¡PostgreSQL9.3 está instalado correctamente!

Saludos.

información relacionada