一天一個命令之---sysctl
阿新 • • 發佈:2018-12-09
sysctl,這個命令是用來動態修改系統引數的。
sysctl 命令
sysctl命令被用於在核心執行時動態地修改核心的執行引數,可用的核心引數在目錄/proc/sys中。
它包含一些TCP/ip堆疊和虛擬記憶體系統的高階選項,這可以讓有經驗的管理員提高引人注目的系統性能。用sysctl可以讀取設定超過五百個系統變數。
選項 :
-n:列印值時不列印關鍵字;
-e:忽略未知關鍵字錯誤;
-N:僅列印名稱;
-w:當改變sysctl設定時使用此項;
-p:從配置檔案“/etc/sysctl.conf”載入核心引數設定;
-a:列印當前所有可用的核心引數變數和值;
-A:以表格方式列印當前所有可用的核心引數變數和值。
這裡我給大家介紹一下開啟路由轉發的三種方法:
1、
[[email protected] sbin]# sysctl -w net.ipv4.ip_forward=1
net.ipv4.ip_forward = 1
[[email protected] sbin]# sysctl -a|grep ip_for
net.ipv4.ip_forward = 1
2、
echo 1 > /proc/sys/net/ipv4/ip_forward
3、編輯配置檔案
[[email protected] ~]# vim /etc/sysctl.conf
net.ipv4.ip_forward=1
你認為結束了嗎?沒有!不信你查一下:
[[email protected] ~]# sysctl -a | grep ip_for
net.ipv4.ip_forward = 0
然後我們sysctl -p一下:
[[email protected] ~]# sysctl -p net.ipv4.ip_forward = 1 [[email protected] ~]# sysctl -a | grep ip_for net.ipv4.ip_forward = 1
這時候才生效!
前兩種方法都是臨時改變net.ipv4.ip_forward的值,當前生效,第三種是重啟後才能生效。因此,如果我們既想讓他當前生效,重啟後仍然生效,就需要這三種方法結合起來使用!