我正在運行 12.04 發行版。我正在尋找可以在我的伺服器上以命令行運行的東西,這將使我能夠更改網路設定。類似的程式可能是network-admin
或 ,netconf
但這些程式需要圖形介面,而我的伺服器上沒有。只有命令列。
有什麼建議的套餐嗎?
編輯
我希望能夠更改 IP 位址、DNS、網關等,並儲存這些設定以供重新啟動。我之前設定過靜態IP ifconfig
,但重新啟動後似乎又恢復了預設網路IP。我刪除了 GUI 以限制進程和佔用的空間。我使用的嵌入式設備沒有很大的儲存空間。它實際上是一個ARM系統發行版。我進入該/etc/network/interfaces
文件,似乎沒有為主網路保存任何設定。我真的希望有一種簡單的方法來實現這一點,例如地址 XXXX ,它將採用網路位址與靜態位址的區別?如果這是有道理的話。
答案1
我會建議nmcli
(手冊頁)。
它已經安裝在 Ubuntu 上。
輸出範例
tim@Hairy14:~$ nmcli -p c
======================================================================================================================
Connection list
======================================================================================================================
NAME UUID TYPE TIMESTAMP-REAL
----------------------------------------------------------------------------------------------------------------------
Tim's Phone Network 39bdb4e5-bce2-498e-ba2f-326e9601ea21 bluetooth never
Hotspot e9d19b97-a01e-4017-9f64-3f663f5a025b 802-11-wireless Mon 28 Jul 2014 10:56:02 BST
Tim's Phone Network e0f716d4-c84f-4cd0-8ff6-140471583bea bluetooth never
Wired Connection RIP 516797eb-78cf-4930-9d3a-b0be1b861f42 802-3-ethernet Wed 23 Jul 2014 12:01:28 BST
Wired connection SIP 57816f79-049b-4ecc-806c-c48278845fc2 802-3-ethernet Wed 30 Jul 2014 16:52:14 BST
選項:
tim@Hairy14:~$ nmcli
Usage: nmcli [OPTIONS] OBJECT { COMMAND | help }
OPTIONS
-t[erse] terse output
-p[retty] pretty output
-m[ode] tabular|multiline output mode
-f[ields] <field1,field2,...>|all|common specify fields to output
-e[scape] yes|no escape columns separators in values
-n[ocheck] do not check nmcli and NetworkManager versions
-v[ersion] show program version
-h[elp] print this help
OBJECT
nm NetworkManager's status
c[onnection] NetworkManager's connections
d[evice] devices managed by NetworkManager
tim@Hairy14:~$ nmcli -p
Usage: nmcli [OPTIONS] OBJECT { COMMAND | help }
OPTIONS
-t[erse] terse output
-p[retty] pretty output
-m[ode] tabular|multiline output mode
-f[ields] <field1,field2,...>|all|common specify fields to output
-e[scape] yes|no escape columns separators in values
-n[ocheck] do not check nmcli and NetworkManager versions
-v[ersion] show program version
-h[elp] print this help
OBJECT
nm NetworkManager's status
c[onnection] NetworkManager's connections
d[evice] devices managed by NetworkManager
因此要顯示 nm 的狀態:
nmcli -p nm
答案2
答案3
嘗試使用所需的 IP 設定編輯 /etc/network/interfaces 檔案。例子
vi /etc/network/interfaces
你的文件應該看起來像這樣
## dh2 generated for "machine name" : 2014-07-09 15:37:35
# gateway address space is 'xxx'
# xxx.xxx.xxx.xxx
# assigned : "machine name" : machine :
iface eth0 inet static
address xxx.xxx.xxx.xxx
netmask xxx.xxx.xxx.xxx
gateway xxx.xxx.xxx.xxx
broadcast xxx.xxx.xxx.xxx
up route add -net x.x.x.x netmask x.x.x.x gw x.x.x.x dev eth0 || true
down route delete -net x.x.x.x netmask x.x.x.x gw x.x.x.x dev eth0 || true
up route add -net x.x.x.x netmask x.x.x.x gw x.x.x.x dev eth0 || true
down route delete -net x.x.x.x netmask x.x.x.x gw x.x.x.x dev eth0 || true
# loopback
iface lo inet loopback
# auto interfaces (all of them!)
auto eth0 lo