ubuntu 显示networking disabled 解决办法

本文详细介绍了在Linux环境下,通过执行简单的命令来停用、清理网络状态文件并重新启用网络服务的方法,包括使用`sudo service network-manager stop`停止网络管理器,删除`/var/lib/NetworkManager/NetworkManager.state`文件来清除网络状态,以及通过`sudo service network-manager start`重启网络服务。此教程适用于需要快速解决网络问题或进行系统维护的场景。

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

第一步,先把网络停掉

sudo service network-manager stop

第二步,清理对应的网络状态文件

sudo rm /var/lib/NetworkManager/NetworkManager.state

第三步,启动网络即可

sudo service network-manager start

<think>我们正在解决Ubuntu系统中"network.servicenotfound"的问题。根据用户提供的系统信息,我们看到用户尝试使用`systemctl`命令时遇到了问题。实际上,在Ubuntu18.04及更高版本中,传统的`network.service`已经被`netplan`和`NetworkManager`或`systemd-networkd`所取代。从用户之前的命令输出中,我们可以看到:```networkd-dispatcher.serviceenabledenabledNetworkManager-dispatcher.serviceenabledenabledNetworkManager-wait-online.serviceenabledenabledNetworkManager.serviceenabledenabledsystemd-network-generator.servicedisabledenabledsystemd-networkd-wait-online.servicedisableddisabledsystemd-networkd.servicedisabledenabledsystemd-networkd.socketdisabledenablednetwork-online.targetstatic-network-pre.targetstatic-network.targetstatic-```注意:`systemd-networkd.service`是禁用状态(disabled),而`NetworkManager.service`是启用状态(enabled)。这意味着系统当前使用NetworkManager作为网络管理工具,而不是传统的network.service。因此,当用户尝试使用`sudosystemctlrestartnetwork.service`时,会收到"Unitnetwork.servicenotfound"的错误,因为该服务在系统中不存在。解决方案:1.确认当前网络管理服务是NetworkManager,并使用NetworkManager的命令行工具`nmcli`来管理网络。2.或者,如果用户希望使用systemd-networkd,则需要启用它并禁用NetworkManager。步骤:方案一:使用NetworkManager(当前已启用)1.重启NetworkManager服务:```bashsudosystemctlrestartNetworkManager```2.使用`nmcli`命令检查网络连接:```bashnmcliconnectionshow```3.重新连接网络(如果需要):```bashnmcliconnectiondown<connection-name>&&nmcliconnectionup<connection-name>```方案二:切换到systemd-networkd(如果用户希望使用)1.禁用NetworkManager:```bashsudosystemctldisable--nowNetworkManager```2.启用systemd-networkd:```bashsudosystemctlenable--nowsystemd-networkd```3.启用systemd-resolved(DNS解析服务):```bashsudosystemctlenable--nowsystemd-resolved```4.配置Netplan:编辑`/etc/netplan/`目录下的YAML配置文件(例如01-netcfg.yaml),并应用配置:```bashsudonetplanapply```注意:在Ubuntu中,网络配置现在由Netplan统一管理,无论后端是NetworkManager还是systemd-networkd。因此,建议用户通过Netplan配置文件来管理网络设置。如果用户需要配置静态IP地址,可以修改Netplan配置文件。例如:打开配置文件:```bashsudonano/etc/netplan/01-netcfg.yaml```示例配置(使用NetworkManager作为后端):```yamlnetwork:version:2renderer:NetworkManagerethernets:enp0s3:dhcp4:noaddresses:[192.168.1.10/24]gateway4:192.168.1.1nameservers:addresses:[8.8.8.8,8.8.4.4]```或者使用systemd-networkd作为后端:```yamlnetwork:version:2renderer:networkdethernets:enp0s3:dhcp4:noaddresses:[192.168.1.10/24]gateway4:192.168.1.1nameservers:addresses:[8.8.8.8,8.8.4.4]```保存后应用配置:```bashsudonetplanapply```因此,用户不需要使用`network.service`,而是通过Netplan和相应的后端服务(NetworkManager或systemd-networkd)来管理网络。如果用户仍然遇到网络问题,可以检查服务状态:```bashsudosystemctlstatusNetworkManager#或者systemd-networkdjournalctl-uNetworkManager-b#查看日志```总结:在Ubuntu新版本中,传统的`network.service`已被废弃,取而代之的是Netplan和两个可选的后端服务(NetworkManager或systemd-networkd)。用户应根据当前启用的服务使用对应的管理方式。相关问题:1.如何配置Netplan的静态IP地址?2.如何切换NetworkManager和systemd-networkd?3.如何解决NetworkManager和systemd-networkd的冲突?4.如何调试Netplan配置问题?</think>### 解决 Ubuntu 中 "network.service not found" 问题 在 Ubuntu 18.04 及更高版本中,传统的 `network.service` 已被弃用,取而代之的是 **Netplan** 和 **systemd-networkd** 或 **NetworkManager**。以下是完整的解决方案: #### 1. 确认当前网络服务状态 ```bash sudo systemctl status NetworkManager systemd-networkd ``` - 若输出显示 `NetworkManager active (running)` → 使用 NetworkManager - 若显示 `systemd-networkd active (running)` → 使用 systemd-networkd #### 2. 恢复网络功能的两种方案 ##### 方案一:使用 NetworkManager(推荐) ```bash # 启用并启动服务 sudo systemctl enable --now NetworkManager # 重启网络连接 sudo nmcli networking off && sudo nmcli networking on # 检查连接 nmcli connection show ``` ##### 方案二:切换到 systemd-networkd ```bash # 禁用 NetworkManager sudo systemctl disable --now NetworkManager # 启用 systemd-networkd sudo systemctl enable --now systemd-networkd systemd-resolved # 配置 Netplan sudo nano /etc/netplan/*.yaml ``` 示例配置: ```yaml network: version: 2 renderer: networkd # 使用 systemd-networkd ethernets: eth0: dhcp4: true optional: true ``` 应用配置: ```bash sudo netplan apply ``` #### 3. 关键问题排查 - **服务冲突检测**: ```bash systemctl list-dependencies network.target ``` - **日志分析**: ```bash journalctl -u NetworkManager -u systemd-networkd --since "5 minutes ago" ``` - **网络接口检查**: ```bash ip a # 查看接口状态 ip route # 检查路由 ``` #### 4. 常见错误解决 - **502 Bad Gateway 错误**: ```bash # 检查防火墙和代理设置 sudo ufw status env | grep -i proxy ``` - **服务启动失败**: ```bash # 重置服务配置 sudo apt install --reinstall network-manager sudo systemctl daemon-reload ``` > **重要提示**:Ubuntu 18.04+ 默认使用 Netplan 配置网络,所有网络设置应通过 `/etc/netplan/` 目录下的 YAML 文件完成[^1]。传统 `/etc/network/interfaces` 文件已不再生效。 #### 5. 验证网络功能 ```bash ping -c4 8.8.8.8 # 测试基础连接 curl -I https://ubuntu.com # 测试HTTPS ip addr show eth0 # 检查IP分配 ```
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值