Linux九阴真经之无影剑残卷10(内核编译)

/proc目录

/proc目录:
Linux 内核提供了一种通过 /proc 文件系统,在运行时访问内核内部数据结构、改变内核设置的机制。proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间。它以文件系统的方式为访问系统内核数据的操作提供接口。


/proc/sys
(1) sysctl命令用于查看或设定此目录中诸多参数
sysctl -w path.to.parameter=VALUE
sysctl -w kernel.hostname=mail.magedu.com


(2) echo命令通过重定向方式也可以修改大多数参数的值
echo "VALUE" > /proc/sys/path/to/parameter
echo “websrv” > /proc/sys/kernel/hostname

echo  1 > /proc/sys/net/ipv4/ip_forward        禁ping指令

常用选项

查看 etc/sysctl.conf  ,修改属性

vm.drop_caches = 0                                                         当值为1时,清除缓存。

net.ipv4.tcp_syn_retries = 5                                            当syn(d三次握手无响应)同步失败时,重试的次数

net.ipv4.tcp_fin_timeout = 60                                           tcp协议 分手超时时间(秒),可调短,可实现高并发,优化服务器性能。

net.ipv4.tcp_syncookies = 1                                             syn为dos三次握手的攻击 第二次握手时客户端无响应,服务器只能傻等     建议启用,默认为1

net.ipv4.tcp_max_tw_buckets = 65536                            四次挥手后,不会立马断开,而是进入timeout状态 此条可以调试timeout状态的个数

net.ipv4.tcp_max_syn_backlog = 514                              tcp 最大svn 的等待队列 ,可调大,实现更高的并发量

net.ipv4.ip_local_port_range = 32768 ----- 60999            客户端的端口范围,可调节大小

编译安装新版内核

1、打开linux内核官网,下载最新版内核文件,并上传至我们的linux7.4版本中

2、建一个文件夹,将文件移到此文件夹内并解压,解压后查看包的大小为894m

[root@centos7 abc]#du -sh linux-4.16.8
894M    linux-4.16.8

3、将系统自带的模板复制到当前目录下,并命名为.config的文件

[root@centos7 linux-4.16.8]#cp /boot/config-3.10.0-693.el7.x86_64 .config

4、安装编译工具 yum grouplistall "development tools" ,如已安装则开始安装 另外一个make  menucocnfig(配置内核选项)


[root@centos7 linux-4.16.8]#yum install ncurses-devel
Dependencies Resolved

===================================================================================
 Package              Arch          Version                      Repository   Size
===================================================================================
Installing:
 ncurses-devel        x86_64        5.9-13.20130511.el7          base        713 k

Transaction Summary
===================================================================================
Running transaction
  Installing : ncurses-devel-5.9-13.20130511.el7.x86_64                        1/1 
  Verifying  : ncurses-devel-5.9-13.20130511.el7.x86_64                        1/1 

Installed:
  ncurses-devel.x86_64 0:5.9-13.20130511.el7                                       

Complete!

再次执行 make menuconfig(*代表内核  M代表以模块的方式)


5、选择General  setup ,再进行人为自定义编译

6、定义支持NTFS系统 ,将NTFS write support 前面设置为* ,退出。

7、执行make之前,需要安装 elfutils-libelf-devel

[root@centos7 linux-4.16.8]#yum install elfutils-libelf-devel

8、执行编译安装,等待半小时即可完成安装

[root@centos7 linux-4.16.8]#make -j 8

 9、安装模块,(把编译完成的10多个G的文件复制到 lib/modules的目录下)

[root@centos7 ~]#make modules_install

10、安装内核相关文件(生成新版本的vm内核文件以及生成initramfs文件)


11、重启linux系统,发现可选择启动的内核了

原文地址:https://www.cnblogs.com/huxiaojun/p/9027007.html