CentOS6.x 下 /etc/security/limits.conf 被改错的故障经历

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS6.x 下 /etc/security/limits.conf 被改错的故障经历相关的知识,希望对你有一定的参考价值。

参考技术A

我司本小厂,每个员工都是身兼数职,所以开发人员直接登录线上服务器改东西是常态。有些开发人员,自持水平较高(的确水平也是较高,但缺乏对系统的敬畏),所以总是越俎代庖,改一些本身应该是线上运维人员改动的配置。本文提到的 /etc/security/limits.conf 两次改错导致的事故,皆是因为于此。

第一次是在 /etc/security/limits.conf 中加了两句:

结果就是:
所有用户无法登录。一登录,马上被踢出来。

最后解决方法:
单用户进系统把文件 /etc/security/limits.conf 改回来。

原因:
配置文件 /etc/security/limits.conf 中 nofile 的参数,只支持数字,"unlimited" 显然系统不认。

第二次也是在 /etc/security/limits.conf 中加了两句:

结果是:

解决方法:
像前面文章 一次本地提权的实战演练 有提到的:

原因:

稍稍延展一下,如果我一定要将 nofile 参数设置为 2000000呢?
其实这也有办法,提高 kernel 里 NR_OPEN 的值即可,具体方法是:

总而言之,言而总之:Linux 下配置文件 /etc/security/limits.conf 文件不要随意改动。我其实还是倾向于在启动服务的启动脚本里手工用 ulimit 命令来设置相关参数而不要直接在 /etc/security/limits.conf 文件里改。

如何查看CentOS7的版本信息

1. 查看版本号

  CentOS的版本号信息一般存放在配置文件当中,在CentOS中,与其版本相关的配置文件中都有centos关键字,该文件一般存放在/etc/目录下,所以说我们可以直接在该文件夹下搜索相关的文件。

ll /etc/*centos*

  查看的结果:

  其中存放其版本配置信息的文件为“centos-release”,翻译过来就是“CentOS的发行版”,所以说我们可以在这里查看CentOS相应的版本信息。

  查看CentOS的版本号:

cat /etc/centos-release

  显示结果:

CentOS Linux release 7.3.1611 (Core) 

2. 查看内核版本

  查询操作系统内核版本信息为:

uname -r

  查询结果:

3.10.0-514.26.2.el7.x86_64

3. 查看操作系统位数

  查看指令为:

getconf LONG_BIT

  显示的结果为

64

以上是关于CentOS6.x 下 /etc/security/limits.conf 被改错的故障经历的主要内容,如果未能解决你的问题,请参考以下文章

如何在CentOS 7/6.5/6.4 下安装PostgreSQL 9.3 与 phpPgAdmin

Linux 环境下/etc/profile和/etc/profile.d 的区别和用法呢?

CentOS 6.X、iptables 1.47 和 Geolite2:我怎样才能使它工作?

linux下/etc/init.d的简单介绍

linux 下获取了/etc/passwd 如何破解root密码

红帽linux下使用 vim /etc/hosts命令却无法编辑是怎么回事?