linux系统基础优化小结

  1. 不用root, 添加普通用户,通过sudo授权管理

  2. 更改默认的远程ssh服务端口及禁止root用户远程登陆

  3. 定时自动更新服务器时间 ntpdate

  4. 配置yum更新源,从国内更新源下载安装软件,如啊里云,163等.http://mirrors.aliyun.com/ http://mirrors.163.com/

  5. 关闭selinux vim /etc/sysconfig/selinux 或者 
    sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux

  6. 调整文件 描述符的数量 ,进程及文件的打开都会消耗文件描述符

    vim /etc/security/limits.conf
     ulimit -n 查看
     ulimit -HSn 65535 临时设置

    echo "* - nofile 65535" >>/etc/security/limits.conf

    退出重登陆即可重新查看

  7. 精简开机自启动服务(crond,sshd,network,rsyslog(centos5.8 syslog))

  8. 锁定关键系统文件
    chattr +i /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/inittab

  9. 清空/etc/issue版本信息显示

  10. linux 内核参数优化/etc/sysctl.conf, 执行sysctl -p生效)

    说明:本优化适合apache,nginx,squid多种等web应用,特殊的业务也可能需要略作调整。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
[root@c64 ~]# vi /etc/sysctl.conf
#by sun in 20131001
net.ipv4.tcp_fin_timeout = 2
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_keepalive_time =600
net.ipv4.ip_local_port_range = 4000    65000
net.ipv4.tcp_max_syn_backlog = 16384
net.ipv4.tcp_max_tw_buckets = 36000
net.ipv4.route.gc_timeout = 100
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_synack_retries = 1
net.core.somaxconn = 16384
net.core.netdev_max_backlog = 16384
net.ipv4.tcp_max_orphans = 16384
#一下参数是对iptables防火墙的优化,防火墙不开会有提示,可以忽略不理。
net.ipv4.ip_conntrack_max = 25000000
net.ipv4.netfilter.ip_conntrack_max = 25000000
net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 180
net.ipv4.netfilter.ip_conntrack_tcp_timeout_time_wait = 120
net.ipv4.netfilter.ip_conntrack_tcp_timeout_close_wait = 60
net.ipv4.netfilter.ip_conntrack_tcp_timeout_fin_wait = 120
[root@localhost ~]# sysctl –p    #使配置文件生效

提示:由于CentOS6.X系统中的模块名不是ip_conntrack,而是nf_conntrack,所以在/etc/sysctl.conf优化时,需要把net.ipv4.netfilter.ip_conntrack_max 这种老的参数,改成net.netfilter.nf_conntrack_max这样才可以。

即对防火墙的优化,在5.8上是

1
2
3
4
5
6
net.ipv4.ip_conntrack_max = 25000000
net.ipv4.netfilter.ip_conntrack_max = 25000000
net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 180
net.ipv4.netfilter.ip_conntrack_tcp_timeout_time_wait = 120
net.ipv4.netfilter.ip_conntrack_tcp_timeout_close_wait = 60
net.ipv4.netfilter.ip_conntrack_tcp_timeout_fin_wait = 120

在6.4上是

1
2
3
4
5
6
net.nf_conntrack_max = 25000000
net.netfilter.nf_conntrack_max = 25000000
net.netfilter.nf_conntrack_tcp_timeout_established = 180
net.netfilter.nf_conntrack_tcp_timeout_time_wait = 120
net.netfilter.nf_conntrack_tcp_timeout_close_wait = 60
net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 120

另外,在此优化过程中可能会有报错:

1、5.8版本上

1
2
3
4
5
6
error: "net.ipv4.ip_conntrack_max"is an unknown key
error: "net.ipv4.netfilter.ip_conntrack_max"is an unknown key
error: "net.ipv4.netfilter.ip_conntrack_tcp_timeout_established"is an unknown key
error: "net.ipv4.netfilter.ip_conntrack_tcp_timeout_time_wait"is an unknown key
error: "net.ipv4.netfilter.ip_conntrack_tcp_timeout_close_wait"is an unknown key
error: "net.ipv4.netfilter.ip_conntrack_tcp_timeout_fin_wait"is an unknown key

这个错误可能是你的防火墙没有开启或者自动处理可载入的模块ip_conntrack没有自动载入,解决办法有二,一是开启防火墙,二是自动处理开载入的模块ip_conntrack

1
2
modprobe ip_conntrack
echo "modprobe ip_conntrack">> /etc/rc.local

   2、6.4版本上

1
2
3
4
5
6
error: "net.nf_conntrack_max"isan unknown key
error: "net.netfilter.nf_conntrack_max"isan unknown key
error: "net.netfilter.nf_conntrack_tcp_timeout_established"isan unknown key
error: "net.netfilter.nf_conntrack_tcp_timeout_time_wait"isan unknown key
error: "net.netfilter.nf_conntrack_tcp_timeout_close_wait"isan unknown key
error: "net.netfilter.nf_conntrack_tcp_timeout_fin_wait"isan unknown key这个错误可能是你的防火墙没有开启或者自动处理可载入的模块ip_conntrack没有自动载入,解决办法有二,一是开启防火墙,二是自动处理开载入的模块ip_conntrack

1
2
modprobe nf_conntrack
echo "modprobe nf_conntrack">> /etc/rc.local

          3、6.4版本上

1
2
3
error: "net.bridge.bridge-nf-call-ip6tables"isan unknown key
error: "net.bridge.bridge-nf-call-iptables"isan unknown key

error: "net.bridge.bridge-nf-call-arptables"isan unknown key


这个错误是由于自动处理可载入的模块bridge没有自动载入,解决办法是自动处理开载入的模块ip_conntrack


1
2
modprobe bridge
echo "modprobe bridge">> /etc/rc.local


更多可查看 http://oldboy.blog.51cto.com/2561410/988726




本文转自 pk2008 51CTO博客,原文链接:http://blog.51cto.com/837244/1973646

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/256876.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

iOS8 【xcode6中添加pch全局引用文件】

前沿:xcode6中去掉了pch,为了一些琐碎的头文件引用,加快了 编译速度! xcode6之前的版本建项目就自动添加了是这样的:xcode6后的版本要自己手动的添加步骤如下:1) 2)3) $(SRCROOT)/pc…

学习笔记(42):Python实战编程-pyinstaller程序打包

将程序打包可以使得所有Windows带有python虚拟机的电脑进行使用,打包的内容有代码加外部资源(如logo图片等) 步骤: 1)创建程序的代码 2)生成配置文件——用于获得打包的资源,将资源保存在运行程…

[js]BOM篇

一、什么是BOM BOM(Browser Object Model)即浏览器对象模型。BOM提供了独立于内容 而与浏览器窗口进行交互的对象;由于BOM主要用于管理窗口与窗口之间的通讯,因此其核心对象是window;BOM由一系列相关的对象构成&#x…

透视校正

1、需要解决的问题: 怎么用图像处理的办法将梯形转换为规则的矩形,进行一个视觉的透视校正 2、解决思路: 1)先二值化图像,提取其轮廓(其中使用到填充,形态学知识) 2)…

杂项备忘

svn导出 export LANGzh_CN.UTF-8 && svn --username shuai --password shuai checkout svn://192.168.14.111/safe.qq.com /update/webapps/safe.qq.com mysqlsla --sortc_sum slow.log 本文转自 liang3391 51CTO博客,原文链接:http://blog.51cto.com/liang…

安装Pywin32后无法正常引用pyd文件

1. 首先在官方下载pywin32 2.下载完成后,无法正常引用pyd文件 3.解决方案: python安装目录\Lib\site-packages\pywin32_system32\* 至 C:\Windows\System32 转载于:https://www.cnblogs.com/MonkeyKingK/p/4731960.html

pyinstaller运行时出现TCLError的错误该怎么办?

1)修改代码后需要重新按照以上步骤进行,尤其不能忘记了修改配置文件的datas 2)必须得先pyi-makespec -F *.py指定要打包的程序,再修改配置文件,再pyinstaller -F *.spec程序打包 3)确保配置文件已经修改成功,即将以下图…

视觉统计计数方案

1、二值化分割 2、形态学 3、距离变换 4、再进行二值化 4、连通区域计算 输入: 输出:printf("统计玉米粒的个数 contours:%d\n",contours);//contours 17

SQL Server 查询表备注信息的语句

--name 字段名称--user_type_id --max_length 最大长度--is_nullable 是否允许空--remark 描述SELECT c.name, c.user_type_id, c.max_length, c.is_nullable, remark ex.value FROM sys.columns c inner JOIN sys.extended_properties ex ON ex.major_id c.object_id…

Filezilla 利用私钥无密码登录

Filezilla是常用的FTP客户端软件,这里介绍一个用私钥进行登录 主机:sftp://yourserver 用户名:yourname 点击“编辑”-“设置”菜单打开设置对话框,找到“连接”-“SFTP”设置项 添加密钥文件(A)”按钮,添加私钥文件,弹出对话框&a…

yo angualr-fullstatck 项目打包部署

yoeman使用grunt进行打包部署,直接运行grunt命令即可,期间会对代码进行检查,如果存在不规范的地方jshint会指定出来. grunt会对静态资源进行打包而且对资源文件名进行了MD5作为版本戳. 1:修改se…

Visual Studio 快捷键使用方法

1、Ctrl k 和 Ctrl F 一起使用可以格式化代码,让其对齐工整。

学习笔记(43):Python实战编程-事件处理简介

立即学习:https://edu.csdn.net/course/play/19711/343105?utm_sourceblogtoedu 事件: 1.概念:就是给组件添加一定的功能,使得单击或者是聚焦时产生一定的反应 2.知识点: 1)给组件绑定事件: 组件名.bind…

浅谈MIPS地址对齐问题

1.什么叫地址对齐? RISC 下使用访存指令读取或写入数据单元时,目标地址必须是所访问之数据单元字节数的整数倍,这个叫做地址对齐。 2.计算机主要的架构分哪两类?及其地址对齐在两者的区别? 计算机主要的架构就分为两类…

海信FW3010-5000H千兆防火墙

海信FW3010-5000H千兆防火墙 ◆处理带宽达到3G; ◆支持1,500,000个并发连接; ◆支持高达25,000个高级访问过滤; ◆真正的千兆硬件平台; ◆双机热备功能; ◆完善的日志信息; ◆支持P2P过滤,多达14种P2P识别; ◆特有的灾难恢复机制; ◆内嵌IDS模块,也可和…

java File类 打印目录树状结构(递归)

import java.io.File;/*** 递归遍历**/ public class FieTree {public static void main(String[] args) {File f new File("D:/java笔记");printFile(f,0);}static void printFile(File file,int level){for(int i0;i<level;i){System.out.print("-")…

C++ vector.insert的用法

insert() 函数有以下三种用法: 在指定位置loc前插入值为val的元素,返回指向这个元素的迭代器, 在指定位置loc前插入num个值为val的元素 在指定位置loc前插入区间[start, end)的所有元素 .&#xff0c;查看源码返回元素的大小个数 原函数 iterator insert(const_iterator…

学习笔记(44):Python实战编程-单击事件

立即学习:https://edu.csdn.net/course/play/19711/343106?utm_sourceblogtoedu 1.单击事件&#xff1a;主要的单击事件是鼠标左键单击事件&#xff0c;一般是与按钮绑定在一起 2.关键代码&#xff1a;这里是以按钮绑定组件单击事件为例&#xff0c;单击的响应是弹出简单的对话…

samba

安装配置samba&#xff1a; 准备工作&#xff1a; 173/udp(NetBIOS) 138/udp 139/tcp 445/tcp 这些端口已经启动。 然后确定selinux已经关闭&#xff08;#getenforce&#xff09;。 一般我们装好系统之后samba都会安装的&#xff1a;yum list all samba* 这里我选用的是samba3x…

(1)dotnet开源电商系统-brnshopbrnMall 和老外开发的nopCommerce(dotnet两套电商来PK--第一篇)...

一直想做电商软件&#xff0c;但是实在不想学PHP了&#xff0c;所以前后关注了这两个开源电商系统。一个是国人出品的&#xff0c;一个据说是俄罗斯人写得&#xff08;不知道对不对&#xff09;。目前两个开源软件都在学习了解中&#xff0c;以下的博文可能会涉及到这两套系统&…