linux ulimit 问题
最近在维护论坛,论坛的构建是linux nginx+php5.3+mysql5.1。最近一段时间老是出现问题,刚开始由于php版本以及设置的问题还有以前老版本留下的问题,使得论坛老被挂马,找了一个星期的问题,各处都补漏了一下的!php也升级了一下!
刚升级完,各种问题就来了,论坛上传不 了图片,论坛后台代码溢出,论坛http500错误。一大堆问题让人头痛。经过几天的研究,在*NIX将TCP/IP也作为文件来访问,而一般系统默认的访问文件数是1024。如果是在运营级别服务器上面就需要调整系统的最大访问文件数来提高网络并发性能。此原因老是导致http500内部服务器错误,修改一下访问文件数。调整方法就是ulimit命令,比如ulimit -SHn 65535。
下面是ulimit设置的参数与相关的注意事项
ulimit 参数介绍:
-H 设置硬件资源限制.
-S 设置软件资源限制.
-a 显示当前所有的资源限制.
-c size:设置core文件的最大值.单位:blocks
-d size:设置数据段的最大值.单位:kbytes
-f size:设置创建文件的最大值.单位:blocks
-l size:设置在内存中锁定进程的最大值.单位:kbytes
-m size:设置可以使用的常驻内存的最大值.单位:kbytes
-n size:设置内核可以同时打开的文件描述符的最大值.单位:n
-p size:设置管道缓冲区的最大值.单位:kbytes
-s size:设置堆栈的最大值.单位:kbytes
-t size:设置CPU使用时间的最大上限.单位:seconds
-v size:设置虚拟内存的最大值.单位:kbytes
一般可以设置 ulimit -SHn 65535
请注意,该命令只在当前shell环境下有效,而且只能由root权限来设置,一般可以放在需要启动服务的命令脚本里,另外,如果你是用root登录来启动服务的话,防止忘记这条命令,一般可以设置在~/.root 下的 .bash_profile 文件或者/etc/rc.local文件中,不建议在/etc/profile 中设置,因为该命令只有root用户有权限将数字增加到超过系统默认的上限(比如 -n 打开文件数 1024 )。
相关文档:
4、alarm和 setitimer系统调用
系统调用alarm的功能是设置一个定时器,当定时器计时到达时,将发出一个信号给进程。该调用的声明格式如下:
unsigned int alarm(unsigned int seconds);
&n ......
xp下从硬盘安装Linux,包括redflag6 RedHat9 fc4都类似(都不新!),但是安装过程绝对详细!
1。首先是准备条件
(1) 腾出地方:xp下要有地方放Linux的镜像(.iso),而且所在磁盘要为fat32格式,可以用norton partitionmagic(很不错的工具,网上很多下载!)将磁盘格式转换 不过因为软 ......
stat函数讲解(转)
表头文件: #include <sys/stat.h>
#include <unistd.h>
定义函数: int stat(const char *file_name, struct stat *buf);
函数说明: 通过文件名filename获取文件信息 ......
[root@localhost root]# ls -l
会显示目录或文件信息:drwxr-xr-x 2 root root 4096 06-29 14:30 Test
-rwxr--r-- 2 root roo ......
cat awk '{print}'
cat -s awk '{blank = NF == 0 ? ++blan ......