首頁 > 軟體

CentOS7中禁用Transparent Huge Pages

2020-06-16 17:27:18

CentOS6版本開始引入了Transparent Huge Pages(THP),從CentOS7版本開始,該特性預設就會啟用。儘管THP的本意是為提升記憶體的效能,不過某些資料庫廠商還是建議直接關閉THP(比如說Oracle、MariaDB、MongoDB等),否則可能會導致效能出現下降。

首先檢查THP的啟用狀態:
[root@localhost ~]# cat /sys/kernel/mm/transparent_hugepage/defrag
[always] madvise never
[root@localhost ~]# cat /sys/kernel/mm/transparent_hugepage/enabled
[always] madvise never
這個狀態就說明都是啟用的。

我們這個時候當然可以逐個修改上述兩檔案,來禁用THP,但要想一勞永逸的令其永久生效,還是參考下列的步驟。

編輯rc.local檔案:
[root@localhost ~]# vim /etc/rc.d/rc.local

增加下列內容:
if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
 echo never > /sys/kernel/mm/transparent_hugepage/enabled
 fi
 if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
 echo never > /sys/kernel/mm/transparent_hugepage/defrag
 fi

儲存退出,然後賦予rc.local檔案執行許可權:
[root@localhost ~]# chmod +x /etc/rc.d/rc.local

最後重新啟動系統,以後再檢查THP應該就是被禁用了
[root@localhost ~]# cat /sys/kernel/mm/transparent_hugepage/enabled
 always madvise [never]
[root@localhost ~]# cat /sys/kernel/mm/transparent_hugepage/defrag
 always madvise [never]

本文永久更新連結地址http://www.linuxidc.com/Linux/2016-11/137515.htm


IT145.com E-mail:sddin#qq.com