Omitir V�nculos de navegaci�n | |
Salir de la Vista de impresi�n | |
Páginas del comando man de Image Packaging System Oracle Solaris 11 Information Library (Español) |
- Servidor de depósitos de Image Packaging System
/usr/lib/pkg.depotd [-a address] [-d inst_root] [-p port] [-s threads] [-t socket_timeout] [--add-content] [--cfg] [--content-root] [--debug feature_list] [--disable-ops=op[/1][,...]] [--log-access] [--log-errors] [--mirror] [--proxy-base url] [--readonly] [--rebuild] [--ssl-cert-file] [--ssl-dialog] [--ssl-key-file] [--writable-root]
pkg.depotd es el servidor de depósitos de Image Packaging System. Proporciona acceso de red a los datos incluidos en un repositorio de paquetes. Los clientes que no admiten acceso directo a un repositorio por medio del sistema de archivos, o para los cuales el acceso de red es el único método de transporte disponible o preferido, suelen utilizar el depósito de paquetes.
Los clientes, como pkg(1), el cliente de recuperación, pueden recuperar una lista de paquetes y metadatos de paquetes desde un repositorio directamente o mediante el servidor de depósitos. pkgsend(1), el cliente de publicación, puede enviar versiones nuevas de paquetes a un repositorio directamente o mediante el servidor de depósitos. pkgrepo(1) se puede utilizar para crear repositorios para usar con el servidor de depósitos o para gestionarlos directamente o mediante el servidor de depósitos.
pkg.depotd se ejecuta habitualmente como un servicio en el sistema. Los desarrolladores de software y paquetes pueden ejecutar copias privadas para la realización de pruebas.
El depósito no proporciona ningún método de control de acceso propio. De manera predeterminada, todos los clientes que se pueden conectar pueden leer los datos de todos paquetes y publicar versiones nuevas de paquetes. La excepción es que cuando se ejecuta en la utilidad de gestión de servicios (SMF), el valor predeterminado es que se ejecute en modo de sólo lectura. En la sección "Notas" que aparece a continuación, se describen algunas de las prácticas recomendadas para el mantenimiento de un servidor de depósitos público con contenido en evolución.
El servidor pkg.depot se suele configurar mediante las propiedades de smf(5) asociadas a su servicio. Se reconocen las siguientes propiedades:
(net_address). La dirección IP en la que se escuchan conexiones. El valor predeterminado es 0.0.0.0 (INADDR_ANY), que escucha en todas las interfaces activas. Para escuchar en todas las interfaces IPv6 activas, utilice ::. Sólo se utiliza el primer valor.
(astring). La ruta del sistema de archivos en la que la instancia debe buscar su contenido web estático y de otro tipo. El valor predeterminado es /usr/share/lib/pkg.
(astring). Una lista separada por comas de funciones de depuración para activar. Los valores posibles son:
Registra los encabezados de cada solicitud en el registro de errores.
(astring). Una lista separada por comas de operaciones que se deben desactivar para el servidor de depósitos. Las operaciones se indican de la siguiente manera: operation[/version] (por ejemplo, catalog o search_1).
(astring). La ruta a la imagen cuya información de archivo se utilizará como antememoria para los datos de archivo.
(astring). La ruta del sistema de archivos en la que la instancia debe buscar los datos de su repositorio. Requerido a menos que se haya proporcionado file_root o PKG_REPO. El valor predeterminado es /var/pkgrepo.
(astring). El destino de cualquier información relacionada con el acceso registrada por el proceso del depósito. Los valores posibles son: stderr, stdout, none o un nombre de ruta absoluta. El valor predeterminado es stdout si stdout es tty. Si stdout no es tty, el valor predeterminado es none.
(astring). El destino de cualquier error u otra información registrados por el proceso del depósito. Los valores posibles son: stderr, stdout, none o un nombre de ruta absoluta. El valor predeterminado es stderr.
(boolean). Establece si se utiliza el modo de reflejo de paquetes. Si es true, se desactivan las operaciones de publicación y metadatos, y sólo se proporciona una interfaz de usuario del navegador limitada. Esta propiedad no puede ser true cuando la propiedad pkg/readonly es true. El valor predeterminado es false.
(count). El número de puerto en el que la instancia debe escuchar solicitudes de paquetes entrantes. Si no se proporcionó información sobre la clave y el certificado SSL, el valor predeterminado es 80; de lo contrario, el valor predeterminado es 443.
(uri). Esto cambia la URL base para el servidor de depósitos y es muy útil cuando se ejecuta en segundo plano con Apache u otro servidor web en una configuración de proxy inverso.
(boolean). Establece si las operaciones de modificación, como las iniciadas por pkgsend(1), se encuentran desactivadas. Las operaciones de recuperación todavía están disponibles. Esta propiedad no puede ser true cuando la propiedad pkg/mirror es true. El valor predeterminado es true.
(count). El número máximo de segundos durante los que el servidor debe esperar una respuesta de un cliente antes de cerrar la conexión. El valor predeterminado es 60.
(count). El tamaño máximo del archivo de clasificación del indexador. Se utiliza para limitar la cantidad de RAM que utiliza el depósito para la indexación, o para aumentarla para acelerar el proceso.
(astring). El nombre de ruta absoluta para un archivo de certificado con codificación PEM. El valor predeterminado esnone. Esta propiedad se debe usar con ssl_key_file. El depósito sólo responde a las solicitudes SSL si se proporcionan ssl_cert_file y /ssl_key_file.
(astring). Especifica el método que se debe utilizar para obtener la frase de contraseña utilizada para descifrar ssl_key_file. Los valores posibles son:
Solicita la frase de contraseña. Éste es el valor predeterminado.
Ejecuta el programa externo especificado para obtener la frase de contraseña. El primer argumento para el programa es '' y está reservado. El segundo argumento para el programa es el número de puerto del servidor. La frase de contraseña se imprime en stdout.
Intenta recuperar el valor de la propiedad pkg_secure/ssl_key_passphrase de la instancia de servicio relacionada con el FMRI.
(astring). El nombre de ruta absoluta para un archivo de claves privadas con codificación PEM. Esta propiedad se debe utilizar junto con la propiedad ssl_cert_file. El depósito sólo responde a las solicitudes SSL si se proporcionan /ssl_key_file y ssl_cert_file.
(count). El número de subprocesos iniciados para atender solicitudes. El valor predeterminado es 60. Sólo es adecuado para implementaciones pequeñas. Este valor debe equivaler aproximadamente al número de clientes simultáneos multiplicado por 20. El valor máximo de threads es 5.000.
(astring). La ruta del sistema de archivos de un directorio en el que el programa tiene acceso de escritura. Se utiliza con la opción -readonly para activar el servidor de depósitos con el fin de crear archivos, como índices de búsqueda, sin necesidad de disponer de acceso de escritura a la información del paquete.
(astring). La contraseña que se utilizará para descifrar pkg/ssl_key_file. Este valor está protegido con autorización de lectura mediante el atributo solaris.smf.read.pkg-server.
La presentación y el comportamiento de la interfaz de usuario del navegador (BUI) del servidor de depósitos se controlan mediante las siguientes propiedades:
(astring). Un párrafo descriptivo para la fuente RSS/Atom.
(astring). El nombre de ruta de una imagen pequeña utilizada para representar visualmente la fuente RSS/Atom. El nombre de ruta se debe relacionar con content_root. El valor predeterminado es web/_themes/pkg-block-icon.png.
(astring). El nombre de ruta de una imagen de gran tamaño que se utilizará para marcar o identificar visualmente la fuente RSS/Atom. Este valor se debe relacionar con content_root. El valor predeterminado es web/_themes/pkg-block-icon.png.
(astring). Un nombre corto y descriptivo para las fuentes RSS/Atom generadas por el depósito que sirve al repositorio. El valor predeterminado es "package repository feed".
(count). La cantidad de horas transcurridas antes de que se generara por última vez la fuente para el repositorio, para incluirla al generar la fuente.
El depósito de paquetes también puede actuar como servidor de reflejo para imágenes de clientes locales desde pkg(5). Esto permite a los clientes que comparten una subred en una LAN reflejar sus antememorias de archivo. Los clientes pueden descargar archivos entre ellos, y, de esta manera, reducir la carga del servidor de depósitos de paquetes. Esta funcionalidad está disponible como un servicio de depósito alternativo configurado mediante smf(5). Utiliza mDNS y dns-sd para la detección de servicio.
El reflejo mDNS generalmente se configura mediante las propiedades smf(5) asociadas a su servicio. Se reconocen las siguientes propiedades:
(astring). La ruta a la imagen cuya información de archivo se utilizará como antememoria para los datos de archivo. El valor predeterminado es /.
(count). El número de puerto en el que la instancia debe escuchar solicitudes de paquetes entrantes. El valor predeterminado es 80.
pkg.depotd puede leer la información de configuración base desde un archivo o desde los datos de la propiedad de una instancia de servicio smf(5) existente.
El nombre de ruta del archivo que se utilizará al leer y escribir los datos de configuración, o una cadena con el formato smf:fmri, donde fmri es el identificador de recurso de gestión de errores (FMRI) del servicio de la instancia de la cual se leerán los datos de configuración. Consulte “Configuración de depósito” a continuación para obtener información sobre el formato del archivo especificado.
Si no hay ningún origen de configuración preexistente disponible, o si se deben sustituir los valores leídos desde el archivo de configuración proporcionado mediante --cfg, se pueden utilizar las siguientes opciones para modificar el comportamiento predeterminado del servidor de depósitos:
Consulte pkg/address arriba.
Consulte pkg/content_root arriba.
Consulte pkg/inst_root arriba.
Consulte pkg/debug arriba.
Consulte pkg/disable_ops arriba.
Consulte pkg/image_root arriba.
Consulte pkg/log_access arriba.
Consulte pkg/log_errors arriba.
Consulte pkg/mirror arriba.
Consulte pkg/port arriba.
Consulte pkg/proxy_base arriba. Esta opción se ignora si se proporciona un valor vacío.
Consulte pkg/readonly arriba.
Consulte pkg/threads arriba.
Consulte pkg/sort_file_max_size arriba.
Consulte pkg/ssl_cert_file arriba.
Consulte pkg/ssl_dialog arriba.
Consulte pkg/ssl_key_file arriba.
Consulte pkg/socket_timeout arriba.
Consulte pkg/writable_root arriba.
Se proporciona funcionalidad de gestión y administrativa adicional para repositorios de paquetes mediante pkgrepo(1).
Cuando se proporciona un archivo de configuración (en lugar de un FMRI smf(5)) mediante la opción --cfg, el servidor de depósitos lee y escribe todos los datos de configuración en un formato de texto simple. Los datos de configuración se describen en la sección “Propiedades SMF” arriba. Los datos de configuración están compuestos por secciones, que empiezan con el encabezado [section] y siguen con las entradas name = value. Las continuaciones están en el estilo de RFC 822. Los valores se pueden dividir en varias líneas comenzando líneas de continuación con un espacio en blanco.
Los valores requeridos que no se hayan proporcionado en el archivo de configuración se deben proporcionar mediante la opción incluida en “Opciones” anteriormente. Un archivo de configuración de ejemplo podría tener este aspecto:
[pkg] port = 80 inst_root = /export/repo [pub_example_com] feed_description = example.com's software update log
Ejemplo 1 Activación del servidor de depósitos
# svcadm enable application/pkg/server
Ejemplo 2 Cambio del puerto de escucha del servidor
# svccfg -s application/pkg/server setprop pkg/port = 10000 # svcadm refresh application/pkg/server # svcadm restart application/pkg/server
Ejemplo 3 Activación del reflejo
# svcadm enable application/pkg/dynamic-mirror
Especifica el directorio que contiene el repositorio que se debe atender. Este valor se ignora si se especifica -d.
Especifica el directorio que contiene contenido estático atendido por el depósito. Los archivos que aparecen a continuación, en “Archivos”, deben estar presentes en este directorio, aunque su contenido puede diferir del contenido predeterminado suministrado.
Se devolvieron los siguientes valores de salida:
Operación correcta.
Se produjo un error.
Se especificaron opciones de línea de comandos no válidas.
Se produjo una excepción no anticipada.
Ubicación predeterminada del contenido de la presentación. Modifique pkg/content_root para seleccionar una ubicación alternativa.
Consulte attributes(5) para ver descripciones de los atributos siguientes:
|
dns-sd(1M), mdnsd(1M), pkg(1), pkgrepo(1), pkgsend(1), syslogd(1M), smf(5)
http://hub.opensolaris.org/bin/view/Project+pkg/
El servicio pkd.depotd se gestiona mediante SMF con el identificador de servicio svc:/application/pkg/server.
El servicio de reflejo mDNS se gestiona mediante SMF con el identificador de servicio svc:/application/pkg/dynamic-mirror.
Para controlar el acceso de lectura al depósito, puede utilizar un proxy inverso HTTP en combinación con métodos de autenticación, como acceso de certificado SSL basado en cliente, que pkg(1) admite de manera nativa.
Los·cambios·en·la·configuración·o·los·cambios·en·los·datos·de·los·paquetes·mediante·operaciones·basadas·en·el·sistema·de·archivos,·requieren·el·reinicio del proceso del servidor de depósitos para que los cambios se puedan reflejar en las operaciones y la salida. Utilice uno de los métodos siguientes para reiniciar el proceso del servidor de depósitos:
Use svcadm(1M) para reiniciar la instancia application/pkg/server.
Envíe una señal SIGUSR1 al proceso del servidor de depósitos mediante kill(1). Con esto se ejecutará un “reinicio normal” que dejará el proceso intacto, pero volverá a cargar todos los datos de configuración, paquete y búsqueda:
# kill -USR1 pid