Looking at search traffic, it seems the following netplan issues get people frequently.
No tabs in YAML
Problem:
netplan prints an error message like this:
Invalid YAML at //etc/netplan/10-bad.yaml line 6 column 0: found character that cannot start any token
Solution:
You have a tab in your YAML file. Remove the tab and try again.
There will eventually be better error messages for this - PR#12 or PR#18, but they haven't landed as of June 2018.
mapping values are not allowed in this context
Problem:
netplan prints an error message like this:
Invalid YAML at //etc/netplan/10-bad.yaml line 3 column 12: mapping values are not allowed in this context
Cause:
Netplan parses YAML with libyaml, which has some rather obtuse error messages.
As far as I can tell, this is caused when you have a YAML file where:
- you have begun a mapping. As of Bionic, netplan recognises networks, match, nameservers, routes, routing-policy, access-points, parameters and SSIDs as mappings (see the netplan man page)
- you have an item in the mapping that isn't a key-value pair, it's just a bare value.
This is easy to do if you forget a colon somewhere. For example, here there should be a colon after the ens3:
network: version: 2 ethernets: ens3 dhcp4: true
(If you have another YAML file that demonstrates this, please let me know on Twitter (@daxtens) or by posting a comment!)
Solution:
Check your YAML file carefully for syntax errors. Check all mapping stanzas, checking that each item has a colon in the correct place.
Cannot set an MTU!
Netplan (well really the combination of udev and systemd-networkd) has some weird quirks when setting MTUs. As far as I can tell, if you are trying to set an MTU and it isn't working, make sure the match stanzas are matching on MAC address. This seems to be the most reliable; otherwise networkd throws a fit about devices that are renamed in udev. See LP: #1724895 and my previous post.
Other issues?
We can probably help!
- Let me know in the comments;
- Ask me (@daxtens) on on Twitter;
- Ask on Ask Ubuntu;
- Try #netplan on freenode; or,
- Open an issue on Launchpad.
Comments
Post a Comment