说明:

因为很多测试环境在这个Ubuntu系统上装着,却由于虚拟服务器的重启、断电,每次Ip发生变化,就得更新环境,所以需要把该环境的ip配置成静态的,一劳永逸。

根据以往配置Ubuntu静态ip的经验,直接 vi /etc/network/interfaces 在该文件下配置了静态ip,重置网络后发现并没有生效

所以查了ubuntu版本,是18.04,然后百度,发现“ubuntu从17.10开始,已放弃在/etc/network/interfaces里固定IP的配置,即使配置也不会生效,而是改成netplan方式 ,配置写在/etc/netplan/01-netcfg.yaml或者类似名称的yaml文件里”,所以根据查到的方法进行配置,结果遇到好多报错,差点吐血,这里记下自己遇到的报错

1、刚开始的配置如下:在执行netplan apply发生报错信息Invalid YAML at //etc/netplan/01-netcfg.yaml line 11 column 11: mapping values are not allowed in this context

解决办法:yaml是层次结构,需要缩进,冒号(:)表示字典,连字符(-)表示列表,冒号出现的后面一定要空一格

2、冒号后添加空格后(如下图)再执行netplan apply又报错:Invalid YAML at //etc/netplan/01-netcfg.yaml line 11 column 6: did not find expected key

解决办法:nameservers应该和gateway4一样是第四层,nameservers后的addresses应该是第五层

正确的层数如下:

第一层-network:
第二层-- ethernets:
第三层--- ens33:
第四层----addresses:  [172.18.0.31/24]
第四层----gateway4:  172.18.0.1
第四层----nameservers:
第五层-----addresses: [114.114.114.114, 8.8.8.8]

3、按照上面的办法解决后如下图执行netplan apply又报错:Error in network definition //etc/netplan/01-netcfg.yaml line 8 column 16: expected scalar

解决办法:gateway4的地址没有中括号,修改后重启网络服务就正常了(netplan apply)

所以正确的配置格式应该如下:这样就成功配置了静态ip

我没遇到的报错:

出现类似错误:line8 column 6:cloud not find expected ':'  #提示是冒号:后面没加空格
出现类似错误:netplan found character that cannot start any token,#提示是没有按五个层次写配置文档,一定要下一层比上一层多空一格或以上。
总之:这里重启网络时报错,大多是层次不对、格式不对、没有空格
 

Ubuntu18.04配置静态ip遇到的报错的更多相关文章

  1. Ubuntu12.04配置静态ip地址

    Ubuntu12.04配置静态ip地址 $sudo gedit /etc/network/interfaces 原有内容只有如下两行: auto lo iface lo inet loopback 向 ...

  2. ubuntu 18.04配置静态ip,解决无法上网问题,解决resolv.conf配置文件被覆盖

    Netplan 是 Ubuntu 17.10 中引入的一种新的命令行网络配置实用程序,用于在 Ubuntu 系统中轻松管理和配置网络设置. 它允许您使用 YAML 格式的描述文件来抽像化定义网络接口的 ...

  3. Ubuntu 14.04 配置静态IP

    命令行手工配置静态IP比较麻烦,记录于此备查. 1,ubuntu的网络配置文件在: # /etc/network/interfaces //这个文件里 2,默认安装时,网络配置是使用DHCP自动分配I ...

  4. ubuntu 16.04 配置静态ip 后默认的网卡eno1变成eth0了不能联网的问题解决

    我这次是在真实机器上面安装的ubuntu16.04 在配置了静态ip后不懂什么原因默认的eno1网卡变回了eth0网卡之后就不能上网, 同一个网段的其他集群节点也不能ping 通 因为ubuntu16 ...

  5. Ubuntu16.04配置静态ip

    1.安装好ubuntu16.04虚拟机之后,首先按照下图的步骤进行: 首先需要打开虚拟网络编辑器,点击VMnet8的虚拟网卡,如果没有这个网卡,只需在编辑虚拟机设置里面将网络适配器类型改为NAT模式, ...

  6. ubuntu12.04配置静态IP及设置DNS

    静态IP配置方法: 编辑/etc/network/interfaces,删掉内容,并输入以下几行(假设你的网卡是eth0) sudo gedit /etc/network/interfaces aut ...

  7. Ubuntu16.04配置静态IP地址

    ubuntu如何设置静态IP? 设置静态IP 1.编辑/etc/network/interfaces文件: # This file describes the network interfaces a ...

  8. ubuntu18.04设置静态IP

    ubuntu18与ubuntu14.16设置静态ip地方方法不同,很多人没去读更新文档的时候往往会设置静态ip地址不成功,下面是具体的设置方法 做之前一定要确认自己操作系统的版本,每个版本设置的方法有 ...

  9. 虚拟机ubuntu18.04设置静态IP

    说明: 网关:192.168.8.2 待设置静态IP:192.168.8.25 1.编辑:vi /etc/netplan/01-network-manager-all.yaml 打开以后内容如下: # ...

随机推荐

  1. java后台获取和js拼接展示信息

    java后台获取和js拼接展示信息: html页面代码: <div class="results-bd"> <table id="activityInf ...

  2. Linux下tomcat6.0与jdk安装

    Linux下tomcat6.0与jdk安装 步骤如下: 1. 上传apache-tomcat-6.0.37.tar.gz和jdk-6u13-linux-i586.bin至/usr/local 给这两个 ...

  3. 微信小程序开发环境

    微信小程序开发环境 不忘初心,方得始终.初心易得,始终难守 小程序开发环境 开发工具下载地址:https://developers.weixin.qq.com/miniprogram/dev/devt ...

  4. Starting MySQL...The server quit without updating PID file [失败]local/mysql/data/localhost.localdomain.pid报错

    在添加命令自动补全的时候mysql启动失败 这是原配 # For advice on how to change settings please see # http://dev.mysql.com/ ...

  5. 20145334赵文豪《网络对抗》shellcode注入&Return-to-libc攻击深入

    Shellcode注入 shellcode实际是一段代码,但却作为数据发送给受攻击服务器,将代码存储到对方的堆栈中,并将堆栈的返回地址利用缓冲区溢出,覆盖成为指向 shellcode 的地址 下载安装 ...

  6. 20145315《网络对抗》——注入shellcode以及 Return-to-libc攻击实验

    shellcode 准备一段Shellcode 我用的老师的shellcode:\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3 ...

  7. CF873B Balanced Substring

    1到n内0,1个数相同的个数的最长字串 \(i>=j\) \[1的个数=0的个数\] \[sum[i]-sum[j-1]=i-(j-1) - (sum[i]-sum[j-1])\] 这里把\(( ...

  8. 操作构造字符串化宏#define STRINGIZE(x) #x

    c++test工程单元测试中报错 “STRINGIZE” 未定义错误 解决方案:在头文件定义宏STRINGIZE #符号把一个符号直接转换为字符串,例如:#define STRINGIZE(x) #x ...

  9. Ubuntu 14.04 python3.6 安装

    参考 how-do-i-install-python-3-6-using-apt-get Ubuntu 14.04 python3.6 安装 sudo add-apt-repository ppa:j ...

  10. js键盘按钮keyCode及示例大全

    以功能区分布 以 keycode 编号顺序分布 keycode 0 = keycode 1 = keycode 2 = keycode 3 = keycode 4 = keycode 5 = keyc ...