linux-centos7网卡ens33丢失导致网络问题

在一台CentOS7虚拟机中遇到开机后无法连接网络的问题,ifconfig命令显示没有ens33网卡,而其他虚拟机正常。系统日志显示network.service启动失败,错误信息为Fileexists。尝试通过禁用NetworkManager,启用network服务并重启网卡来解决问题。最后成功启动ens33网卡,能正常进行网络连接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题:centos7开机出现问题无法连接网络,之前正常。

执行 ifconfig 显示没有ens33网卡,但是同样的其他虚拟机却是正常状态:

[root@hadoop108 ~]# ifconfig
lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 11496  bytes 900336 (879.2 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 11496  bytes 900336 (879.2 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255
        ether 52:54:00:71:26:9e  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

查看ip link

[root@hadoop108 ~]# ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: ens33: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 00:0c:29:f2:ae:65 brd ff:ff:ff:ff:ff:ff
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default qlen 1000
    link/ether 52:54:00:71:26:9e brd ff:ff:ff:ff:ff:ff
4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN mode DEFAULT group default qlen 1000
    link/ether 52:54:00:71:26:9e brd ff:ff:ff:ff:ff:ff

显示ens33网卡为DOWN状态,

查看网络状态:

[root@hadoop108 ~]# systemctl status network.service
● network.service - LSB: Bring up/down networking
Loaded: loaded (/etc/rc.d/init.d/network; bad; vendor preset: disabled)
Active: failed (Result: exit-code) since 三 2023-05-24 09:16:00 CST; 31s ago
Docs: man:systemd-sysv-generator(8)
Process: 9720 ExecStart=/etc/rc.d/init.d/network start (code=exited, status=1/FAILURE)

5月 24 09:16:00 hadoop108 network[9720]: RTNETLINK answers: File exists
5月 24 09:16:00 hadoop108 network[9720]: RTNETLINK answers: File exists
5月 24 09:16:00 hadoop108 network[9720]: RTNETLINK answers: File exists
5月 24 09:16:00 hadoop108 network[9720]: RTNETLINK answers: File exists
5月 24 09:16:00 hadoop108 network[9720]: RTNETLINK answers: File exists
5月 24 09:16:00 hadoop108 network[9720]: RTNETLINK answers: File exists
5月 24 09:16:00 hadoop108 systemd[1]: network.service: control process exited, code=exited status=1
5月 24 09:16:00 hadoop108 systemd[1]: Failed to start LSB: Bring up/down networking.
5月 24 09:16:00 hadoop108 systemd[1]: Unit network.service entered failed state.
5月 24 09:16:00 hadoop108 systemd[1]: network.service failed.

 重启网卡

[root@hadoop108 ~]# systemctl restart network
Job for network.service failed because the control process exited with error code. See "systemctl status network.service" and "journalctl -xe" for details.
[root@hadoop108 ~]# journalctl -xe
5月 24 09:41:01 hadoop108 NetworkManager[685]: <info>  [1684892461.3726] audit: op="con
5月 24 09:41:01 hadoop108 network[5872]: 正在打开接口 ens33: 错误:连接激活失败:No su
5月 24 09:41:01 hadoop108 network[5872]: [失败]
5月 24 09:41:01 hadoop108 network[5872]: RTNETLINK answers: File exists
5月 24 09:41:01 hadoop108 network[5872]: RTNETLINK answers: File exists
5月 24 09:41:01 hadoop108 network[5872]: RTNETLINK answers: File exists
5月 24 09:41:01 hadoop108 network[5872]: RTNETLINK answers: File exists
5月 24 09:41:01 hadoop108 network[5872]: RTNETLINK answers: File exists
5月 24 09:41:01 hadoop108 network[5872]: RTNETLINK answers: File exists
5月 24 09:41:01 hadoop108 network[5872]: RTNETLINK answers: File exists
5月 24 09:41:01 hadoop108 network[5872]: RTNETLINK answers: File exists
5月 24 09:41:01 hadoop108 network[5872]: RTNETLINK answers: File exists
5月 24 09:41:01 hadoop108 systemd[1]: network.service: control process exited, code=exi
5月 24 09:41:01 hadoop108 systemd[1]: Failed to start LSB: Bring up/down networking.
-- Subject: Unit network.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit network.service has failed.
-- 
-- The result is failed.
5月 24 09:41:01 hadoop108 systemd[1]: Unit network.service entered failed state.
5月 24 09:41:01 hadoop108 systemd[1]: network.service failed.
5月 24 09:41:01 hadoop108 polkitd[616]: Unregistered Authentication Agent for unix-proc

查看日志:

5月 24 09:41:01 hadoop108 NetworkManager[685]: <info>  [1684892461.3726] audit: op="connection-activate" uuid="b90d3d59-d742-45b5-ba56-f5b47644b948" name="ens33" result="fail" reason="No suitable device found fo
5月 24 09:41:01 hadoop108 network[5872]: 正在打开接口 ens33: 错误:连接激活失败:No suitable device found for this connection (device lo not available because device is strictly unmanaged).
5月 24 09:41:01 hadoop108 network[5872]: [失败]
5月 24 09:41:01 hadoop108 network[5872]: RTNETLINK answers: File exists
5月 24 09:41:01 hadoop108 network[5872]: RTNETLINK answers: File exists
5月 24 09:41:01 hadoop108 network[5872]: RTNETLINK answers: File exists
5月 24 09:41:01 hadoop108 network[5872]: RTNETLINK answers: File exists
5月 24 09:41:01 hadoop108 network[5872]: RTNETLINK answers: File exists
5月 24 09:41:01 hadoop108 network[5872]: RTNETLINK answers: File exists
5月 24 09:41:01 hadoop108 network[5872]: RTNETLINK answers: File exists
5月 24 09:41:01 hadoop108 network[5872]: RTNETLINK answers: File exists
5月 24 09:41:01 hadoop108 network[5872]: RTNETLINK answers: File exists
5月 24 09:41:01 hadoop108 systemd[1]: network.service: control process exited, code=exited status=1
5月 24 09:41:01 hadoop108 systemd[1]: Failed to start LSB: Bring up/down networking.
-- Subject: Unit network.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit network.service has failed.
-- 
-- The result is failed.
5月 24 09:41:01 hadoop108 systemd[1]: Unit network.service entered failed state.
5月 24 09:41:01 hadoop108 systemd[1]: network.service failed.
5月 24 09:41:01 hadoop108 polkitd[616]: Unregistered Authentication Agent for unix-process:5866:54555 (system bus name :1.120, object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale zh_CN.UTF-8) (di
~
~

 尝试启动ens33网络接口失败:

[root@hadoop108 ~]# ifup ens33
错误:连接激活失败:No suitable device found for this connection (device lo not available because device is strictly unmanaged).

问题总结:vm虚拟机下其他centos7是正常的,单台centos7网络异常,不是由于windows中VMware net相关服务导致的,是单台centos7的问题导致。确保配置文件(/etc/sysconfig/network-scripts/ifcfg-ens33)正常的情况下,可以尝试以下方法:

  1. NetworkManager服务从系统启动时的运行级别中移除,以防止它在系统启动时自动运行,手动配置网络连接
    [root@hadoop108 ~]# chkconfig NetworkManager off
    注意:正在将请求转发到“systemctl disable NetworkManager.service”。
    Removed symlink /etc/systemd/system/multi-user.target.wants/NetworkManager.service.
    Removed symlink /etc/systemd/system/dbus-org.freedesktop.nm-dispatcher.service.
    Removed symlink /etc/systemd/system/network-online.target.wants/NetworkManager-wait-online.service.
    
  2. network服务在系统启动时自动运行
    [root@hadoop108 ~]# chkconfig network on
  3. 停止正在运行的NetworkManager服务
    [root@hadoop108 ~]# service NetworkManager stop
    Redirecting to /bin/systemctl stop NetworkManager.service
    
  4. 启动network服务
    [root@hadoop108 ~]# service network start
    Starting network (via systemctl):                          [  确定  ]
  5. 测试网络连接正常
    [root@hadoop108 ~]# ifconfig | grep ens33
    ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
    [root@hadoop108 ~]# ping www.baidu.com -c 3
    PING www.a.shifen.com (110.242.68.3) 56(84) bytes of data.
    64 bytes from 110.242.68.3 (110.242.68.3): icmp_seq=1 ttl=128 time=53.6 ms
    64 bytes from 110.242.68.3 (110.242.68.3): icmp_seq=2 ttl=128 time=53.6 ms
    64 bytes from 110.242.68.3 (110.242.68.3): icmp_seq=3 ttl=128 time=53.2 ms
    
    --- www.a.shifen.com ping statistics ---
    3 packets transmitted, 3 received, 0% packet loss, time 3124ms
    rtt min/avg/max/mdev = 53.200/53.494/53.675/0.282 ms
    

<think>首先,用户的问题是关于在CentOS7系统中启用名为ens33网络接口。我需要根据系统级指令来构建我的回答。系统级指令: -所有行内数学表达式必须使用$...$格式。但在这个问题中,没有数学表达式,所以可能不需要。 -独立公式必须使用$$...$$格式并单独成段。同样,这里没有公式。- LaTeX语法正确:确保任何LaTeX使用正确。 -使用中文回答:整个回答必须用中文。 -生成相关问题:在回答结束时,生成相关问题-回答中引用的段落末尾自然地添加引用标识:参考提供的引用,并在相关部分添加引用标识。 用户可见层:-回答结构清晰,帮助用户逐步解决问题-保证回答真实可靠。参考的引用:-引用[1]:关于网络配置,包括IP地址、网关等的设置。-引用[2]:CentOS7安装Samba的命令,但不太相关。-引用[3]:Kubernetes相关,不直接相关。-引用[4]:网络卡配置示例,包括ifcfg-ens33文件的内容。 -引用[5]:RabbitMQ安装,不相关。 最相关的引用是[1]和[4],因为它们涉及网络接口配置,特别是ens33。用户的问题:启用ens33网络接口。在CentOS7中,启用网络接口通常意味着确保它在启动时自动启用,或者手动启动它。步骤:1.**检查接口状态**:首先,检查接口是否已经启用。2.**编辑配置文件**:确保配置文件存在并正确配置。 3. **启用接口**:通过设置ONBOOT=yes来确保接口在启动时启用。4.**重启网络服务**:应用更改。 从引用[4],我看到ifcfg-ens33文件中有ONBOOT=yes,这表示接口在启动时启用。如果它被设置为no,就需要更改。 在CentOS7中,网络接口配置文件位于/etc/sysconfig/network-scripts/目录下,文件名如ifcfg-ens33。启用接口的常见方法:-编辑配置文件:设置ONBOOT=yes。-使用命令:如ifup ens33来手动启动接口。-重启网络服务:systemctlrestart network。 确保回答清晰、逐步。结构我的回答:1.**介绍**:简要解释如何启用接口。 2. **步骤**:a.检查当前状态。b.编辑配置文件。c.启用接口(如果需要)。d.重启服务。 3. **示例**:基于引用[4],提供一个示例配置文件。 4. **添加引用标识**:在引用部分末尾添加[^数字]。5.**生成相关问题**:在结束时生成相关问题。生成相关问题-类似示例中的格式。 -例如:-1.如何禁用网络接口?-2.如何配置静态IP地址?-3.网络服务无法启动怎么办? 确保使用中文。最终回答:-用中文写。-结构清晰。 -添加引用。-生成问题。</think>### 在 CentOS 7 中启用网络接口 ens33CentOS 7 系统中,启用网络接口 `ens33` 通常涉及编辑网络配置文件并确保其在系统启动时自动激活。以下是详细步骤,基于 CentOS 7网络管理机制(使用 NetworkManager 或传统 network 服务)。整个过程需要 root 权限,请先使用 `su` 或 `sudo` 切换到 root 用户。 #### 步骤 1: 检查当前接口状态 首先,确认 `ens33` 接口是否已禁用或未激活: ```bash ip link show ens33 ``` - 如果输出显示 `state DOWN`,表示接口已禁用。 - 如果接口未列出,请检查配置文件是否存在(见下一步)。 #### 步骤 2: 编辑网络配置文件 网络接口配置文件位于 `/etc/sysconfig/network-scripts/` 目录下,文件名为 `ifcfg-ens33`。如果文件不存在,可以创建它;如果存在,确保设置正确: 1. 使用文本编辑器打开文件: ```bash vi /etc/sysconfig/network-scripts/ifcfg-ens33 ``` 2. 确保以下关键参数设置为 `yes`(特别是 `ONBOOT`): ```ini TYPE=Ethernet BOOTPROTO=dhcp # 或 static 配置静态 IP DEFROUTE=yes NAME=ens33 DEVICE=ens33 ONBOOT=yes # 确保此值为 yes,表示启动时自动启用 # 可选:添加 IP 地址、网关等,如 IPADDR=192.168.1.100, GATEWAY=192.168.1.1 ``` 参考示例配置文件[^4]: > 在 CentOS 7 中,网络接口配置文件需包含 `ONBOOT=yes` 以启用启动时激活。例如: > ```ini > TYPE=Ethernet > PROXY_METHOD=none > DEFROUTE=yes > NAME=ens33 > DEVICE=ens33 > ONBOOT=yes > # IPADDR=192.168.100.208 > # NETMASK=255.255.254.0 > # GATEWAY=192.168.100.1 > ``` > [^4] 3. 保存并退出编辑器(在 vi 中按 `Esc`,输入 `:wq`)。 #### 步骤 3: 启用接口并重启网络服务 - **手动启动接口**(临时启用,无需重启): ```bash ifup ens33 ``` 或使用: ```bash ip link set ens33 up ``` - **永久启用**(确保重启后生效):重启网络服务以应用配置: ```bash systemctl restart network ``` 如果使用 NetworkManager,执行: ```bash systemctl restart NetworkManager ``` #### 步骤 4: 验证接口状态 - 检查接口是否已激活: ```bash ip addr show ens33 ``` 输出应显示 `state UP` 和分配的 IP 地址。 - 测试网络连接: ```bash ping -c 4 google.com ``` #### 常见问题解决 - **如果接口未激活**:确保配置文件无语法错误,并检查 `ONBOOT=yes`。 - **服务启动失败**:使用 `journalctl -xe` 查看日志,排除配置冲突。 - **物理机网络共享**:在虚拟化环境中,确保物理机网络配置正确(如网关和 DNS 设置)[^1]。 通过以上步骤,`ens33` 接口应成功启用。如果您需要配置静态 IP 或其他高级设置,请参考相关文档。
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值