`
onedada
  • 浏览: 103299 次
  • 性别: Icon_minigender_1
  • 来自: 宁波
社区版块
存档分类
最新评论

CentOS ulimit系统命令修改

 
阅读更多

本文转载自:     http://os.51cto.com/art/201001/178571.htm

 

 

这个值可用CentOS ulimit命令来修改,但CentOS ulimit命令修改的数值只对当前登录用户的目前使用环境有效,系统重启或者用户退出后就会失效.

在向大家详细介绍CentOS ulimit之前,首先让大家了解下CentOS ulimit,然后全面介绍CentOS ulimit,希望对大家有用。CentOS ulimit值(Linux文件句柄数量)在CentOS5(RHEL5)中的调整。

在Linux下面部署应用的时候,有时候会遇上Socket/File: Can’t open so many files的问题,比如还有Squid做代理,当文件打开数到900多时速能就非常快的下降,有可能打不开网页.
其实Linux是有文件句柄限制的,而且Linux默认不是很高,一般都是1024,生产服务器用其实很容易就达到这个数量.

查看方法
我们可以用CentOS ulimit -a来查看所有限制值
[root@centos5 ~]# Centos ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
max nice                        (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 4096
max locked memory       (kbytes, -l) 32
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
max rt priority                 (-r) 0
stack size              (kbytes, -s) 10240
cpu time               (seconds, -t) unlimited
max user processes              (-u) 4096
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited||<

其中 "open files (-n) 1024 "是Linux操作系统对一个进程打开的文件句柄数量的限制(也包含打开的SOCKET数量,可影响MySQL的并发连接数目).这个值可用CentOS ulimit命令来修改,但CentOS ulimit命令修改的数值只对当前登录用户的目前使用环境有效,系统重启或者用户退出后就会失效.
系统总限制是在这里,/proc/sys/fs/file-max.可以通过cat查看目前的值,修改/etc/sysctl.conf 中也可以控制.
另外还有一个,/proc/sys/fs/file-nr,可以看到整个系统目前使用的文件句柄数量
查找文件句柄问题的时候,还有一个很实用的程序lsof.可以很方便看到某个进程开了那些句柄.也可以看到某个文件/目录被什么进程占用了.

修改方法
若要令修改CentOS ulimits的数值永久生效,则必须修改配置文档,可以给CentOS ulimit修改命令放入/etc/profile里面,这个方法实在是不方便,还有一个方法是修改/etc/sysctl.conf .我修改了,测试过,但对用户的CentOS ulimits -a 是不会改变的。只是/proc/sys/fs/file-max的值变了.(我给命令放到rc.local中失败)

我认为正确的做法,应该是修改/etc/security/limits.conf
里面有很详细的注释,比如
* soft nofile 32768
* hard nofile 65536
也可以直接运行下面这个shell。直接copy到你的终端中运行就好了.
echo -ne "
* soft nofile 65536
* hard nofile 65536
" >>/etc/security/limits.conf

就可以将文件句柄限制统一改成软32768,硬65536.配置文件最前面的是指domain,设置为星号代表全局,另外你也可以针对不同的用户做 出不同的限制注意.这个当中的硬限制是实际的限制,而软限制,是warnning限制,只会做出warning.其实CentOS ulimit命令本身就有分软硬设置,加-H就是硬,加-S就是软默认显示的是软限制,如果运行CentOS ulimit命令修改的时候没有加上的话,就是两个参数一起改变.生效
修改完重新登录就可以见到.(我的系统是CentOS5.1.修改了,重新登录后就立刻生效.可以用CentOS ulimit -a 查看确认.)
如果你使用squid的话,你要在/etc/init.d/squid的文件加入CentOS ulimit -HSn 65535.另外,在squid.conf中也要加入max_filedesc 16384

 

 

 

 

 

分享到:
评论

相关推荐

    linux_ulimit的使用

    其中 `soft` 和 `hard` 分别表示软限制和硬限制,软限制可以被用户通过 `ulimit` 命令更改,而硬限制则不可更改,除非管理员重新设置。 2. **编辑 `/etc/ssh/sshd_config` 文件**: ``` vi /etc/ssh/sshd_config ...

    CentOS系统维护手册[文].pdf

    维护手册中提供了多种 MySQL 相关命令,例如启动 MySQL 服务、清除 mysql-bin.0000X 日志文件、更改 MySQL 数据库用户密码等。 例如,要启动 MySQL 服务,可以使用以下命令: ``` # /etc/init.d/mysqld start ``` ...

    CentOS_6.3系统灌装手册

    通过`ulimit -a`命令检查`open files`限制,如果显示为65536,则说明文件描述符的限制修改成功。 以上是CentOS 6.3系统安装的详细步骤及后续的基本配置,这些操作对于确保系统的稳定性和安全性至关重要。在实际操作...

    centos安装oracle11g

    首先,需要配置yum仓库,修改 CentOS-Base.repo 文件,在[base]下加上以下几行命令: `vi /etc/yum.repos.d/CentOS-Base.repo` ``` [base] name=my yum baseurl=file:///mnt gpgcheck=0 enable=1 ``` 2. 挂载光盘...

    centos6.6 Oracle11G安装文档

    Oracle 11g 在 CentOS 6.6 操作系统下的安装配置 本文档旨在帮助实施和初学 Linux 成员快速掌握 Oracle 11g 的安装过程。在 CentOS 6.6 操作系统下,Oracle 11g 的安装过程需要对系统进行相应的配置,以满足 Oracle...

    Centos7-11gR2安装依赖

    1. **系统需求**:首先,确保你的CentOS 7系统是最新的,可以通过`yum update`命令进行更新。Oracle 11g R2通常需要64位系统,因此确认系统架构为64-bit。 2. **设置yum源**:由于Oracle数据库并不是默认的CentOS...

    64位CentOS 6.3系统中安装64位oracle 11g

    - 修改系统参数,如`ulimit`和`se-linux`策略,以适应Oracle运行。 - 使用root用户执行Oracle的安装脚本,如`runInstaller`。 - 按照安装向导的提示进行操作,包括接受许可协议、选择安装类型、配置数据库实例、...

    centos安装oracle

    在 CentOS 系统上部署 Oracle 数据库是一项常见的任务,特别是在企业级应用环境中。本文档将详细讲解如何在 CentOS 上安装 Oracle 11g R2 版本,并通过一系列步骤确保安装过程顺利进行。在开始之前,请确保您已经...

    centos环境准备脚本

    在Linux中,最大文件描述符数量受到软限制和硬限制的控制,可以通过`ulimit`命令查看和临时调整,而永久修改则需要编辑`/etc/security/limits.conf`文件。脚本会增加`nofile`的限制,以支持更多并发连接,这对运行高...

    CentOS5.6下安装oracle10g

    尽管不是必须的步骤,但为了与Oracle官方支持的操作系统版本相匹配,可以修改系统版本信息。编辑`/etc/redhat-release`文件,将版本信息修改为: ```bash Red Hat Enterprise Linux AS release 5 (Taroon) ``` ####...

    centos5.6安装oracle11g图解安装过程

    在开始安装 Oracle 11g 之前,需要确保 CentOS 5.6 系统中已经安装了一系列必要的软件包,这些软件包对于 Oracle 数据库的成功安装至关重要。以下是一些重要的 RPM 包: 1. **检查 RPM 包是否安装完毕**: 使用 `...

    Centos7.9搭建SS5代理服务器

    可以根据需要调整SS5的性能,例如修改ulimit的值,调整系统的网络连接数。 九、修改SS5启动权限 需要修改SS5的启动权限,添加执行权限,确保SS5可以正常启动。 十、启动SS5并检查状态 使用systemctl命令启动SS5...

    centos6.5安装oracle11g数据库指南.docx

    编辑 `/etc/sysconfig/network` 文件来修改主机名,并通过以下命令重启服务器使更改生效: ``` shutdown -r now ``` ##### 2.5 添加主机与 IP 对应关系 在 `/etc/hosts` 文件中添加主机名与其 IP 地址的对应关系...

    centos64安装oracle11g详文图解

    根据提供的文件内容,我们将详细解读在CentOS 64位系统上安装Oracle 11g的步骤,以下知识点涵盖了从准备工作到安装配置的所有要点: 1. 清空原有yum信息和更新yum: - 使用yum clean all命令清空yum缓存。 - 使用...

    CentOS7静默安装oracle11g.docx

    1.1 使用`sed`命令修改`/etc/selinux/config`文件: ``` sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config ``` 1.2 或者手动编辑`/etc/selinux/config`,将`SELINUX=enforcing`改为`SELINUX=...

    CentOS6.2 X86_64安装Oracle 10g数据库

    在安装Oracle 10g数据库之前,首先需要对CentOS 6.2 64位系统进行一系列的配置工作。 1. **设置网络参数** - **编辑网络配置文件**:打开`/etc/sysconfig/network-scripts/ifcfg-eth0`文件,并根据实际需求初始化...

    Centos静默安装Oracle11g文档.doc

    此外,可能需要根据实际情况修改主机名,这可以通过编辑`/etc/sysconfig/network`文件,将`HOSTNAME`变量更改为所需的主机名,然后重启系统使其生效。 在进行Oracle安装前,需要关闭两个安全层:SELinux和防火墙。...

    Duanxx的Centos学习:Eclipse安装

    在这种情况下,可以在运行Eclipse之前先执行命令`ulimit -c unlimited`,以提高系统对Eclipse的支持能力。 - 安装过程中若遇到权限问题,可以使用`sudo`命令获取root权限。 - Eclipse的性能优化不仅仅依赖于足够的...

    centos6.5安装oracle11g详细教程

    - 运行 `sysctl -p` 命令使更改立即生效。 - 修改 `/etc/profile` 文件: ```sh ulimit -n 65536 export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1 export ...

    centos7作为web服务器优化.docx

    在搭建和优化CentOS 7作为Web服务器的过程中,有多个关键步骤可以显著提升系统的性能和安全性。以下是对这些步骤的详细解释: 1. 关闭Firewalld服务:Firewalld是CentOS 7中的默认防火墙,但它可能不是最优选择,...

Global site tag (gtag.js) - Google Analytics