查看和修改Linux實例內(nèi)核參數(shù)
發(fā)布時間:2021-04-14 點擊數(shù):614
在修改內(nèi)核參數(shù)前,需要注意以下幾點:
- 從實際需求出發(fā),盡量有相關(guān)數(shù)據(jù)的支撐,不建議隨意調(diào)整內(nèi)核參數(shù)。
- 了解參數(shù)的具體作用,需注意同類型或版本的環(huán)境中,內(nèi)核參數(shù)可能有所不同。
- 備份ECS實例中的重要數(shù)據(jù)。關(guān)于如何備份數(shù)據(jù)請參見創(chuàng)建快照。
本文提供以下兩種修改Linux實例內(nèi)核參數(shù)的方法。
方法一:通過/proc/sys/目錄查看和修改內(nèi)核參數(shù)
/proc/sys/目錄是Linux內(nèi)核在啟動后生成的偽目錄,其目錄下的net文件夾中存放了當(dāng)前系統(tǒng)中開啟的所有內(nèi)核參數(shù),目錄樹結(jié)構(gòu)與參數(shù)的完整名稱相關(guān),如net.ipv4.tcp_tw_recycle,它對應(yīng)的文件是/proc/sys/net/ipv4/tcp_tw_recycle文件,文件的內(nèi)容就是參數(shù)值。方法一中修改的參數(shù)值僅在當(dāng)前運行中生效,系統(tǒng)重啟后會回滾到歷史值,一般用于臨時性驗證修改的效果。若需要永久性修改,請參見方法二。
-
查看內(nèi)核參數(shù):使用cat命令查看對應(yīng)文件的內(nèi)容,執(zhí)行以下命令,查看net.ipv4.tcp_tw_recycle的值。
cat /proc/sys/net/ipv4/tcp_tw_recycle
-
修改內(nèi)核參數(shù):使用echo命令修改內(nèi)核參數(shù)對應(yīng)的文件,執(zhí)行以下命令,將net.ipv4.tcp_tw_recycle的值修改為0。
echo "0" > /proc/sys/net/ipv4/tcp_tw_recycle
方法二:通過sysctl.conf文件查看和修改內(nèi)核參數(shù)
-
查看內(nèi)核參數(shù):執(zhí)行sysctl -a命令,查看當(dāng)前系統(tǒng)中生效的所有參數(shù),系統(tǒng)顯示類似如下。
net.ipv4.tcp_app_win = 31 net.ipv4.tcp_adv_win_scale = 2 net.ipv4.tcp_tw_reuse = 0 net.ipv4.tcp_frto = 2 net.ipv4.tcp_frto_response = 0 net.ipv4.tcp_low_latency = 0 net.ipv4.tcp_no_metrics_save = 0 net.ipv4.tcp_moderate_rcvbuf = 1 net.ipv4.tcp_tso_win_divisor = 3 net.ipv4.tcp_congestion_control = cubic net.ipv4.tcp_abc = 0 net.ipv4.tcp_mtu_probing = 0 net.ipv4.tcp_base_mss = 512 net.ipv4.tcp_workaround_signed_windows = 0 net.ipv4.tcp_challenge_ack_limit = 1000 net.ipv4.tcp_limit_output_bytes = 262144 net.ipv4.tcp_dma_copybreak = 4096 net.ipv4.tcp_slow_start_after_idle = 1 net.ipv4.cipso_cache_enable = 1 net.ipv4.cipso_cache_bucket_size = 10 net.ipv4.cipso_rbm_optfmt = 0 net.ipv4.cipso_rbm_strictvalid = 1
-
通過以下兩種方式,修改內(nèi)核參數(shù)。
說明:調(diào)整內(nèi)核參數(shù)后,內(nèi)核處于不穩(wěn)定狀態(tài),請務(wù)必重啟實例。
-
執(zhí)行以下命令,臨時修改內(nèi)核參數(shù)。
/sbin/sysctl -w kernel.parameter="[$Example]"說明:[$Example]為參數(shù)值,如sysctl -w net.ipv4.tcp_tw_recycle="0"命令,將參數(shù)值改為0。
-
通過修改配置文件的方式修改內(nèi)核參數(shù)。
-
執(zhí)行以下命令,修改/etc/sysctl.conf文件中的參數(shù)。
vi /etc/sysctl.conf -
執(zhí)行以下命令,使配置生效。
/sbin/sysctl -p
-
執(zhí)行以下命令,修改/etc/sysctl.conf文件中的參數(shù)。
-
執(zhí)行以下命令,臨時修改內(nèi)核參數(shù)。