De manera predeterminada, el servicio SMF svc:/application/pkg/mirror realiza una operación de pkgrecv periódica desde los orígenes del editor solaris definidos en esta imagen como /var/share/pkg/repositories/solaris. Esta operación pkgrecv inicia a las 2:30 a. m. un día de cada mes. Para cambiar este comportamiento predeterminado, configure el servicio como se describe en este procedimiento.
Al final de cada ejecución correcta de este servicio, los catálogos de repositorio se actualizan. No es necesario actualizar el repositorio para crear un índice de búsqueda.
Dado que este servicio se ejecuta de forma periódica, el repositorio se crea y también se mantiene actualizado. No necesita utilizar las instrucciones de actualización manual del repositorio que se muestran en este documento.
Otros sistemas pueden establecer su origen del editor solaris para este repositorio actualizado automáticamente o a un clon de este repositorio. Sólo un sistema debe tener un origen de editor en Internet y ejecutar el servicio de mirror para recibir automáticamente las actualizaciones.
De manera predeterminada, el servicio mirror transfiere paquetes desde el editor de solaris configurado en la imagen con raíz en /. Si bien no es posible especificar directamente los orígenes del editor en la configuración del servicio mirror, puede configurar la raíz de la imagen desde la cual recuperar esta información. En la raíz de la imagen, utilice pkg set-publisher para configurar los orígenes del editor para usar como fuentes de la transferencia pkgrecv para el repositorio de reflejo.
Si la configuración del editor que desea utilizar para servicio de reflejo es diferente de la configuración del editor que desea utilizar en esta imagen, cree una imagen de usuario en una ubicación compartida (no incluida en ningún entorno de inicio) y restablezca el valor de propiedad config/ref_image en el servicio mirror a esa nueva imagen, como se muestra en el ejemplo siguiente. El servicio mirror utilizará la configuración del editor de la imagen config/ref_image.
$ svccfg -s pkg/mirror:default setprop config/ref_image = /var/share/pkg/mirror_svc_ref_image $ pkg image-create /var/share/pkg/mirror_svc_ref_image
Si desea actualizar el repositorio de reflejo con paquetes de otros editores además del editor solaris, restablezca el valor de la propiedad config/publishers en el servicio mirror, como se muestra en el siguiente ejemplo que muestra cómo agregar los editores ha-cluster y solarisstudio.
$ svccfg -s pkg/mirror:default setprop config/publishers = solaris,ha-cluster,solarisstudio
Dado que este servicio se ejecuta de forma periódica, debe definir los orígenes del editor en un repositorio que proporcione actualizaciones regulares. Para los productos Oracle, es probable que desee establecer los orígenes del editor para que un repositorio de asistencia recupere las actualizaciones de repositorio de asistencia (SRU). En el ejemplo siguiente, se necesita la opción -R sólo si está configurando los editores en una raíz de imagen alternativa. Es posible que las opciones -k y -c no sean necesarias, en función de las URI de origen.
$ pkg -R /var/share/pkg/mirror_svc_ref_image set-publisher \ -g https://pkg.oracle.com/solaris/support/ -k ssl_key -c ssl_cert solaris $ pkg -R /var/share/pkg/mirror_svc_ref_image set-publisher \ -g https://pkg.oracle.com/ha-cluster/support/ -k ssl_key -c ssl_cert ha-cluster $ pkg -R /var/share/pkg/mirror_svc_ref_image set-publisher \ -g https://pkg.oracle.com/solarisstudio/support/ -k ssl_key -c ssl_cert solarisstudio
Utilice uno de los siguientes comandos para verificar los editores configurados en la nueva imagen:
$ pkg -R /var/share/pkg/mirror_svc_ref_image publisher $ pkg -R /var/share/pkg/mirror_svc_ref_image publisher solaris ha-cluster solarisstudio
Es posible que desee modificar otras propiedades del servicio mirror, como la hora en que se ejecuta el servicio o la ubicación del repositorio de reflejo.
Es posible que desee cambiar la hora en que se ejecuta el servicio para que coincida con más exactitud con la hora que espera que se actualicen los orígenes del editor reflejados. Para cambiar la hora en que se ejecuta el servicio, modifique el valor de la propiedad config/crontab_period.
Para cambiar la ubicación del repositorio de reflejo, modifique el valor de la propiedad config/repository. Si cambia la ubicación del repositorio de reflejo, mantenga el repositorio en una ubicación compartida. Consulte Mejores prácticas para la creación y el uso de repositorios de paquetes IPS locales. La ubicación predeterminada, /var/share/pkg/repositories/solaris, es una ubicación compartida no incluida en ningún entorno existente.
Utilice el comando svcs mirror para comprobar el estado del servicio mirror.
Si ha cambiado la configuración del servicio mirror, como se muestra en los comandos svccfg setprop en los pasos anteriores, actualice el servicio para confirmar los valores cambiados en la instantánea en ejecución. Si la salida del comando svcprop -p config mirror no muestra los valores que desea, asegúrese de que la salida del comando svccfg -s mirror:default listprop config muestre los valores que desee. Utilice svcadm refresh mirror:default o svccfg -s mirror:default refresh para confirmar los valores cambiados en la instantánea en ejecución del servicio. Utilice el comando svcprop -p config mirror nuevamente para confirmar que el servicio está configurado en la forma en que desea que esté configurado.
Utilice el siguiente comando para activar el servicio de reflejo:
$ svcadm enable mirror:default
Utilice el comando svcs mirror para confirmar que el servicio mirror está en línea. El servicio se ejecutará en la hora definida en la propiedad config/crontab_period.
Si el servicio está en línea, actualícelo para ejecutarlo inmediatamente. Debe ver el método svc-pkg-mirror y el comando pkgrecv que ejecuta el usuario pkg5srv.
Utilice el comando svcadm Disable mirror para desactivar este servicio. Es posible que desee ejecutar este servicio en un solo sistema para mantener un repositorio maestro. En otros sistemas, es probable que desee desactivar este servicio.
Utilice el comando svcs -xvL mirror para obtener más información para diagnosticar y solucionar el problema.
Una vez que el servicio mirror finaliza la ejecución, utilice los subcomandos info, list y verify del comando pkgrepo para comprobar que el repositorio se haya copiado o se haya actualizado correctamente. Si el comando pkgrepo verify informa errores, intente usar el comando pkgrepo fix para corregir los errores. Consulte la página del comando man pkgrepo(1).
Compruebe el valor de la propiedad config/crontab_period del servicio mirror para consultar cuándo se ejecutará el servicio. Mientras el servicio se está ejecutando, el comando svcs -p mirror muestra el estado del servicio como online* y muestra los procesos iniciados por este servicio. Espere hasta que el servicio de estado se muestra online y no haya ningún proceso asociado con el servicio antes de verificar el repositorio.
$ zfs snapshot rpool/VARSHARE/pkg/repositories/solaris@sol-11_2_0
Pasos siguientes
Es posible que no desee copiar el contenido de varios editores al mismo tiempo. En vez de configurar varios editores en una propiedad config/publishers, puede crear varias instancias del servicio pkg/mirror. Por ejemplo, la propiedad config/publishers puede configurarse en solaris para la instancia default, en ha-cluster para una nueva instancia pkg/mirror:ha-cluster y en solarisstudio para una nueva instancia pkg/mirror:solarisstudio. Del mismo modo, config/crontab_period puede configurarse de forma distinta para cada instancia. Puede almacenar el contenido de cada editor en un repositorio, como se muestra en este procedimiento, o puede definir un valor config/repository diferente para cada instancia pkg/mirror.
Véase también
Consulte Gestión de los servicios del sistema en Oracle Solaris 11.2 para obtener más información sobre los comandos SMF.