Solaris10 uses projadd to add resource restrictions (seminfo _*)
When installing oracle, configure resource restrictions:
noexec_user_stack=1semsys:seminfo_semmni=100semsys:seminfo_semmns=1024semsys:seminfo_semmsl=256semsys:seminfo_semvmx=32767shmsys:shminfo_shmmax=4294967295shmsys:shminfo_shmmni=100rlim_fd_max=65536rlim_fd_cur=4096maxuprc=16384max_nprocs=3000
Use project (effective immediately, permanent)
Project is a new feature of Solaris10. You can set the project parameter to a user or a group of users. The setting takes effect immediately.
'However, the result of the root user is only affected by parameters in/etc/system, but not by project user. oracle. the root user does not belong to this project .'
The following is a configuration example:
Bash-3.2 #: // #> projadd user. oracle (create a project user. oracle) bash-3.2 #:/#> id-p oracleuid = 100 (oracle) gid = 1 (other) projid = 100 (user. oracle) (the oracle user belongs to the project user. oracle) bash-3.2 #:/#> projmod-a-K "process. max-file-descriptor = (basic, 65534, deny) "user. oraclebash-3.2 #:/#> projmod-a-K "process. max-file-descriptor = (priv, 65535, deny) "user. oraclebash-3.2 #:/#> grep 'user. oracle '/etc/projectuser. oracle: 100: process. max-file-descriptor = (basic, 65534, deny), (priv, 65535, deny)
Set the values of basic and privilege to 65534 and 65535 respectively. The maximum hard limit of 65535 cannot be exceeded in/etc/system;
bash-3.2# :/ #>tail -2 /etc/systemset rlim_fd_cur=1024set rlim_fd_max=65535bash-3.2# plimit $$13110: bashresource current maximumtime(seconds) unlimited unlimitedfile(blocks) unlimited unlimiteddata(kbytes) unlimited unlimitedstack(kbytes) 10240 unlimitedcoredump(blocks) unlimited unlimitednofiles(descriptors) 256 65536vmemory(kbytes) unlimited unlimitedbash-3.2#
Root user results are only affected by parameters in/etc/system, but not by project user. oracle. root user does not belong to this project.
bash-3.2# su - oracleOracle Corporation SunOS 5.10 Generic Patch January 2005-sh: TEMP=/tmp: is not an identifier$ bashbash-3.2$ plimit $$14704: bashresource current maximumtime(seconds) unlimited unlimitedfile(blocks) unlimited unlimiteddata(kbytes) unlimited unlimitedstack(kbytes) 10240 unlimitedcoredump(blocks) unlimited unlimitednofiles(descriptors) 65534 65535vmemory(kbytes) unlimited unlimitedbash-3.2$
-- Modify other parameters as shown above:
noexec_user_stack=1semsys:seminfo_semmni=100semsys:seminfo_semmns=1024semsys:seminfo_semmsl=256semsys:seminfo_semvmx=32767shmsys:shminfo_shmmax=4294967295shmsys:shminfo_shmmni=100rlim_fd_max=65536rlim_fd_cur=4096maxuprc=16384max_nprocs=3000projmod -a -K "project.max-sem-ids=(priv,100,deny)" user.oracleprojmod -a -K "process.max-sem-nsems=(priv,256,deny)" user.oracleprojmod -a -K "project.max-shm-memory=(priv,4294967295,deny)" user.oracleprojmod -a -K "project.max-shm-ids=(priv,100,deny)" user.oracle