ulimit 是一个用于控制 shell 进程资源限制的命令。在 CentOS 系统中,ulimit 可以限制用户可以使用的系统资源,例如文件大小、进程数、内存使用等。这些限制对用户的影响主要体现在以下几个方面:
文件大小限制:ulimit 可以限制用户可以创建的文件的最大大小。如果用户尝试创建一个超过限制的文件,系统将报错。
ulimit -f <size>
进程数限制:ulimit 可以限制用户可以同时运行的最大进程数。如果用户尝试启动超过限制的进程,系统将报错。
ulimit -u <number>
内存使用限制:ulimit 可以限制用户进程可以使用的最大内存。如果用户进程尝试使用超过限制的内存,系统将终止该进程。
ulimit -m <size>
打开文件描述符限制:ulimit 可以限制用户进程可以同时打开的最大文件描述符数量。如果用户进程尝试打开超过限制的文件描述符,系统将报错。
ulimit -n <number>
CPU 时间限制:ulimit 可以限制用户进程可以使用的最大 CPU 时间。如果用户进程尝试使用超过限制的 CPU 时间,系统将终止该进程。
ulimit -t <seconds>
数据段大小限制:ulimit 可以限制用户进程可以使用的最大数据段大小。如果用户进程尝试使用超过限制的数据段大小,系统将报错。
ulimit -d <size>
要查看当前用户的资源限制,可以使用以下命令:
ulimit -a
要修改用户的资源限制,可以使用 ulimit 命令,例如:
ulimit -m <size>
需要注意的是,ulimit 设置的限制仅对当前 shell 会话有效。要永久更改用户的资源限制,需要修改 /etc/security/limits.conf 文件。