没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
inux ulimit使用
2010-11-08 13:30
ulimit -a 用来显示当前的各种用户进程限制。
Linux对于每个用户,系统限制其最大进程数。为提高性能,可以根据设备资源情况,
设置各linux 用户的最大进程数,下面我把某linux用户的最大进程数设为10000个:
ulimit -u 10000
对于需要做许多 socket 连接并使它们处于打开状态的 Java 应用程序而言,
最好通过使用 ulimit -n xx 修改每个进程可打开的文件数,缺省值是 1024。
ulimit -n 4096 将每个进程可以打开的文件数目加大到4096,缺省为1024
其他建议设置成无限制(unlimited)的一些重要设置是:
数据段长度:ulimit -d unlimited
最大内存大小:ulimit -m unlimited
堆栈大小:ulimit -s unlimited
CPU 时间:ulimit -t unlimited
虚拟内存:ulimit -v unlimited
暂时地,适用于通过 ulimit 命令登录 shell 会话期间。
永久地,通过将一个相应的 ulimit 语句添加到由登录 shell 读取的文件中, 即特定于 shell 的用户资源文件,如:
1)、解除 Linux 系统的最大进程数和最大文件打开数限制:
vi /etc/security/limits.conf
# 添加如下的行
* soft noproc 11000
* hard noproc 11000
* soft nofile 4100
* hard nofile 4100
说明:* 代表针对所有用户
noproc 是代表最大进程数
nofile 是代表最大文件打开数
2010-11-08 13:30
ulimit -a 用来显示当前的各种用户进程限制。
Linux对于每个用户,系统限制其最大进程数。为提高性能,可以根据设备资源情况,
设置各linux 用户的最大进程数,下面我把某linux用户的最大进程数设为10000个:
ulimit -u 10000
对于需要做许多 socket 连接并使它们处于打开状态的 Java 应用程序而言,
最好通过使用 ulimit -n xx 修改每个进程可打开的文件数,缺省值是 1024。
ulimit -n 4096 将每个进程可以打开的文件数目加大到4096,缺省为1024
其他建议设置成无限制(unlimited)的一些重要设置是:
数据段长度:ulimit -d unlimited
最大内存大小:ulimit -m unlimited
堆栈大小:ulimit -s unlimited
CPU 时间:ulimit -t unlimited
虚拟内存:ulimit -v unlimited
暂时地,适用于通过 ulimit 命令登录 shell 会话期间。
永久地,通过将一个相应的 ulimit 语句添加到由登录 shell 读取的文件中, 即特定于 shell 的用户资源文件,如:
1)、解除 Linux 系统的最大进程数和最大文件打开数限制:
vi /etc/security/limits.conf
# 添加如下的行
* soft noproc 11000
* hard noproc 11000
* soft nofile 4100
* hard nofile 4100
说明:* 代表针对所有用户
noproc 是代表最大进程数
nofile 是代表最大文件打开数
2)、让 SSH 接受 Login 程式的登入,方便在 ssh 客户端查看 ulimit -a 资源限制:
a、vi /etc/ssh/sshd_config
把 UserLogin 的值改为 yes,并把 # 注释去掉
b、重启 sshd 服务:
/etc/init.d/sshd restart
3)、修改所有 linux 用户的环境变量文件:
vi /etc/profile
ulimit -u 10000
ulimit -n 4096
ulimit -d unlimited
ulimit -m unlimited
ulimit -s unlimited
ulimit -t unlimited
ulimit -v unlimited
Linux(kernel 2.6.*)下ulimit与core dump
2010-09-13 16:27core dump一般指用户空间的进程在收到signal时,kernel dump出进程终止前的运行环境/状态,用来分析和调试程序。
程序自身问题导致进程在在运行时发生错误,kernel会发出信号将其终止,也可以是人为的kill掉进程。进程收到信号时可以进入自己的信号处理机制,如果没有则进入系统默认的信号处理机制,信号有很多种类,只有部分信号系统的默认处理是core dump,常见的SIGQUIT,在程序运行时按键盘“ctl+\”。
Linux下ulimit命令是bash的“内建”命令,用来控制进程对系统资源的使用,这些限制仅仅适用于有当前shell内运行的进程或者子孙进程,因为子孙进程会继承父进程的资源限制条件。反过来,子孙进程自己修改了资源限制条件,不会影响父进程。命令“ulimit -c [num]”是用来查看和设置core dump文件大小的,num指定core dump文件大小,以K为单位。
core dump出来的文件名默认情况下为“core.PID”,与此设置相关的2个参数是:
/proc/sys/kernel/core_uses_pid 默认为1
/proc/sys/kernel/core_pattern 默认是“core”,可以加上时间戳
[root@localhost]# echo "core%t" > /proc/sys/kernel/core_pattern
这样core dump文件名就是core1284395646.19406,1284395646是从1970到当前时间的秒数,19406是进程号。
用shell脚本验证一下core dump的功能很容易:
a、vi /etc/ssh/sshd_config
把 UserLogin 的值改为 yes,并把 # 注释去掉
b、重启 sshd 服务:
/etc/init.d/sshd restart
3)、修改所有 linux 用户的环境变量文件:
vi /etc/profile
ulimit -u 10000
ulimit -n 4096
ulimit -d unlimited
ulimit -m unlimited
ulimit -s unlimited
ulimit -t unlimited
ulimit -v unlimited
Linux(kernel 2.6.*)下ulimit与core dump
2010-09-13 16:27core dump一般指用户空间的进程在收到signal时,kernel dump出进程终止前的运行环境/状态,用来分析和调试程序。
程序自身问题导致进程在在运行时发生错误,kernel会发出信号将其终止,也可以是人为的kill掉进程。进程收到信号时可以进入自己的信号处理机制,如果没有则进入系统默认的信号处理机制,信号有很多种类,只有部分信号系统的默认处理是core dump,常见的SIGQUIT,在程序运行时按键盘“ctl+\”。
Linux下ulimit命令是bash的“内建”命令,用来控制进程对系统资源的使用,这些限制仅仅适用于有当前shell内运行的进程或者子孙进程,因为子孙进程会继承父进程的资源限制条件。反过来,子孙进程自己修改了资源限制条件,不会影响父进程。命令“ulimit -c [num]”是用来查看和设置core dump文件大小的,num指定core dump文件大小,以K为单位。
core dump出来的文件名默认情况下为“core.PID”,与此设置相关的2个参数是:
/proc/sys/kernel/core_uses_pid 默认为1
/proc/sys/kernel/core_pattern 默认是“core”,可以加上时间戳
[root@localhost]# echo "core%t" > /proc/sys/kernel/core_pattern
这样core dump文件名就是core1284395646.19406,1284395646是从1970到当前时间的秒数,19406是进程号。
用shell脚本验证一下core dump的功能很容易:
剩余32页未读,继续阅读
资源评论
zhujun02
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功