Utilice el comando prctl para realizar interrogaciones de tiempo de ejecución y modificaciones de los controles de recursos asociados con un proceso, una tarea o un proyecto activos en el sistema. Consulte la página del comando man prctl(1) para obtener más información.
Debe utilizarse este procedimiento en un sistema en el que no se hayan configurado ni modificado controles de recursos. En el archivo /etc/system o la base de datos project sólo puede haber entradas no predeterminadas.
Utilice el comando prctl en cualquier proceso, como el shell en ejecución.
# prctl $$ process: 100337: -sh NAME PRIVILEGE VALUE FLAG ACTION RECIPIENT process.max-port-events privileged 65.5K - deny - system 2.15G max deny - process.crypto-buffer-limit system 16.0EB max deny - process.max-crypto-sessions system 18.4E max deny - process.add-crypto-sessions privileged 100 - deny - system 18.4E max deny - process.min-crypto-sessions privileged 20 - deny - system 18.4E max deny - process.max-msg-messages privileged 8.19K - deny - system 4.29G max deny - process.max-msg-qbytes privileged 64.0KB - deny - system 16.0EB max deny - process.max-sem-ops privileged 512 - deny - system 2.15G max deny - process.max-sem-nsems privileged 512 - deny - system 32.8K max deny - process.max-address-space privileged 16.0EB max deny - system 16.0EB max deny - process.max-file-descriptor basic 256 - deny 100337 privileged 65.5K - deny - system 2.15G max deny - process.max-core-size privileged 8.00EB max deny - system 8.00EB max deny - process.max-stack-size basic 8.00MB - deny 100337 privileged 8.00EB - deny - system 8.00EB max deny - process.max-data-size privileged 16.0EB max deny - system 16.0EB max deny - process.max-file-size privileged 8.00EB max deny,signal=XFSZ - system 8.00EB max deny - process.max-cpu-time privileged 18.4Es inf signal=XCPU - system 18.4Es inf none - task.max-cpu-time system 18.4Es inf none - task.max-lwps system 2.15G max deny - project.max-contracts privileged 10.0K - deny - system 2.15G max deny - project.max-device-locked-memory privileged 499MB - deny - system 16.0EB max deny - project.max-port-ids privileged 8.19K - deny - system 65.5K max deny - project.max-shm-memory privileged 1.95GB - deny - system 16.0EB max deny - project.max-shm-ids privileged 128 - deny - system 16.8M max deny - project.max-msg-ids privileged 128 - deny - system 16.8M max deny - project.max-sem-ids privileged 128 - deny - system 16.8M max deny - project.max-tasks system 2.15G max deny - project.max-lwps system 2.15G max deny - project.cpu-shares privileged 1 - none - system 65.5K max none - zone.max-lwps system 2.15G max deny - zone.cpu-shares privileged 1 - none - system 65.5K max none - |
Visualice el máximo de descriptores de archivo para el shell que está en ejecución.
# prctl -n process.max-file-descriptor $$ process: 110453: -sh NAME PRIVILEGE VALUE FLAG ACTION RECIPIENT process.max-file-descriptor basic 256 - deny 110453 privileged 65.5K - deny - system 2.15G max deny |
Este procedimiento de ejemplo utiliza el comando prctl para añadir temporalmente un nuevo valor con privilegios con el fin de denegar el uso de más de tres procesos ligeros por proyecto para el proyecto x-files. El resultado se puede comparar con el resultado de Cómo definir el número máximo de procesos ligeros para cada tarea de un proyecto.
Conviértase en superusuario o asuma una función similar.
Las funciones incluyen autorizaciones y comandos con privilegios. Para obtener más información sobre las funciones, consulte Using the Solaris Management Tools With RBAC (Task Map) de System Administration Guide: Basic Administration.
Utilice newtask para unir el proyecto x-files.
# newtask -p x-files |
Utilice el comando id con la opción - p para verificar que se ha unido el proyecto correcto.
# id -p uid=0(root) gid=1(other) projid=101(x-files) |
Añada un nuevo valor con privilegios para project.max-lwps que limite el número de procesos ligeros a tres.
# prctl -n project.max-lwps -t privileged -v 3 -e deny -i project x-files |
Compruebe el resultado.
# prctl -n project.max-lwps -i project x-files process: 111108: csh NAME PRIVILEGE VALUE FLAG ACTION RECIPIENT project.max-lwps privileged 3 - deny - system 2.15G max deny - |
Conviértase en superusuario o asuma una función similar.
Las funciones incluyen autorizaciones y comandos con privilegios. Para obtener más información sobre las funciones, consulte Using the Solaris Management Tools With RBAC (Task Map) de System Administration Guide: Basic Administration.
Utilice el comando prctl con la opción -r para cambiar el valor inferior del control de recurso process.max-file-descriptor.
# prctl -n process.max-file-descriptor -r -v 128 $$ |
Conviértase en superusuario o asuma una función similar.
Las funciones incluyen autorizaciones y comandos con privilegios. Para obtener más información sobre las funciones, consulte Using the Solaris Management Tools With RBAC (Task Map) de System Administration Guide: Basic Administration.
Visualice el valor de project.cpu-shares en el proyecto group.staff.
# prctl -n project.cpu-shares -i project group.staff project: 2: group.staff NAME PRIVILEGE VALUE FLAG ACTION RECIPIENT project.cpu-shares privileged 1 - none - system 65.5K max none |
Sustituya el valor actual project.cpu-shares 1 con el valor 10.
# prctl -n project.cpu-shares -v 10 -r -i project group.staff |
Visualice el valor de project.cpu-shares en el proyecto group.staff.
# prctl -n project.cpu-shares -i project group.staff project: 2: group.staff NAME PRIVILEGE VALUE FLAG ACTION RECIPIENT project.cpu-shares privileged 10 - none - system 65.5K max none |