打开虚拟机没有ens33,只有lo。NetworkManager和network两种网络管理工具。如果两种都配置会引起冲突

本文描述了解决Linux虚拟机中Xshell无法连接问题的步骤,包括检查网络适配器、使用iplink重置网卡、添加物理地址,以及识别并解决因NetworkManager冲突导致的systemctl问题。

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

上周正常使用来着,忙完再打开虚拟机显示连接不上xshell。ifconfig之后只有lo,以前遇到这种问题都是删除重新解压一份虚拟机,这次尝试解决此问题。以下是解决办法,参考文章会放到最后。

1、首先,我查看了虚拟编辑器地址、网络适配器模式均没有问题。其次修改DNS、namesever都没有用。就连systemctl network restart 都报错不能用了。(没来得及截图,放一张网图)

systemctl network restart报错内容:Job for network.see failed because the ........

2、网卡显示:ip link set ens33 up

首先查看网卡状态:ip link显示down,然后用ip link set ens33 up拉取ens33网卡。再次ifconfig显示ens33。

3、加上了物理地址

以前没有加过物理地址,但是死马当活马医,我加上了物理地址。还注释了8.8.8.8。

4、但此时systemctl network restart还是报错

systemctl stop NetworkManager

systemctl disable NetworkManager

systemctl status NetworkManager

到这里我意识到应该是之前安装reconftw时安装了图形工具导致的冲突。运行以上三条命令再重启网络就行了。

参考链接:

ip link:
虚拟机重启后ifconfig只有lo的问题_linux虚拟机只有lo_TheTrulyAtom的博客-优快云博客文章浏览阅读154次。重启虚拟机后只剩lo网卡的解决办法_linux虚拟机只有lohttps://blog.youkuaiyun.com/weixin_36585549/article/details/132182821

Linux ifconfig只显示 lo 网卡,没有ens网卡解决方案_linux只有lo_攻城狮星河的博客-优快云博客文章浏览阅读696次。之前在调试linux的时候,由于一些不太清楚的误操作,导致ubuntu linux出现无网络问题,现象如下ifconfig 只显示了 lo 网卡lo 网卡:它是本地环回接口。这意味着您的虚拟机当前没有其他网络接口或网络适配器被识别。_linux只有lohttps://blog.youkuaiyun.com/qq_43257914/article/details/132773444物理地址:

解决 Linux 网络 “Job for network.service failed because the control process exite”问题-优快云博客文章浏览阅读7.3w次,点赞164次,收藏440次。经常会有人在centOS 7下更改完静态ip后发现network服务重启不了,翻遍了网络,尝试了各种方法,终于解决了。现把各种解决方法归纳整理,希望能让大家少走点歪路。首先看问题:执行service network restart命令后出现下面的错误:Restarting network (via systemctl): Job for network.service failed because the control process exited with error code.See ._job for network.service failedhttps://blog.youkuaiyun.com/VariatioZbw/article/details/107482739NetworkManager:

关于Job for network.service failed because the control process exited with error code._'unstoppable'的博客-优快云博客文章浏览阅读2w次,点赞31次,收藏64次。关于Job for network.service failed because the control process exited with error code. _job for network.https://blog.youkuaiyun.com/weixin_69007450/article/details/127830383?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-1-127830383-blog-127347530.235^v38^pc_relevant_yljh&spm=1001.2101.3001.4242.2&utm_relevant_index=4Linux下解决网卡重启失败Restarting network (via systemctl): Job for network.service failed较全的解决方案_linux重启网卡失败_菜菜艾的博客-优快云博客文章浏览阅读1.8k次。Linux下解决网卡重启失败Restarting network (via systemctl): Job for network.service failed较全的解决方案_linux重启网卡失败https://blog.youkuaiyun.com/m0_52318340/article/details/133209095内容还是比较丰富的,重新配置路由什么的我没有试,因为我之前是能用的,配置也没有改动过,先尝试的别的办法。大家可以都试试,每个人出的问题可能会不同。

<think>好的,用户现在遇到了“ifcfg-ens33不存在”的问题,我需要帮他们解决。首先,用户可能是在使用基于RHEL的系统,比如CentOS或Fedora,因为这些系统通常使用/etc/sysconfig/network-scripts/目录下的ifcfg-文件来配置网络接口。 首先,我需要确认用户是否在正确的路径下查找文件。用户提到的ifcfg-ens33不存在,可能的原因有几个:系统使用了不同的网络接口命名方式,或者网络管理器(如NetworkManager)正在管理网络配置,而不是传统的ifcfg脚本。 接下来,我应该考虑系统是否启用了可预测的网络接口命名规则,这可能导致接口名称不是ens33,而是其他名称,比如enp0s3等。这时候,用户需要检查实际的接口名称,可以通过ip link命令查看所有网络接口。 另外,现代Linux发行版可能已经转向使用Netplan(Ubuntu)或NetworkManager的keyfile格式,而不再使用旧的ifcfg-文件。例如,Ubuntu使用/etc/netplan/中的YAML文件进行配置,而RHEL 8及以上版本可能使用NetworkManager配置文件存放在/etc/NetworkManager/system-connections/下。 用户可能没有意识到他们的系统已经迁移到了新的配置方式,所以需要引导他们检查正确的配置文件路径。此外,如果用户确实需要使用传统的ifcfg-文件,可能需要手动创建,或者检查是否安装了network-scripts包,因为在较新的版本中这个包可能默认没有安装。 还有可能用户误删了ifcfg-ens33文件,或者安装系统时没有正确配置网络接口。这时候,指导用户如何手动创建配置文件,并设置正确的内容,比如设置BOOTPROTO为dhcp或static,指定IP地址、子网掩码、网关等。 还需要提醒用户在修改配置文件后,重启网络服务或者使用nmcli命令重新加载配置,使更改生效。同时,检查NetworkManager服务是否运行,因为如果服务未启动,配置文件可能不会被正确读取。 另外,用户可能对网络配置不太熟悉,所以需要给出具体的命令示例步骤,确保他们能够逐步操作。比如,使用nano或vim创建文件,输入必要的配置项,保存后应用配置。 最后,总结可能的原因解决方案,帮助用户系统地排查问题,并确保他们了解不同系统版本之间的差异,以及如何适应新的网络配置方法。</think>--- ### **问题诊断与解决方案** 当出现`ifcfg-ens33`文件不存在的提示时,通常由以下原因导致: --- ### **一、常见原因分析** 1. **网络接口名称不匹配** - 系统未使用传统命名规则(如`ens33`),可能因以下情况改变: - 启用 **Predictable Network Interface Names**(可预测命名规则,如`enp0s3`) - 硬件变动(如虚拟机添加新网卡后接口名递增) - **验证当前接口名称**: ```bash ip link show # 列出所有接口(查找类似eth0、enp0s3的名称) ``` 2. **系统使用新式网络配置** - **RHEL/CentOS 8+**:默认使用`NetworkManager`的`keyfile`格式(配置文件路径:`/etc/NetworkManager/system-connections/`) - **Ubuntu 18.04+**:使用`Netplan`(配置文件路径:`/etc/netplan/*.yaml`) 3. **文件被误删或未生成** - 手动删除或未初始化网络配置 --- ### **二、解决方案** #### **步骤1:确认实际接口名称** ```bash # 查看所有网络接口 ip -c link show # 示例输出: # 1: lo: <LOOPBACK>... # 2: enp0s3: <BROADCAST>... # 实际接口名称可能是enp0s3或其他 ``` #### **步骤2:根据系统类型操作** **▨ 场景1:RHEL/CentOS 7 或传统配置** 1. **手动创建配置文件**: ```bash sudo vi /etc/sysconfig/network-scripts/ifcfg-ens33 ``` 2. **填写基础配置**(DHCP示例): ```ini DEVICE=ens33 BOOTPROTO=dhcp ONBOOT=yes TYPE=Ethernet ``` **▨ 场景2:RHEL/CentOS 8+ 或 NetworkManager 主导** 1. **使用`nmcli`生成配置文件**: ```bash sudo nmcli connection add type ethernet con-name ens33 ifname ens33 sudo nmcli connection modify ens33 ipv4.method auto sudo nmcli connection up ens33 ``` - 配置文件将自动生成在:`/etc/NetworkManager/system-connections/ens33.nmconnection` **▨ 场景3:Ubuntu/Debian 系统** 1. **编辑Netplan配置**: ```bash sudo nano /etc/netplan/01-netcfg.yaml ``` 2. **配置示例**: ```yaml network: version: 2 ethernets: ens33: dhcp4: true optional: true ``` 3. **应用配置**: ```bash sudo netplan apply ``` --- ### **三、修复后验证** ```bash # 检查接口状态 ip addr show ens33 # 确认IP地址分配 ping -c 4 8.8.8.8 # 测试网络连通性 # 查看NetworkManager状态(RHEL/CentOS) systemctl status NetworkManager ``` --- ### **四、高级排查** 1. **强制重置网络配置**: ```bash sudo nmcli connection reload # 重载NetworkManager配置 sudo systemctl restart NetworkManager ``` 2. **禁用Predictable命名规则**(可选): ```bash # 编辑grub配置 sudo vi /etc/default/grub # 修改行:GRUB_CMDLINE_LINUX="... net.ifnames=0" sudo grub2-mkconfig -o /boot/grub2/grub.cfg sudo reboot ``` --- ### **关键总结** | 现象 | 原因 | 操作 | |------|------|------| | `ifcfg-ens33`缺失 | 接口命名规则变更 | 通过`ip link`确认实际接口名 | | 文件未生成 | 新式网络管理工具主导 | 使用`nmcli`或`Netplan`配置 | | 配置不生效 | 服务未加载 | 重启`NetworkManager`或执行`netplan apply` |
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值