- 浏览: 7958825 次
- 性别:
- 来自: 广州
-
文章分类
- 全部博客 (2425)
- 软件工程 (75)
- JAVA相关 (662)
- ajax/web相关 (351)
- 数据库相关/oracle (218)
- PHP (147)
- UNIX/LINUX/FREEBSD/solaris (118)
- 音乐探讨 (1)
- 闲话 (11)
- 网络安全等 (21)
- .NET (153)
- ROR和GOG (10)
- [网站分类]4.其他技术区 (181)
- 算法等 (7)
- [随笔分类]SOA (8)
- 收藏区 (71)
- 金融证券 (4)
- [网站分类]5.企业信息化 (3)
- c&c++学习 (1)
- 读书区 (11)
- 其它 (10)
- 收藏夹 (1)
- 设计模式 (1)
- FLEX (14)
- Android (98)
- 软件工程心理学系列 (4)
- HTML5 (6)
- C/C++ (0)
- 数据结构 (0)
- 书评 (3)
- python (17)
- NOSQL (10)
- MYSQL (85)
- java之各类测试 (18)
- nodejs (1)
- JAVA (1)
- neo4j (3)
- VUE (4)
- docker相关 (1)
最新评论
-
xiaobadi:
jacky~~~~~~~~~
推荐两个不错的mybatis GUI生成工具 -
masuweng:
(转)JAVA获得机器码的实现 -
albert0707:
有些扩展名为null
java 7中可以判断文件的contenttype了 -
albert0707:
非常感谢!!!!!!!!!
java 7中可以判断文件的contenttype了 -
zhangle:
https://zhuban.me竹板共享 - 高效便捷的文档 ...
一个不错的网络白板工具
http://dbahacker.com/linux/redhat5-%E5%92%8Credhat6-root%E7%94%A8%E6%88%B7%E4%B8%8D%E5%90%8C%E7%9A%84ulimits
以前一直都是用redhat5,redhat6也处于测试阶段,当然也遇到了很多奇奇怪怪的问题,比如之前写的一篇博客,当时候是用root启动了mysqld_unsafe,在mysql的QPS到1W以上后,会出现ERROR 1135 (HY000): Can’t create a new thread (errno 11); 当时候的解决办法是用mysql用户来启动就解决了问题。但因为在系统重启后,如果用sudo -u mysql来启动的话,脚本会被卡主。
这个问题今天得到了一个稍微深入一点的结论。
首先我们看看这个错误
ERROR 1135 (HY000): Can’t create a new thread (errno 11);
if you are not out of available memory,
you can consult the manual for a possible OS-dependent bug
google类似Can’t create a new thread的错误后,得到的结论是文件描述符不够用,检查了vim /etc/security/limits.conf 的设置,是正常的
vim /etc/security/limits.conf
得到的结果是
root soft nofile 65535
root hard nofile 65535
admin soft nofile 65535
admin hard nofile 65535
# End of file
mysql soft nproc 65536
mysql hard nproc 65536
mysql soft nofile 65535
mysql hard nofile 65535
但观察了sudo -u root bash -c " ulimit -a " 后,得到 max user processes (-u) 1024
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 385957
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 65535
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 10240
cpu time (seconds, -t) unlimited
max user processes (-u) 1024
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
max user processes (-u) 1024 和 sudo -u root bash -c " ulimit -u " 一样,都是得到1024的结果
sudo -u root bash -c " ulimit -u "
1024
而在redhat5里面,只要在/etc/security/limits.conf 设置了root soft nofile 65535 和root hard nofile 65535,对应的uilmit -u 就会是65535.
和@维西v @tb天羽 搞了几个小时,依然没法成功修改root用户的 max user processes到65535 。后来发现了一篇文章 Know your limits (ulimits) ,提及到redhat6新增了/etc/security/limits.d/90-nproc.conf,里面的内容是
# Default limit for number of user's processes to prevent
# accidental fork bombs.
# See rhbz #432903 for reasoning.
* soft nproc 1024
redhat6下面,root用户使用ulimit -u没法修改
* soft nproc 1024的意思是任何用户的最大max user processes为1024个,其他用户可以通过ulimit -u来修改 ,但root用户则修改不成功,我们这里看一个例子
[yingyuan.ydh@my031226 ~]$ cat /etc/security/limits.d/90-nproc.conf
# Default limit for number of user's processes to prevent
# accidental fork bombs.
# See rhbz #432903 for reasoning.
* soft nproc 1024
[yingyuan.ydh@my031226 ~]$ ulimit -u
1024
[yingyuan.ydh@my031226 ~]$ ulimit -u 65535
[yingyuan.ydh@my031226 ~]$ ulimit -u
65535
[yingyuan.ydh@my031226 ~]$ sudo -uroot bash -c " ulimit -u 65535"
[yingyuan.ydh@my031226 ~]$ sudo -uroot bash -c " ulimit -u "
1024
很明显,在redhat6的/etc/security/limits.d/90-nproc.conf限制下,个人用户可以修改ulimit-u,但root用户没法修改。 解下来,我们把etc/security/limits.d/90-nproc.conf改掉,会看到root的ulimit -u 可以修改成功。
[yingyuan.ydh@my031226 ~]$ sudo -uroot bash -c " ulimit -u 65535"
[yingyuan.ydh@my031226 ~]$ sudo -uroot bash -c " ulimit -u "
65535
[yingyuan.ydh@my031226 ~]$ cat /etc/security/limits.d/90-nproc.conf
# Default limit for number of user's processes to prevent
# accidental fork bombs.
# See rhbz #432903 for reasoning.
* soft nproc 65535
结果
在成功修改了root用户的max user processes后,继续使用root用户启动mysqld_safe脚本,稳定运行了一个下午,一切正常。
以前一直都是用redhat5,redhat6也处于测试阶段,当然也遇到了很多奇奇怪怪的问题,比如之前写的一篇博客,当时候是用root启动了mysqld_unsafe,在mysql的QPS到1W以上后,会出现ERROR 1135 (HY000): Can’t create a new thread (errno 11); 当时候的解决办法是用mysql用户来启动就解决了问题。但因为在系统重启后,如果用sudo -u mysql来启动的话,脚本会被卡主。
这个问题今天得到了一个稍微深入一点的结论。
首先我们看看这个错误
ERROR 1135 (HY000): Can’t create a new thread (errno 11);
if you are not out of available memory,
you can consult the manual for a possible OS-dependent bug
google类似Can’t create a new thread的错误后,得到的结论是文件描述符不够用,检查了vim /etc/security/limits.conf 的设置,是正常的
vim /etc/security/limits.conf
得到的结果是
root soft nofile 65535
root hard nofile 65535
admin soft nofile 65535
admin hard nofile 65535
# End of file
mysql soft nproc 65536
mysql hard nproc 65536
mysql soft nofile 65535
mysql hard nofile 65535
但观察了sudo -u root bash -c " ulimit -a " 后,得到 max user processes (-u) 1024
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 385957
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 65535
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 10240
cpu time (seconds, -t) unlimited
max user processes (-u) 1024
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
max user processes (-u) 1024 和 sudo -u root bash -c " ulimit -u " 一样,都是得到1024的结果
sudo -u root bash -c " ulimit -u "
1024
而在redhat5里面,只要在/etc/security/limits.conf 设置了root soft nofile 65535 和root hard nofile 65535,对应的uilmit -u 就会是65535.
和@维西v @tb天羽 搞了几个小时,依然没法成功修改root用户的 max user processes到65535 。后来发现了一篇文章 Know your limits (ulimits) ,提及到redhat6新增了/etc/security/limits.d/90-nproc.conf,里面的内容是
# Default limit for number of user's processes to prevent
# accidental fork bombs.
# See rhbz #432903 for reasoning.
* soft nproc 1024
redhat6下面,root用户使用ulimit -u没法修改
* soft nproc 1024的意思是任何用户的最大max user processes为1024个,其他用户可以通过ulimit -u来修改 ,但root用户则修改不成功,我们这里看一个例子
[yingyuan.ydh@my031226 ~]$ cat /etc/security/limits.d/90-nproc.conf
# Default limit for number of user's processes to prevent
# accidental fork bombs.
# See rhbz #432903 for reasoning.
* soft nproc 1024
[yingyuan.ydh@my031226 ~]$ ulimit -u
1024
[yingyuan.ydh@my031226 ~]$ ulimit -u 65535
[yingyuan.ydh@my031226 ~]$ ulimit -u
65535
[yingyuan.ydh@my031226 ~]$ sudo -uroot bash -c " ulimit -u 65535"
[yingyuan.ydh@my031226 ~]$ sudo -uroot bash -c " ulimit -u "
1024
很明显,在redhat6的/etc/security/limits.d/90-nproc.conf限制下,个人用户可以修改ulimit-u,但root用户没法修改。 解下来,我们把etc/security/limits.d/90-nproc.conf改掉,会看到root的ulimit -u 可以修改成功。
[yingyuan.ydh@my031226 ~]$ sudo -uroot bash -c " ulimit -u 65535"
[yingyuan.ydh@my031226 ~]$ sudo -uroot bash -c " ulimit -u "
65535
[yingyuan.ydh@my031226 ~]$ cat /etc/security/limits.d/90-nproc.conf
# Default limit for number of user's processes to prevent
# accidental fork bombs.
# See rhbz #432903 for reasoning.
* soft nproc 65535
结果
在成功修改了root用户的max user processes后,继续使用root用户启动mysqld_safe脚本,稳定运行了一个下午,一切正常。
发表评论
-
windows下自带命令行工具查看CPU资源情况等
2018-06-04 12:53 3114微软提供了不少命令行 ... -
挂载文件系统选项nodiratime、noatime等集合小结
2018-06-02 19:56 2679Linux系统文件有三个主 ... -
Linux如何查看当前占用CPU或内存最多的K个进程
2018-05-20 11:01 3307内存 可以使用以下命令查使用内存最多的K个进程 方法1: p ... -
(转)使用frp实现内网穿透
2018-05-14 13:33 2431https://www.jianshu.com/p/e8e26 ... -
docker小结1
2018-05-11 14:26 4891 通过dockerfile建立一个简单的HELLO.C,然后 ... -
LINUX下EPOLL等不错的文章收藏
2018-04-25 09:35 5751 通俗讲解 异步,非阻塞和 IO 复用 https:/ ... -
Ubuntu中root用户和user用户的相互切换
2018-04-06 12:46 10361)从user用户切换到root用户 不管是用图形模式登录U ... -
ubuntu下Virtualbox虚拟Ubuntu共享文件夹设置
2018-04-06 11:41 10161. 安装增强功能包(Guest Additions) 安装 ... -
Web网站压力及性能测试
2017-10-09 19:59 705https://segmentfault.com/a/1190 ... -
工具推荐:Netdata,Linux性能实时监测工具
2017-07-14 09:10 1182工具推荐:Netdata,Linux性能实时监测工具 http ... -
一个 Linux 下基于 Bash 的文件和数据库监控及备份工具,可发送微信报警通知
2017-07-11 07:07 1658一个 Linux 下基于 Bash 的文件和数据库监控及备份工 ... -
收藏个不错的能发送日志等警告信息等到微信的工具
2017-06-11 10:12 1083发现个将比如报警日志呀之类的提醒信息,发送给微信的好的工具,不 ... -
收藏:nginx教程从入门到精通(ttlsa出品)
2017-02-09 22:53 735http://www.ttlsa.com/nginx/ngin ... -
(转)从dstat理解Linux性能监控体系
2016-08-02 10:27 2585http://calvin1978.blogcn.com/ar ... -
linux下安装SZ,RZ命令
2016-02-26 20:59 1672在 linux 下,一般用secur crt等工具,今天居然 ... -
Clumsy —— 帮你模拟各种网络不稳定的环境,包括掉包
2014-11-14 09:12 1769Clumsy —— 帮你模拟各种网络不稳定的环境,包括掉包、延 ... -
ping+tracerout的unix下网络诊断小工具mtr
2014-07-29 22:04 1607今日才发现,原来linux中可以用ping和tracerout ... -
(转)Apache日志分割
2014-02-25 20:20 1624Apache和Ngix一样,对日志没有进行分割处理,这样很不方 ... -
linux下 cpu频率节能
2014-02-25 13:06 1444参考: http://linux-wiki.cn/wiki/z ... -
(转)最佳日志实践
2014-01-22 23:24 962http://www.bitstech.net/2014/01 ...
相关推荐
通过上述步骤,我们不仅学会了如何在Redhat Linux中修改root密码,还深入了解了Linux系统的启动过程和单用户模式的工作原理。这种能力对于处理紧急情况、系统故障恢复以及增强系统安全性都极为关键。然而,修改root...
为了精细化管理系统,需要了解 Root 用户的权限和使用方法。本文将详细解释 Root 用户的概念、SU 命令、Sudo 命令、/etc/sudoers 文件的作用和配置方法。 一、Root 用户概述 在 Linux 系统中,Root 用户是最高权限...
根据提供的文档信息,本文将重点围绕Red Hat Linux系统下的单用户模式如何更改root密码,并延伸至DNS服务配置的相关知识点进行详细阐述。 ### Red Hat Linux单用户模式更改root密码 在Red Hat Linux系统中,有时...
### Redhat 6 安装 Telnet 详细指南 #### 一、Telnet 基础知识 **Telnet** 是一种基于TCP/IP协议的应用层协议,用于远程访问其他计算机系统。它允许用户通过网络连接到远程主机并执行命令,就像在本地终端上一样。...
本文详细介绍了如何在 Red Hat 6 中开启 Telnet 服务,包括安装所需的软件包、配置服务参数、调整防火墙策略以及允许 Root 用户通过 Telnet 登录。这些步骤有助于实现远程访问需求,同时也需要注意安全问题,确保...
在这个场景下,我们要讨论的是如何在没有网络连接的情况下,在Red Hat 7.4(简称redhat7u4)上离线安装GCC编译器,包括所有必要的依赖包。 GCC(GNU Compiler Collection)是一套开源的编译器集合,用于将源代码...
CentOS及Redhat破解root密码,做了简单的整理,方便大家阅读,希望对你有帮助。
_VMWare虚拟机+Redhat Linux 5安装vmware-tools_ VMWare虚拟机是一种popular的虚拟机软件,可以在物理机器上运行多个虚拟机,每个虚拟机可以运行不同的操作系统。Redhat Linux 5是Redhat公司推出的一个Linux操作...
### RedHat Linux RHEL6配置本地YUM源详解 #### YUM简介 YUM(Yellowdog Updater Modified)是一款在Linux环境下使用的包管理工具。它最初由Yellow Dog Linux的开发者们设计并实现,名为yup(Yellowdog Updater)。...
1. 已安装Redhat5操作系统。 2. 具备基本的Linux命令行操作技能。 3. 准备好Apache、MySQL和PHP的安装包。 #### 二、安装Apache Web服务器 1. **下载Apache安装包**:可以前往Apache官网下载适合Redhat5的版本。 2...
Redhat 6 是一个流行的 Linux 发行版,本文将指导用户如何在 Redhat 6 中安装和配置 VNC 服务,并进行测试连接。 一、安装 VNC 服务 在 Redhat 6 中,可以使用 yum 方式安装 VNC RPM 包。首先,需要使用 root 用户...
### Redhat 6 配置 VNC 服务详解 #### 一、引言 VNC(Virtual Network Computing)是一种允许用户远程控制计算机的应用程序。它通过网络将图形化桌面环境从一台计算机传输到另一台计算机上,使得用户可以在远程位置...
如果您忘记了Red Hat系统的Root密码,不要担心,本文将为您提供两种解决方法:单例模式(Single User Mode)和救援模式。 单例模式(Single User Mode) 单例模式是一种特殊的启动模式,可以让您在不需要Root密码...
- 创建 `oracle` 用户,属于 `oinstall` 组,并且是 `dba` 组的成员:`[root@redhat5 Server]#/usr/sbin/useradd -g oinstall -G dba oracle` 3. **设置密码**: - 修改 `oracle` 用户的密码:`[root@redhat5 ...
* Linux 下有两种用户:root 用户和普通用户。 * root 用户是超级权限者,系统的拥有者,在 Linux 系统中有且只有一个 root 用户。 * 普通用户可以被创建许多,并为其指定相应的权限,使其有限地使用 Linux 系统。 ...
通过以上步骤,您可以在 RedHat 系统上成功安装 Oracle 9i、JDK 6 和 Tomcat,并且能够正常使用这些服务。请注意,在实际部署过程中可能遇到各种问题,例如权限问题、依赖缺失等,需要根据实际情况进行调整。此外,...
Redhat 5.5系统安装需要注意的知识点包括选择合适的安装版本、虚拟机和系统镜像的使用、系统语言和键盘语言的选择、硬盘的初始化、网络设置、时区设置、root 用户密码的输入、安装包的选择、系统安装完成后的配置等...
通过上述步骤,我们可以在 RedHat Linux 5 上成功安装和配置 VNC Server,实现远程桌面的功能。这对于日常管理和维护 Linux 服务器非常有帮助。需要注意的是,为了保证系统的安全性,建议定期更换 VNC Server 的密码...
在系统参数调整完毕后,需要创建专门用于Oracle的用户组和用户。通过`groupadd`命令创建`oinstall`和`dba`两个组,然后使用`useradd`命令创建名为`oracle`的用户,并将其添加到这两个组中。接着,设置`oracle`用户的...