Servez-vous de la commande prctl pour procéder à des interrogations d'exécution et à des modifications des contrôles des ressources associés à un processus, une tâche ou un projet actif sur le système. Pour plus d'informations, voir la page de manuel prctl(1).
Appliquez cette procédure à un système pour lequel aucun contrôle de ressource n'a été prévu ou modifié. Le fichier /etc/system ou la base de données du projet ne peut contenir que des entrées non définies par défaut.
Appliquez la commande prctl au processus de votre choix, par exemple le shell actuellement en cours d'exécution.
# 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 -
|
Affichez le nombre maximum de descripteurs de fichier pour le shell actuellement en cours d'exécution.
# 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
|
Cet exemple de procédure fait appel à la commande prctl pour ajouter temporairement une nouvelle valeur privilégiée afin d'interdire l'utilisation de plus de trois LWP par projet pour le projet x-files. Le résultat est comparable à celui obtenu dans la section Définition du nombre maximum de processus légers (LWP) pour chaque tâche d'un projet.
Connectez-vous en tant que superutilisateur ou prenez un rôle équivalent.
Les rôles contiennent des autorisations et des commandes privilégiées. Pour plus d'informations au sujet des rôles, reportez-vous à la section Using the Solaris Management Tools With RBAC (Task Map) du System Administration Guide: Basic Administration.
Utilisez la commande newtask pour rejoindre le projet x-files.
# newtask -p x-files |
Exécutez la commande id avec l'option -p pour vous assurer que le projet rejoint est celui qui convient.
# id -p uid=0(root) gid=1(other) projid=101(x-files) |
Ajoutez une nouvelle valeur privilégiée pour project.max-lwps afin de limiter le nombre de LWP à trois.
# prctl -n project.max-lwps -t privileged -v 3 -e deny -i project x-files |
Vérifiez le résultat obtenu.
# 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 -
|
Connectez-vous en tant que superutilisateur ou prenez un rôle équivalent.
Les rôles contiennent des autorisations et des commandes privilégiées. Pour plus d'informations au sujet des rôles, reportez-vous à la section Using the Solaris Management Tools With RBAC (Task Map) du System Administration Guide: Basic Administration.
Exécutez la commande prctl avec l'option -r pour changer la valeur minimale du contrôle de ressource process.max-file-descriptor .
# prctl -n process.max-file-descriptor -r -v 128 $$ |
Connectez-vous en tant que superutilisateur ou prenez un rôle équivalent.
Les rôles contiennent des autorisations et des commandes privilégiées. Pour plus d'informations au sujet des rôles, reportez-vous à la section Using the Solaris Management Tools With RBAC (Task Map) du System Administration Guide: Basic Administration.
Vérifiez la valeur de project.cpu-shares dans le projet 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
|
Remplacez la valeur actuelle de project.cpu-shares (1) par la valeur 10.
# prctl -n project.cpu-shares -v 10 -r -i project group.staff |
Vérifiez la valeur de project.cpu-shares dans le projet 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
|