简介linux下RTNETLINK answers: File exists我们在使用centos 系统时偶尔会遇到配置都正确但network启动不了的问题这问题经常是由NetworkManage引起的关闭NetworkManage并取消开机启动network就能正常启动。使用的Linux经常使用命令行模式所以大家都不怎么去了解NetworkManage造成了糊里糊涂的解决问题。下面我们看一下NetworkManage分析NetworkManage与network功能类似都是用于管理网络NetworkManage提供了nmctl、nmtui两个工具nmctl命令行工具OBJECT g[eneral]NetworkManagers general status and operations n[etworking] overall networking control r[adio] NetworkManager radio switches c[onnection] NetworkManagers connections d[evice]devices managed by NetworkManager a[gent]NetworkManager secret agent or polkit agent m[onitor]monitor NetworkManager changesnmtui伪图形界面两个都是用来管理网络但是有一个前提nmctl networking 状态必须是enable否则设备状态为unmanaged这会导致network启动不了查看方式如下第一、查看整体开关是否开启[rootmaster03 ~]# nmcli networking# enabled 已开启# disabled 未开启下图为展示networking的状态检查网卡是否被NetworkManager接管connected 已经被接管(正常)unmanaged 未被接管异常连不上网解决方法 nmcli device connect ens33disconnected 未连接异常连不上网解决方法 nmcli connect up ens33[rootmaster03 ~]# nmcli deviceDEVICE TYPE STATE CONNECTION ens33 ethernet connected ens33 docker0 bridge unmanaged -- lo loopback unmanaged --ens33被NetworkManager纳管截图解决遇到network无法启动的情况检测配置是是否有问题若果是服务器多网口检测网线是否插在你启动的网口上检测你的NetworkManage是否启动如果启动了可参考以下方法处理简单粗暴关闭NetworkManage服务并取消开机启动(要是你使用的为命令行模式没有有用图形界面可以放心使用这种方法使用图形界面的话还是建议自己排查一下)排查NetworkManage- 检查nmctl networking 状态是否为enabled若果不是执行一下命令开启[rootmaster03 ~]# nmcli networking on[rootmaster03 ~]# systemctl restart NetworkManager[rootmaster03 ~]# systemctl restart network[rootmaster03 ~]# nmcli deviceDEVICE TYPE STATE CONNECTION ens33 ethernet connected ens33 docker0 bridge unmanaged -- lo loopback unmanaged --[rootmaster03 ~]#- 检测device有没有连接到connection,命令nmcli connection 若没有执行nmcli device connect ens33如果执行遇到如下图非托管状态可以先执行 nmcti networking off 在再执行 nmctl neworking on,然后再连一次- 检测连接是否启用[rootmaster03 ~]# nmcli connectionNAME UUID TYPE DEVICE ens33 4d574cba-a63e-49ae-8cb2-d663a8dd796e ethernet ens33如果没有启用注意了我的连接名称是ens33,根据你自己的情况自己编辑所有操作完成以后都执行[rootmaster03 ~]# systemctl restart NetworkManager[rootmaster03 ~]# systemctl restart network否则可能不生效参考B站视频连接超详细