雨雨雨雨雨 發表於 2023-8-21 00:00:00

详解CentOS 7 网卡命名修改为eth0格式

<p>
        Linux 操作系统的网卡设备的传统命名方式是 eth0、eth1、eth2等,而 CentOS7 提供了不同的命名规则,默认是基于固件、拓扑、位置信息来分配。这样做的优点是命名全自动的、可预知的,缺点是比 eth0、wlan0 更难读,比如 ens33 。</p>
<p>
        <span><strong>一、命名规则策略</strong></span></p>
<p>
        <strong>规则1:</strong></p>
<p>
        对于板载设备命名合并固件或 BIOS 提供的索引号,如果来自固件或 BIOS 的信息可读就命名,比如eno1,这种命名是比较常见的,否则使用规则2。</p>
<p>
        <strong>规则2:</strong></p>
<p>
        命名合并固件或 BIOS 提供的 PCI-E 热插拔口索引号,比如 ens1,如果信息可读就使用,否则使用规则3。</p>
<p>
        <strong>规则3:</strong></p>
<p>
        命名合并硬件接口的物理位置,比如 enp2s0,可用就命名,失败直接到方案5。</p>
<p>
        <strong>规则4:</strong></p>
<p>
        命名合并接口的 MAC 地址,比如 enx78e7d1ea46da,默认不使用,除非用户选择使用此方案。</p>
<p>
        <strong>规则5:</strong></p>
<p>
        使用传统的方案,如果所有的方案都失败,使用类似 eth0 这样的样式。</p>
<p>
        <span><strong> 二、网卡名称字符含义</strong></span></p>
<p>
        1、前2个字符的含义</p>
<ul>
<li>
                en  以太网    Ethernet</li>
        <li>
                wl  无线局域网  WLAN</li>
        <li>
                ww   无线广域网  WWAN</li>
</ul>
<p>
        2、第3个字符根据设备类型选择</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterplain" id="highlighter_587174">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                        <div class="line number3 index2 alt2">
                                                                3</div>
                                                        <div class="line number4 index3 alt1">
                                                                4</div>
                                                        <div class="line number5 index4 alt2">
                                                                5</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="plain plain">o&lt;index&gt;      on-board device index number</code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                        <code class="plain plain">s&lt;slot&gt;      hotplug slot index number</code>
</div>
                                                                <div class="line number3 index2 alt2">
                                                                        <code class="plain plain">x&lt;MAC&gt;       MAC address</code>
</div>
                                                                <div class="line number4 index3 alt1">
                                                                        <code class="plain plain">p&lt;bus&gt;s&lt;slot&gt;   PCI geographical location</code>
</div>
                                                                <div class="line number5 index4 alt2">
                                                                        <code class="plain plain">p&lt;bus&gt;s&lt;slot&gt;   USB port number chain</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        <span><strong>三、修改网卡名称样式为ethx</strong></span></p>
<p>
        如果不习惯使用新的命名规则,可以恢复使用传统的方式命名,编辑 grub 文件,增加两个变量,再使用 grub2-mkconfig 重新生成 grub 配置文件即可。</p>
<p>
        1、编辑 grub 配置文件</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_604664">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                        <div class="line number3 index2 alt2">
                                                                3</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">vim </code><code class="bash plain">/etc/sysconfig/grub</code>  <code class="bash comments"># 其实是/etc/default/grub的软连接</code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                        <code class="bash comments"># 为GRUB_CMDLINE_LINUX变量增加2个参数,具体内容如下(加粗):</code>
</div>
                                                                <div class="line number3 index2 alt2">
                                                                        <code class="bash plain">GRUB_CMDLINE_LINUX=</code><code class="bash string">"crashkernel=auto rd.lvm.lv=cl/root rd.lvm.lv=cl/swap net.ifnames=0 biosdevname=0 rhgb quiet"</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        2、重新生成 grub 配置文件</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_358955">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">grub2-mkconfig -o </code><code class="bash plain">/boot/grub2/grub</code><code class="bash plain">.cfg</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        然后重新启动 Linux 操作系统,通过 ip addr 可以看到网卡名称已经变为 eth0 。</p>
<p>
        3、修改网卡配置文件</p>
<p>
        原来网卡配置文件名称为 ifcfg-ens33,这里需要修改为 ethx 的格式,并适当调整网卡配置文件。</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_195520">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                        <div class="line number3 index2 alt2">
                                                                3</div>
                                                        <div class="line number4 index3 alt1">
                                                                4</div>
                                                        <div class="line number5 index4 alt2">
                                                                5</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash functions">mv</code> <code class="bash plain">/etc/sysconfig/network-scripts/ifcfg-ens33</code> <code class="bash plain">/etc/sysconfig/network-scripts/ifcfg-eth0</code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                        <code class="bash comments"># 修改ifcfg-eth0文件如下内容(其它内容不变)</code>
</div>
                                                                <div class="line number3 index2 alt2">
                                                                        <code class="bash plain">NAME=eth0</code>
</div>
                                                                <div class="line number4 index3 alt1">
                                                                        <code class="bash plain">DEVICE=eth0</code>
</div>
                                                                <div class="line number5 index4 alt2">
                                                                        <code class="bash plain"></code><code class="bash comments"># systemctl restart network.service  # 重启网络服务</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        注意:ifcfg-ens33 文件最好删除掉,否则重启 network 服务时候会报错。</p>
<p>
        以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。</p>
<p>
        原文链接:http://www.centoscn.com/CentOS/config/2017/0215/8502.html</p>
頁: [1]
查看完整版本: 详解CentOS 7 网卡命名修改为eth0格式