很多服务都需要 Linux 关闭透明大页面特性,如 Hadoop、ElasticSearch 等一些大数据组件或数据库等,以下是 CentOS7 开机自动关闭透明大页面方法。
临时关闭
临时关闭,重启后失效。
1 | echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag |
开机自动关闭 rc.local
很多网文介绍,将临时关闭的命令写入 /etc/rc.local
,但一定要注意 CentOS7 的 rc.local 默认需要修改权限才会执行。
1 | # Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure |
可通过 cat /sys/kernel/mm/transparent_hugepage/enabled
来进行验证。
开机自动关闭服务化
这里提供另一个将脚本注入到启动服务的方法,新建一个服务配置:
1 | vi /etc/systemd/system/disable-thp.service |
内容如下:
1 | [Unit] |
reload,配置开机自启动:
1 | systemctl daemon-reload |
重启后进行验证:
1 | cat /sys/kernel/mm/transparent_hugepage/enabled |