Linux啟動網路卡時出現RTNETLINK answers File exists錯誤解決方法
一、問題描述
VMware中克隆虛擬機器是經常的事情,雖然如此,用到虛擬機器時,本人還是喜歡新安裝一個作業系統,針對伺服器的應用,在安裝作業系統時,一併安裝好,並且也花不了多少時間。但最近需要大量的配置一樣的虛擬機器進行測試,故安裝了一個模板虛擬機器,然後直接複製模板虛擬機器到不同的資料夾,然後使用VMware直接開啟使用,但問題出來了,開啟這些複製(克隆)的虛擬機器全部會出現網路無法啟動的問題。使用service
network start 命令出現報錯如下:
device eth0 does not seem to be present
RTNETLINK answers: File exists
RTNETLINK answers: File exists
RTNETLINK answers: File exists
玩Linux蠻多年了,自認為對linux網路配置很熟悉了,我第一直覺就是MAC地址的問題,怎麼更改配置都不行,百度半天,網上很多處理方法都是說與NetworkManager服務衝突導致,只要把該服務停止即可,查半天,本人安裝的作業系統根本就沒這個服務,哪來的衝突?
直到今天才發現原來還有太多的東西需要學習。不過我相信只要肯鑽研及善用谷歌與百度,還是找到了解決方法。
二、原因分析
使用VMware開啟復制過來的作業系統檔案,VMware會為新產生的虛擬機器配置一個與原始虛擬機器網路卡MAC地址不同的網路卡。對於CentOS這樣的Linux系統,會把執行時的網路卡MAC地址記入到/etc/udev/rules.d/70-persistent-net.rules
檔案中。這樣克隆好的新系統裡也儲存了這個記錄。當新系統啟動時,由於vmware已經為其配置了不同的MAC地址,因此係統會在啟動掃描硬體時把這個新的MAC地址的網路卡當做是eth1,並且增加記入上述檔案中。而此時配置檔案裡的/etc/sysconfig/network-scripts/ifcfg-eth0
裡記錄的還是原來的MAC地址,而這個MAC地址在新系統裡是不存在的,所以無法啟動。
三、解決方法
編輯/etc/udev/rules.d/70-persistent-net.rules
找到含NAME="eth0"的那行直接刪除,如下:
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*",ATTR{address}=="00:0c:29:ac:95:31", ATTR{type}=="1",KERNEL=="eth*", NAME="eth0"
--------------------------------------------------------------------------------
編輯含NAME="eth1"的那行:"eth1"更改為"eth0"
--------------------------------------------------------------------------------
編輯/etc/sysconfig/network-scripts/ifcfg-eth0
更改HWADDR地址跟上面rules檔案的MAC地址一樣。
最後 init 6 或者reboot 系統搞定。
相關文章
- Centos7修改預設網路卡名(改為eth0)以及網路卡啟動報錯RTNETLINK answers: File exists處理CentOS
- ubuntu網路卡啟動錯誤解決方法Ubuntu
- Linux下matlab開啟出現啟動桌面時錯誤LinuxMatlab
- vmware server啟動時503錯誤解決Server
- tomcat啟動超時以及啟動之後開啟網頁報404錯誤的解決方法Tomcat網頁
- ghost win10啟動出現錯誤怎麼解決_ghost win10啟動出現錯誤如何修復Win10
- oracle啟動時出現ORA-00205錯誤的方法Oracle
- nginx出現403錯誤的解決方法Nginx
- php抓取https網址出現錯誤的解決方法PHPHTTP
- 行動硬碟引數錯誤怎麼解決?行動硬碟開啟出現引數錯誤的修復方法硬碟
- JDeveloper啟動時老是報錯-解決方法Developer
- ant構建時出現錯誤解決方案
- Unable to create index.lock File exists錯誤Index
- 解決chkconfig設定開機啟動時出現missing LSB的錯誤
- linux解決“XXX is not in the sudoers file”錯誤Linux
- 在LINUX下用EXP匯出資料時出現EXP-00091錯誤的解決方法Linux
- SOLIDWORKS啟動時出現指令碼錯誤問題Solid指令碼
- linux as4網路卡不能啟動的解決辦法Linux
- linux系統重啟網路delaying initialization錯誤的解決方法Linux
- 安裝完fiddler每次啟動出現這錯誤,我的解決!
- Win10系統啟動軟體出現Java虛擬機器錯誤的解決方法Win10Java虛擬機
- Nginx出現413 Request Entity Too Large錯誤解決方法Nginx
- 隨身碟出現防寫錯誤的解決方法
- apache出現 403 permission 和404 not fund錯誤(解決方法)Apache
- service mysql start出錯,mysql啟動不了,解決mysql: unrecognized service錯誤MySqlZed
- Docker啟動故障問題 no such file or directory解決方法Docker
- 工程make時出現"時鐘錯誤的問題"的解決方案
- VMware 啟動報錯 "Failed to lock the file"解決辦法AI
- Windows10系統安裝網路卡驅動出現錯誤怎麼辦Windows
- Python: 安裝 sklearn 包出現錯誤的解決方法Python
- 伺服器出現 HTTP 錯誤程式碼,及解決方法伺服器HTTP
- nginx過一段時間出現400 Bad Request 錯誤的解決方法Nginx
- RMAN備份時出現RMAN-06056: could not access datafile 6 錯誤,解決方法!!
- /initrd目錄的作用和當刪除時出現的錯誤解決方法(轉)
- 解決MySQL啟動時萬惡的1067錯誤(轉)MySql
- No input file specified 出現的原因及解決方法
- The file '/MasterPage.master' does not exist. 類錯誤解決方法AST
- sql出現結果集錯誤以及出現ora-600或者ora-7445錯誤的解決方法思路SQL