Guía de administración de sistemas: administración de recursos y contenedores de Oracle Solaris y zonas de Oracle Solaris

Visibilidad y acceso a la zona global

La zona global es tanto la zona predeterminada para el sistema como la zona que se usa para el control administrativo de todo el sistema. Esta doble función plantea algunas cuestiones administrativas. Dado que las aplicaciones de la zona tienen acceso a los procesos y otros objetos del sistema en otras zonas, el efecto de las acciones administrativas puede ser mayor del esperado. Por ejemplo, las secuencias de cierre de servicios suelen utilizar el comando pkill para indicar a los procesos de un nombre concreto que deben cerrarse. Cuando se ejecuta una secuencia de este tipo desde la zona global, se señalarán todos estos procesos en el sistema, independientemente de la zona.

Con frecuencia se necesita el ámbito de todo el sistema. Por ejemplo, para supervisar el uso de recursos en todo el sistema, debe ver las estadísticas de los procesos de todo el sistema. La visualización de sólo la actividad de la zona global pasaría por alto información relevante de otras zonas del sistema que podrían estar compartiendo algunos o todos los recursos del sistema. Dicha visualización resulta especialmente importante cuando los recursos del sistema como la CPU no se particionan estrictamente utilizando las funciones de administración de recursos.

De este modo, los procesos de la zona global pueden observar los procesos y otros objetos de las zonas no globales. Esto permite que dichos procesos puedan observarse en todo el sistema. La posibilidad de controlar o enviar señales a procesos en otras zonas está limitada por el privilegio PRIV_PROC_ZONE. El privilegio es similar a PRIV_PROC_OWNER porque permite a los procesos modificar las restricciones que tienen los procesos sin privilegios. En este caso, la limitación es que los procesos sin privilegios en la zona global no pueden señalar ni controlar los procesos de otras zonas. Esto ocurre aunque coincidan los ID de usuario de los procesos o el proceso activo tenga el privilegio PRIV_PROC_OWNER. El privilegio PRIV_PROC_ZONE se puede eliminar de procesos que tengan otros privilegios para limitar las acciones a la zona global.

Para obtener información sobre la correspondencia de procesos mediante zoneidlist, consulte las páginas del comando man pgrep(1) y pkill(1).