使用NetworkManager来管理树莓派Ubuntu系统网络以及个人的体验优化

使用 NetworkManager 来管理树莓派 Ubuntu 系统网络 以及个人的体验优化

由于Raspbian官方网站上目前只提供arm32的系统。手里的这块树莓派4 4G发挥不出来它的最大性能,想想就难受。看到了有Ubuntu Server for Raspberry 3/4 的64位版本就心血来潮准备刷入。

烧录好镜像后,插卡!der~开机。使用默认的用户名和密码:ubuntu顺利进入系统。虽然没有显示器,插上网线!原来的时候在路由器里分配好的静态IP由于Mac地址没变,自然还是那个老IP咯。但是发现没有NetworkManager,感觉不太方便啊!虽然原来的Raspbian也没有,当时想想就算了哈!这回装了新系统,干脆弄的舒服点。

安装NetworkManager

sudo apt install network-namager 理论上不一会就安装好了,如果你的网络环境不太好,可以使用国内源来加快下载速度(下面会提到)

安装好之后需要将默认的网络管理切换到NetworkManager

编辑文件 /etc/netplan/50-cloud-init.yaml

1
2
3
4
5
# 将默认配置全部注释,填写如下配置:

network:
version: 2
renderer: NetworkManager

启动NetworkManagersystemctl enable NetworkManager && systemctl start NetworkManager

更改重启后生效,但先别急着重启,记得先添加一个默认的网络连接。

添加默认网络连接

如果你没有显示器,这一步要跳过的话那么很可能你本次的折腾只旅就到此为止了!如果忽略这一步骤,树莓派下次启动时不会链接到任何的网络,也就是没办法树莓派建立SSH远程连接哦。

使用nmtui图形化配置第一个网络连接

sudo nmtui

nmtui-1.png

你可以选择Edit a Connection来手动配置网络。

也可以选择Activate a Connection选择并且连接一个无线网络,请记得勾选上自动连接!

请确保成功连接并且添加后在重启树莓派。

或者使用nmcli命令行配置第一个网络连接

由于我插着网线,我建立一个以太网类型的连接,使用默认的eth0网络接口并且IP全部由路由器DHCP自动分配。

sudo nmcli connection add type ethernet ifname eth0 ipv4.method auto ipv6.method auto autoconnect yes

使用nmcli connection检查一下是否成功添加。

请确保成功连接并且添加后在重启树莓派。

个人偏好设置

更换国内源

我的网络环境并不太好,使用官方源来更新或者下载包会特别的慢。我是用清华大学开学镜像站来作为我的国内源。

我使用的系统是Ubuntu 18.04.4 LTS长期支持版。代号为bionic,你如果使用的是更新的版本比如19.10/20.04的话请将下方镜像源里的bionic字样替换为你自己的版本代号。

1
2
3
4
5
cat /etc/lsb-release # 查看自己的Ubuntu版本
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=18.04
DISTRIB_CODENAME=bionic
DISTRIB_DESCRIPTION="Ubuntu 18.04.4 LTS"

备份镜像源mv /etc/apt/sources.list /etc/apt/sources.list.bak

编辑文件文件/etc/apt/sources.list,将全部内容清空后复制以下内容到该文件中:

1
2
3
4
5
6
7
8
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse

我为了加快每次使用apt获取源的速度注释掉了源代码的源,如果你有需要的话请自行开启。

sudo apt update更新并获取源

配置 Bash 自动补全

我在安装好系统后发现没有自动补全,忘记命令选项和参数的时候会比较尴尬。

首先请确认你已经安装了bash-completion这个包,默认情况下是已经安装在你的系统中的。

但是安装好后双击Tab键还是没有命令补全,需要在/etc/bash.bashrc取消注释掉如下部分代码。重新登录后生效。

1
2
3
4
5
6
7
8
# enable bash completion in interactive shells
if ! shopt -oq posix; then
if [ -f /usr/share/bash-completion/bash_completion ]; then
. /usr/share/bash-completion/bash_completion
elif [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
fi

安装 firewalld 防火墙

习惯了RHEL系的系统,使用firewalld也比较顺手,所以就使用它来管理系统防火墙咯。

sudo apt install firewalld

sudo systemctl enable firewalld.service && sudo systemctl start firewalld.service

不需要进行额外的配置,如果你想了解更多关于firewalld,请看我的另一篇博文这可能是最全的firewalld防火墙常用指令教程

目前就先这个样子,以后如果我自己有新需求的话还会在这里保存或者记录下来过程。感谢大家阅读和支持,希望能帮助到你。


我是一名Linux初学者,如果你与我一样喜欢折腾,喜欢Linux,那么请加入我的电报群https://t.me/yeefire_blog,在这里畅所欲言,共同学习进步。