用ifconfig命令,只有lo,沒有eth0的解決方案
問題描述:視頻中輸入ifconfig命令,顯示eth0和lo,但是自己在虛擬機中並非得到這樣的結果,而是只有lo,即網卡未啟動,也沒有ip,無法用Xshell遠程連接。
解決方案:
1. 進入/etc/sysconfig/network-scripts 目錄,發現有ifcfg-eth0,即網卡(驅動)存在但未啟用。
2. 輸入ifconfig -a命令,可顯示eth0和lo。
3. 輸入ifconfig eth0 up,啟用網卡。此時用ifconfig,只能看到inet6(ipv6?)的地址,沒有inet的地址(即Xshell連接輸入的ip)。
4. 修改/etc/sysconfig/network-scripts/ifcfg-eth0 文件, 把ONBOOT=no 改為 ONBOOT=yes,但ifconfig的結果沒有任何改變。(省略該步驟不知道是否有效)
5. service network restart,重啟。出現shutdown eth0 OK,bring up eth0 OK,determine ip for eth0 OK。
6. 輸入ifconfig,出現eth0的inet地址。用Xshell連接成功。
PS:補充視頻中,從Xshell中setup和設置ip,但是如果沒設置ip Xshell怎麽連接到虛擬機呢。。。請老師和各位同學解答。大家如果按照這個步驟做成功或失敗了也請曬在下面,大家共同探討!
Centos 5(6)可以通過 setup 工具這是 一個eth0文件
Centos7 可以通過 nmtui 工具設置etho文件
還可以手動建立文件 vim /etc/sysconfig/network-script/ifcfg-etho 文件
DEVICE=etho HWADDR=00:0c:29:bd:f6:dc ONBOOT=yes BOOTPROTO=none NETMASK=255.255.255.0 IPADDR=192.168.2.10 GATEWAY=192.168.2.1 TYPE=Ethernet
幾個命令 :
ifconfig eth0 up//啟用網卡 /etc/init.d/network stop service network restart //重啟
Centos 7:重啟的命令 systemctl start network.service(/bin/systemctl start network.service)
註:為了向後兼容,舊的service命令在CentOS 7中仍然可用,它會重定向所有命令到新的systemctl工具。
使用systemctl來啟動/停止/重啟服務
要啟動一個服務,你需要使用如下命令:
# systemctl start httpd.service
這會啟動httpd服務,就我們而言,Apache HTTP服務器。
要停掉它,需要以root身份使用該命令:
# systemctl stop httpd.service
要重啟,你可以使用restart選項,如果服務在運行中,它將重啟服務;如果服務不在運行中,它將會啟動。你也可以使用try-start選項,它只會在服務已經在運行中的時候重啟服務。同時,reload選項你也可以有,它會重新加載配置文件。
# systemctl restart httpd.service # systemctl try-restart httpd.service # systemctl reload httpd.service
檢查服務狀態
要檢查服務狀態,你可以使用status選項,看這裏:
# systemctl status httpd.service
使用啟用/禁用服務來控制開機啟動
你也可以使用enable/disable選項來控制一個服務是否開機啟動,命令如下:
# systemctl enable httpd.service
# systemctl disable httpd.service
在過去的幾年中,對systemd的采用飽受爭議,然而大多數主流發行版都已經逐漸采用或打算在下一個發行版中采用它。所以,它是一個有用的工具,我們需要好好熟悉它。
用ifconfig命令,只有lo,沒有eth0的解決方案