centos突然变慢 centos频繁自动重启

大家好,centos突然变慢相信很多的网友都不是很明白,包括centos频繁自动重启也是一样,不过没有关系,接下来就来为大家分享关于centos突然变慢和centos频繁自动重启的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开始吧!

CentOS 7 下Tomcat启动超慢的原因及解决方案

CentOS 7系统中安装好openjdk和Tomcat后,启动过程很慢,长达数分钟,日志如下:

tomcat启动耗时278084ms折合278秒,对于刚刚安装的干净tomcat,这肯定是不对劲的。

其中有一条日志引起了笔者的注意:

显然tomcat执行到这里时出问题了,google了一下,经过一番搜索明白了其中的缘由。

在tomcat官方wiki文档的 HowToFasterStartUp章节中,Entropy Source部分有一段这样的说明:

从这里我们得知Tocmat的Session ID是通过SHA1PRNG算法计算得到的,计算Session ID的时候必须有一个密钥,为了提高安全性Tomcat在启动的时候会通过随机生成一个密钥,它强依赖于获取熵池中的随机数来进行创建。

那么什么是/dev/random?什么是熵池?

/dev/random

从维基百科得知,在UNIX操作系统(包括类UNIX系统)中,/dev/random是一个特殊的设备文件,可以用作随机数生成器或伪随机数生成器。

Linux内核中的是第一个以背景噪声产生真正的随机数产生的实现,它允许程序访问来自设备驱动程序或其它来源的背景噪声。

Linux上有两个通用的随机设备:/dev/random和/dev/urandom。其中/dev/random的随机性最好,因为它是一个阻塞的设备。而/dev/random的一个副本是/dev/urandom(“unblocked”,非阻塞的随机数生成器),它会重复使用熵池中的数据以产生伪随机数据。这表示对/dev/urandom的读取操作不会产生阻塞,但其输出的熵可能小于/dev/random的。所以它可以作为生成较低强度密码的伪随机数生成器,不建议用于生成高强度长期密码。

熵池

熵池本质上是若干字节,/proc/sys/kernel/random/entropy_avail中存储了熵池现在的大小,/proc/sys/kernel/random/poolsize是熵池的最大容量,单位都是bit。如果 entropy_avail的值小于要产生的随机数bit数,那么/dev/random就会堵塞。

为什么熵池不够用?

熵池实际上是从各种noice source中获取数据,noice source可能是键盘事件、鼠标事件、设备时钟中等。linux内核从2.4升级到2.6时,处于安全性的考虑,废弃了一些source。source减少了,熵池补给的速度当然也变慢,进而不够用。

其实,通过消耗熵池,可以构造DDOS攻击。原理很简单,熵池空了,依赖随机数的业务(SSL,加密等)就不能正常进行。

通过以上信息,笔者得知该问题是由于熵池不足导致的。怎么解决?

使用非阻塞性的生成器/dev/urandom代替/dev/random。

1、可在JVM环境中配置

通过配置发生器指定熵收集守护进程

修改$JAVA_PATH/jre/lib/security/java.security中参数 securerandom.source为:

2、也可在Tomcat环境中配置

通过配置JRE使用非阻塞的Entropy Source获取熵

在$TOMCAT_HOME/bin/catalina.sh中加入:

这个系统属性egd表示熵收集守护进程(entropy gathering daemon)。

1、[硬件随机数生成器]安装并使用rng-tools作为额外的熵随机数生成器(推荐)

cat/dev/random命令会消耗熵池, rngd守护进程会补充熵池,可使用如下命令来测试随机数生成的情况:

2、[软件随机数生成器]在rng-tools仍不满足的情况下,可使用haveged作为额外的熵随机数生成器

要检查是否需要 Haveged,可使用下面命令查看当前收集到的熵:

如果结果比较低(<1000),建议安装 haveged,否则加密程序会处于等待状态,直到系统有足够的熵。

安装 haveged之后,可以再次查看系统熵看下有无提升。

因为方法一存在一定的不安全性,且需要对环境进行配置,为了满足熵的需要,这里笔者选择了第二种方法,使用rng-tools作为额外的熵随机数生成器,同以上操作后顺利解决了问题。

操作后重启tomcat日志如下,启动速度快了两个数量级:

参考文档:

centos开机慢

题主是否想询问“centos开机慢原因是什么”?具体原因如下:

1、硬件问题:电脑硬件配置较低,内存容量较小或者硬盘寿命较短等,都会导致开机时间变慢。

2、启动项过多:CentOS系统启动项过多,开启了多个服务或者软件,都会导致开机时间变慢。

3、系统文件损坏:CentOS系统文件损坏或者存在错误,也会导致开机时间变慢。

4、系统更新:CentOS系统需要更新,也会导致开机时间变慢。可以使用yumupdate命令来更新系统。

centos 命令窗口网速慢怎么解决

外部检查下,有没线路老坏,或者接触不良。

怀疑自己慢可以查下的。

1、下载腾讯电脑管家,然后打开电脑管家——工具箱——测试网速(不要用下载测试,毕竟资源不一样,速度不一样,不准确的,用软件好点)

2、是否有ARP攻击,建议开启防火墙(打开腾讯电脑管家实时防护)

3、是否有人恶意占用资源(蹭网),打开电脑管家——工具箱——安全助手,查下

4、系统存在病毒或木马。建议使用防火墙及杀毒软件。推荐腾讯电脑管家,免费软件。拥有云查杀引擎、反病毒引擎、金山云查杀引擎、AVIRA查杀引擎、小红伞和查杀修复引擎等世界一流杀毒软件内嵌杀毒引擎!保证杀毒质量。

如果想稳定加快速度,平时就要注意优化电脑,给楼主一点建议

1、软件安装不要过多,需要清理部分不常用的软件。腾讯电脑管家——软件卸载功能比较不错。可以清理的比较干净。

2、垃圾文件不要过多,清理垃圾文件。腾讯电脑管家有清理垃圾,扫一扫(可定期)。

3、上网等系统的临时文件多,清理掉

4、系统区的空闲空间过小,扩大剩余空间。如果是win7建议系统分区在50G+。

5、系统分区碎片过多,定时整理分区碎片。碎片整理软件操作系统自带。

6、也是特别要注意的。笔记本如果使用有段时间了,风扇灰尘比较多了,可能导致散热慢,也会影响性能(腾讯电脑管家——工具箱——硬件检测,随时注意温度,注意降温)。内存条可以用橡皮擦下

阅读剩余
THE END