Eu configurei NICS virtuais usando pf
e uma prisão para FreeBSD usando qjail create pgsql-jail 192.168.0.3
.
Quando tentei instalar o PostgreSQL 9.3 usando coleção de portas, ele mostrou uma mensagem estranha a princípio.
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 qualquer forma, a instalação continua, então esperei. Eu escolhi todas as opções padrão para todas as caixas de diálogo de opções. E no final do processo, vi que finalmente falhou com esta mensagem.
====> 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.
Não tenho ideia de por que isso falha. Erros no início parece que tenho algo errado dialog4ports
. E finalmente parece que o instalador não consegue gravar na árvore de arquivos do ports. AFAIK, os arquivos das portas são compartilhados somente leitura do sistema host.
O que há de errado com minha prisão? Como posso instalar o PostgreSQL 9.3 na minha prisão?
Responder1
Se você deseja construir ports em uma jail que possa ter sistemas de arquivos somente leitura, é melhor configurar seuambiente portuárioapropriadamente. Eu uso make.conf
para isso.
Eu uso essas configurações, se meu /usr/ports
estiver montado como somente leitura:
WRKDIRPREFIX=/usr/workdir-ports
DISTDIR=/usr/distfiles
PACKAGES=/usr/packages
Em relação aos avisos acima:
Você configurou NO_DIALOG
portas, por exemplo, em make.conf
, mas a porta precisa de um item de configuração. Não é possível executar a configure
fase com a NO_DIALOG
opção definida.
Você pode quererusar pacotes, se você não quiser se incomodar com as opções.
Responder2
Eu tenho um mesmo problema. Eu encontrei uma solução alternativa. Tente isto: - instale manualmente dialog4ports-0.1.5_1
cd /usr/ports/ports-mgmt/dialog4ports
make install
- então tente instalar o postgresql93
cd /usr/ports/databases/postgresql93-server/
make install
- em caso de erro, crie um link para resolver o problema do pkgconfig
ln -s /basejail/usr/ports/devel/pkgconf/work/stage/usr/local/ /dati/ports/usr/ports/devel/pkgconf/work/stage/basejail/usr/local
Meu esquema do esqueleto da prisão é um pouco diferente, mas esse trabalho me molda. PostgreSQL9.3 está instalado corretamente!
Cumprimentos.