centos6eth0啟動
1. Centos6與Centos7有什麼相同點
系統類型
centos6的系統類型是sysvinit
centos7的系統類型是systemd
可以通過pstree -p查看系統類型,centos6的第一個進程是init(pid=1),centos7的第一個進程為systemd(pid=1)
centos6是按一定順序啟動,啟動很慢;centos7是並行啟動,啟動速度快
其實centos6和7很多不同之處都是和系統類型sysvinit/systemd有關系。
服務管理
centos6 採用 service和chconfig管理服務
centos7 採用systemctl 管理服務,但是還可以使用service和chkconfig命令
網路管理
網卡名
centos6網卡名是eth0,centos7網卡名,介面名稱被自動基於固件,拓撲結構和位置信息來確定,現在即使添加或移除網路設備,介面名稱仍然保持固定,而無需重新枚舉,和壞掉的硬體可以無縫替換。可以在centos7的 /etc/default/grub 的GRUB_CMDLINE_LINUX的雙引號內添加「net.ifnames=0 biosdevname=0」grub2-mkconfig -o /etc/grub2.cfg,再把網卡配置文件/etc/sysconfig/network-scripts/ifcfg-xxx修改後,重啟即可。一起學習linux
網路配置命令
在CentOS 6中的ifconfig,在CentOS 7中被ip命令取代了(不過現在ifconfig和ip都可以使用);
圖形化網路配置工具nmtui取代了setup。
網路服務
centos6使用/etc/init.d/network服務,centos7新增加了NetworkManager服務,network仍然作為備用使用
主機名等系統文件
主機名
centos 6 的配置文件為/etc/sysconfig/network(永久設置)
centos7的配置文件為/etc/hostname(永久設置)
查看系統版本
redhat系列的(centos)都可以使用cat /etc/redhat-release
登錄提示語
cat /etc/issue #很多生產環境會清空此文件
字元集
centos7的/etc/locale.conf 替換了centos6的/etc/sysconfig/i18n
時區設置
centos6 在/etc/sysconfig/clock centos7沒有此配置文件 ,可以使用timedatectl來設置
timedatectl set-timezone Asia/Shanghai
grub(GRand Unified Bootloader)
centos6 使用grub, centos7使用grub2
內核
centos6的內核版本是2.6.X , centos7的內核版本是3.10.x,使用uname -r查看
文件系統
centos的文件系統默認是ext4(Fourth EXtended filesystem),centos7的文件系統默認是xfs
文件結構變化
centos6的/bin, /sbin, /lib, and /lib64在/下
centos7的/bin, /sbin, /lib, and /lib64移到/usr下
2. linux系統修改網卡 ens33 為 eth0 的原因以及解決辦法
首先,需要了解 eth0 與 ens33 的關系。在 Linux 系統中,乙太網卡介面通常以 ethN 的形式命名,其中 N 是數字。在 CentOS 7 中,en 表示 ethernet 乙太網,常見的 enX 類型有 o、p 和 s,分別代表主板板載網卡、獨立網卡和熱插拔網卡,nnn (數字) 表示 MAC 地址和主板信息計算出的唯一序列。
舉例來說,如果主機有一張乙太網卡,那麼其網路介面就是 eth0(第一張網卡從 0 開始編號)。從 CentOS 7 開始,網卡編號採用 dmidecode 命名方案,以實現網卡名字的永久唯一化。eth0 是當上述名稱都不適用時的默認網卡編號。在 CentOS 6 及之前版本,網路介面使用連續號碼命名,如 eth0、eth1 等,增加或刪除網卡時,名稱可能會變化。
要查看網卡和硬體信息,可以使用以下命令:lspci | grep -i ethernet、lshw、lsscsi、lscpu、lsusb。查看 CPU 信息(型號)可以使用 cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c,查看內存信息可以使用 cat /proc/meminfo,查看操作系統內核信息可以使用 uname -a,查看操作系統發行版信息可以使用 cat /etc/issue 或 *.release,查看機器型號可以使用 dmidecode | grep "Proct Name",查看網卡信息可以使用 dmesg | grep -i eth,查看伺服器品牌和型號可以使用 grep 『DMI『 /var/log/dmesg,查看 Linux 的內核版本可以使用 cat /proc/version 或 uname -a 或 -r,內核版本號由三組數字組成,分別表示內核主版本、穩定版本和錯誤修補的次數。
要修改網卡配置文件,將 NAME 和 DEVICE 項修改為 eth0,並將 ONBOOT 修改為 yes。將 ifcfg-ens33 重命名為 ifcfg-eth0,編輯 /etc/default/grub 禁用可預測命名規則,並添加"net.ifnames=0 biosdevname=0" 到 GRUB_CMDLINE_LINUX 變數。運行 grub2-mkconfig -o /boot/grub2/grub.cfg 重新生成 GRUB 配置並更新內核參數。重啟系統後,使用 ip addr 或 ifconfig 檢驗配置。
ifconfig 用於顯示或設置網路設備的參數信息。示例命令包括關閉網卡、啟動網卡、配置 IP 地址、配置 IP 地址和子網掩碼、配置 IP 地址和子網掩碼及廣播地址、開啟 ARP 協議、關閉 ARP 協議等。
3. centos啟動網卡命令解決centos開機不啟動網卡問題
1、CentOS6.9安裝完成之後,VMware虛擬機網卡設置為NAT模式,也就是通過本機的網卡nat出去訪問網路,但是奇怪的是開機後無法ping通外部網路
2、那麼是什麼原因呢,打開ifconfig查看一下發現是網卡沒有啟用,這里僅僅只有一個回環地址
3、通過上圖可以發現網卡沒有開啟,那麼通過命令ifup eth0開啟網卡後試試呢,這次可以ping通網路了,說明剛才是網卡沒有開啟導致的
4、通過上面的實驗說明該系統的網卡沒有開機自動啟動,那麼該如何讓它能開機自動啟動呢,下面是具體辦法,首先進入/etc/sysconfig/network-scripts/目錄內
5、然後通過vi命令打開ifcfg-eth0編輯網卡信息,這里發現網卡默認狀態為開機不啟動的
6、這里只需要將ONBOOT=no修改為yes即可實現開機自動了,點擊i鍵進入編輯模式,然後修改為yes,按下esc鍵,再按:wq保存退出即可
7、然後還可以將network服務業加入到自動啟動裡面,使用chkconfig network on命令即可實現
8、通過以上的操作之後再次重啟centos就會發現網卡會自動啟動了,說明上面的配置生效
4. 請教一個關於vmware的eth0不可用的問題
系統啟動時是否激活網。(ONBOOT=yes)
虛擬機是否移動或克隆過,如果是,修改文件:70-persistent-net.rules(基於centos6系統)
vmware網卡重置:編輯——虛擬網路編輯器——還原默認設置
vmware網卡是否警用;網路服務是否開啟。
5. Linux系統\Centos沒有網卡eth0配置文件怎麼辦
一、配置文件詳解
在RHEL或者CentOS等Redhat系的Linux系統里,跟網路有關的主要設置文件如下:
/etc/host.conf 配置域名服務客戶端的控制文件
/etc/hosts 完成主機名映射為IP地址的功能
/etc/resolv.conf 域名服務客戶端的配置文件,用於指定域名伺服器的位置
/etc/sysconfig/network 包含了主機最基本的網路信息,用於系統啟動.
/etc/sysconfig/network-script/ 系統啟動時初始化網路的一些信息
/etc/xinetd.conf 定義了由超級進程xinetd啟動的網路服務
/etc/networks 完成域名與網路地址的映射
/etc/protocols 設定了主機使用的協議以及各個協議的協議號
/etc/services 設定主機的不同埠的網路服務
1. /etc/host.conf文件的默認信息如下:
multi on #允許主機擁有多個IP地址
order hosts,bind #主機名解析順序,即本地解析,DNS域名解析的順序
這個文件一般不需要我們修改,默認的解析順序是本地解析,DNS伺服器解析,也就是說在本系統里對於一個主機名首先進行本地解析,如果本地解析沒有,然後進行DNS伺服器解析。
2. /etc/hosts文件默認的內容大概如下:
127.0.0.1 butbueatiful localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6
可見,默認的情況是本機ip和本機一些主機名的對應關系,第一行是ipv4信息,第二行是ipv6信息,如果用不上ipv6本機解析,一般把該行注釋掉。
第一行的解析效果是,butbueatiful localhost.localdomain localhost都會被解析成127.0.0.1,我們可以用ping試試。
[root@butbueatiful ~]# ping -c 3 butbueatiful
PING butbueatiful (127.0.0.1) 56(84) bytes of data.
64 bytes from butbueatiful (127.0.0.1): icmp_seq=1 ttl=64 time=0.061 ms
64 bytes from butbueatiful (127.0.0.1): icmp_seq=2 ttl=64 time=0.052 ms
64 bytes from butbueatiful (127.0.0.1): icmp_seq=3 ttl=64 time=0.051 ms
--- butbueatiful ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 1999ms
rtt min/avg/max/mdev = 0.051/0.054/0.061/0.009 ms
[root@butbueatiful ~]# ping -c 3 localhost.localdomain
PING butbueatiful (127.0.0.1) 56(84) bytes of data.
64 bytes from butbueatiful (127.0.0.1): icmp_seq=1 ttl=64 time=0.055 ms
64 bytes from butbueatiful (127.0.0.1): icmp_seq=2 ttl=64 time=0.035 ms
64 bytes from butbueatiful (127.0.0.1): icmp_seq=3 ttl=64 time=0.050 ms
--- butbueatiful ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 1999ms
rtt min/avg/max/mdev = 0.035/0.046/0.055/0.011 ms
看到上面的結果,你可能會問為什麼ping localhost.localdomain的時候,下面顯示的是卻是butbueatiful,這是因為第一個主機名butbueatiful後面的那些主機名其實都是butbueatiful的主機別名。
如果我們要追加新的本地解析,比如我們希望在我們的機器里把yyyy.com和www.yyyy.com都解析成192.168.0.100,那麼就追加如下一句即可:
192.168.0.100 yyyy.com www.yyyy.com
同樣,在這里,www.yyyy.com是yyyy.com的主機別名。
如果你仔細一想,會發現,其實這個文件是很危險的,如果有人惡意修改了你這個文件,比如把淘寶的網站域名解析到了他的釣魚網站,那你就要中招了。
3. /etc/resolv.conf, 指定域名解析的DNS伺服器IP等信息, 配置參數一般接觸到的有4個:
nameserver 指定DNS伺服器的IP地址
domain 定義本地域名信息
search 定義域名的搜索列表
sortlist 對gethostbyname返回的地址進行排序
但是最常用的配置參數是nameserver,其他的可以不設置,這個參數指定了DNS伺服器的IP地址,如果設置不正確,就無法進行正常的域名解析。
一般來說,推薦設置2個DNS伺服器,比如我們用google的免費DNS伺服器,那麼該文件的設置內容如下:
nameserver 8.8.8.8
nameserver 8.8.4.4
同樣,這個文件也是危險的,如果被人惡意改成了他自己的DNS伺服器,他就可以為所欲為的控制你通過域名訪問的每個目的地了,這就是常說的DNS劫持。
4. /etc/sysconfig/network, 典型的配置如下:
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=butbueatiful
GATEWAY=192.168.0.1
參數簡要解釋:
NETWORK 設置網路是否有效,yes有效,no無效
NETWORKING_IPV6 設置ipv6網路是否有效,yes有效,no無效
HOSTNAME 設置伺服器的主機名,最好和/etc/hosts里設置一樣,否則在使用一些程序的時候會有問題。
GATEWAY 指定默認網關IP
5. ifcfg-ethX, 設置對應網口的IP等信息, 比如第一個網口, 那麼就是/etc/sysconfig/network-scripts/ifcfg-eth0,配置例子:
DEVICE="eth0"
BOOTPROTO="static"
BROADCAST="192.168.0.255"
HWADDR="00:16:36:1B:BB:74"
IPADDR="192.168.0.100"
NETMASK="255.255.255.0"
ONBOOT="yes"
參數簡要解釋:
DEVICE 設備名,不要自己亂改,和文件ifcfg-ethX里的ethX要一致
BROADCAST 廣播地址
HWADDR 物理地址,這個你不要亂改
IPADDR IP地址
NETMASK 子網掩碼
ONBOOT 啟動或者重啟網路時,是否啟動該設備,yes是啟動,no是不啟動
BOOTPROTO 開機協議,最常見的三個參數如下:
static(靜態IP)
none(不指定,設置固定ip的情況,這個也行,但是如果要設定多網口綁定bond的時候,必須設成none)
dhcp(動態獲得IP相關信息)
6. route-ethX,比如第一個網口eth0的路由信息,那麼就是/etc/sysconfig/network-scripts/route-eth0:
比如我們現在有這樣一個需求,通過eth0去網路172.17.27.0/24不走默認路由,需要走192.168.0.254,那麼我們第一反應,肯定是用route命令追加路由信息:
[root@butbueatiful ~]# route add -net 172.17.27.0 netmask 255.255.255.0 gw 192.168.0.254 dev eth0
可是,你沒意識到的是,這樣只是動態追加的而已,重啟網路後,路由信息就消失了,所以需要設置靜態路由,這時候就要設置/etc/sysconfig/network-scripts/route-eth0文件了,如果沒有該文件,你就新建一個:
[root@butbueatiful ~]# vi /etc/sysconfig/network-scripts/route-eth0
#追加
172.17.27.0/24via 192.168.0.254
這下即使重啟網路,重啟系統,該路由也會自動載入,當然了,如果你沒有這樣的需要,那麼這個文件就沒必要創建和配置了。