打印
[STM32MP1]

Linux 之Ubuntu 20.04 WiFi 无法使用、设置无法显示等各问题记录

[复制链接]
1460|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
tpgf|  楼主 | 2021-12-1 08:23 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
安装
  今天,在我的老 Acer 笔记本(11 年的老本)上安装了 Ubuntu 20.04 LTS 版本,以作为学习使用。安装到没啥难度,基本和 Windows 差不多 ,基本都是下一步就行。注意,如果要自定义安装磁盘,需要在如下图这一步时注意选择 Something else,默认将擦除整个磁盘:

尤其是要安装 Windows + Ubuntu 双系统时,需要额外注意!选择 Something else 才会显示磁盘的选择界面。

  详细的安装步骤这里就不多说,网上有很详细的教程,Ubuntu 官方也有教程:制作 U 盘启动盘、安装过程说明 等。更详细的参见 https://ubuntu.com/tutorials 中的各种教程。需要注意的是:

  • Windows + Ubuntu 双系统后需要自己修改引导,推荐使用 Windows 的引导界面。
  • 选择 Something else 后,需要自己配置 Ubuntu 使用的各种分区。



使用特权

评论回复
沙发
tpgf|  楼主 | 2021-12-1 08:23 | 只看该作者
设置界面不显示
  安装完成重启,成功进入了 Ubuntu 桌面,第一步当然就是要联网。然而,上来就发现设置界面显示不出来也就不能显示配置WiFi 的界面,但是看桌面上有个数字提示,设置是启动成功的!如下图:

  细心就会发现,鼠标是能往右会移出屏幕的。如果在桌面上端把鼠标往右侧屏幕一直移动,然后安按住鼠标左键,就能把设置界面拖出来。然后,我们接着到设置中的显示菜单下看看,是不是显示有问题:

默认情况下,Ubuntu 识别为了 Join Displays,这里我们直接改成 Single Displays 就可以了!


使用特权

评论回复
板凳
tpgf|  楼主 | 2021-12-1 08:26 | 只看该作者
WiFi 不能识别
  成功显示出了设置界面之后,却发现 WiFi 菜单下没有内容,有线连接是没有问题的。这年头笔记本使用网线还能叫笔记本么!?初步怀疑,这里不显示基本就是驱动的问题了。结果搜索发现了如下方式安装 WiFi 驱动:

  • 使用网线连接网络或者使用手机的 USB 共享网络连接网络
  • 终端执行:sudo apt update
  • 终端执行:sudo apt-get install bcmwl-kernel-source
  • 重启

  对于大部分人来说,成功执行上面的命令之后,WiFi 应该就可以正常显示了。然而,我在重启之后问题依旧。。。于是乎使用 lspci 查看网卡信息,发现能正常识别 WiFi 适配器:

这就比较奇怪了!于是乎直接去网上找 Qualcomm 网卡在 Ubuntu 下的相关驱动、问题,无意间发现有网友说,该问题是 Acer 笔记本的问题,需要禁用掉 acer-wmi 模块,具体如下:

  • 终端执行 sudo vim /etc/modprobe.d/blacklist.conf
  • 在其中添加 blacklist acer-wmi
  • 保存,退出
  • 重启

  经过以上步骤,我的 Acer 终于可以正常显示 WiFi 了。其中,需要注意的是,默认情况下,Ubuntu 没有安装 vim,这里可以使用 vi 代替:sudo vi /etc/modprobe.d/blacklist.conf 。

  除了以上所说的方法之外,也有网友说,直接在 Ubuntu 自带的 软件更新 中有时候会显示 WiFi 驱动的更新我这里是没有的,如下图所示,我这里只显示了独显的驱动。

即使更改 Ubuntu Software 页面中的相关配置之后依旧没有显示 WiFi 适配器的相关驱动!


使用特权

评论回复
地板
tpgf|  楼主 | 2021-12-1 08:27 | 只看该作者
连接企业 WiFi
  解决了 WiFi 不识别的问题之后,就开始愉快的玩耍了。而然,将笔记本拿到工作环境后,突然发现不能连接公司的 WiFi,但是连接个人路由的 WiFi 是没有问题的。。。

  公司的 WiFi 是 WPA2 Enterprise 类型,连接这一类 WiFi 有很多参数,并不是简单的用户名 + 密码就可以(主要就是加密)。经过我不断测试,当使用如下配置时就可以连接成功:


  有网友说,Ubuntu 连接 WPA2 Enterprise 类型的 WiFi 有 BUG,会提示密码错误。提示错误之后,在 /etc/NetworkManager/system-connections/ 下有连接过的 wifi 的配置文件,找到你刚才连接的那个,
在 [802-1x] 中,的 password 那一行上面添加 password-flags=1 和 system-ca-cert=false,保存退出,重新点击连接 WIFI 就可以了。我这里没有遇到这种情况,具体参看网友博文:https://www.jianshu.com/p/c0f4811f3c13

  还有一点,我这里的 WiFi 其实没有认证证书,如果你的 WiFi 是需要认证的,上面就不能选择 No CA certificate is required,而应该在 CA Certificate 这一栏选择自己的证书。具体参看一下网友的回复:https://forum.ubuntu.org.cn/view ... 061a3cf1e0#p2119017

  经过我的反复测试,Ubuntu 的 WiFi 连接界面反应非常慢,动不动就把 设置界面卡死,而且在连接中时,会导致鼠标卡顿。目前,没有进一步了解原因,也不知道如何解决。。


使用特权

评论回复
5
tpgf|  楼主 | 2021-12-1 08:28 | 只看该作者
远程桌面

  能够成功连接 WiFi 之后,正常工作中远程桌面是必不可少的功能,于是开始准备用 Windows 远程连接 Ubuntu。Windows下默认的远程桌面协议是 rdp,默认端口 3389,而 Ubuntu 20.04 自带了 Vino-Server 用于远程连接。


Vino-Server

  如果没有 Vino(安装时如果选择了最小安装则默认不会安装 Vino),则可以通过命令 sudo apt install vino 进行安装。Ubuntu 20.04 配置 Vino-Server 还是挺简单的,配置之后,就可以使用 VNC Viewer 进行连接。

需要注意的就是,其中需要安装一个叫 dconf-editor 的软件,用于关闭连接加密。这里也不多说,自己去找各种网文就可以,还是非常详细的。例如:https://zhuanlan.zhihu.com/p/295422718


  但是,经过我实际测试,Ubuntu 20.04 自带了 Vino 不是一点半点的卡,基本没法用。。。不知道是不是我环境的问题还是电脑配置太低,捣鼓了半天也没找到解决方法。。。



使用特权

评论回复
6
tpgf|  楼主 | 2021-12-1 08:31 | 只看该作者
Xrdp

  Xrdp 是一个微软远程桌面协议(RDP)的开源实现,它允许你通过图形界面控制远程系统。通过 RDP,你可以登录远程机器,并且创建一个真实的桌面会话。


需要安装 sudo apt-get install xrdp

一旦安装完成,Xrdp 服务将会自动启动。你可以输入下面的命令,验证它:sudo systemctl status xrdp

安装完成之后,直接使用 Windows 的远程桌面进行连接,则会收到下面的错误:

其实,这里的显示时已经连接成功(重启 xrdp 服务时,这里就会自动断开连接),只是由于用户权限的问题不能显示界面。

默认情况下,Xrdp 使用/etc/ssl/private/ssl-cert-snakeoil.key,它仅仅对“ssl-cert” 用户组成语可读。运行下面的命令,将xrdp用户添加到这个用户组:sudo adduser xrdp ssl-cert,然后重启 Xrdp 服务,使得修改生效:sudo systemctl restart xrdp。

没错,连接之后竟然是黑屏。。

要解决如上的黑屏也很简单,需要编辑一下 xrdp 的启动脚本文件:/etc/xrdp/startwm.sh。直接在终端中执行命令:sudo vim /etc/xrdp/startwm.sh,然后在其中添加如下两行:

unset DBUS_SESSION_BUS_ADDRESS

unset XDG_RUNTIME_DIR


注意,Ubuntu 默认没有安装 vim,可以使用 vi 进行替换:sudo vi /etc/xrdp/startwm.sh,如下图示:

重启 xrdp服务:sudo systemctl restart xrdp。然后登陆:

然而,配置登陆成功之后,依旧是巨卡。。。比自带的 Vino 还卡。。。



使用特权

评论回复
7
tpgf|  楼主 | 2021-12-1 08:32 | 只看该作者
SSH
  远程桌面功能可以说是惨不忍睹,无奈还是得用 SSH 远程登录。SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定。SSH 为建立在应用层基础上的安全协议。直接在终端中输入 ssh 发现,Ubuntu 自带了 ssh 客户端,版本号是 OpenSSH_8.2p1。


然而 Ubuntu 默认并没有安装 ssh server,因此需要自己安装:sudo apt-get install openssh-server,安装之后,查看一下:

第一个查看安装了 ssh 相关的包,第二个查看 ssh 服务器有没有运行!

  从上面的图中可以看到,Ubuntu 中的 OpenSSH 使用是 OpenSSL 1.1.1f 提供的加密算法库。默默无名的 OpenSSL 开源加密库之前因为 Heartbleed 漏洞几乎变得无人不知,漏洞的影响遍及整个互联网。

  OpenBSD 的开发者为此而创建了 OpenSSL的 分支 LibreSSL,用户编译时可选择链接到 LibreSSL 库。 微软在 Win10 中集成的 OpenSSH 使用的就是 LibreSSL 加密算法库。

许多大型公司出于安全,效率等考虑,会将 OpenSSH 集成到自己系统之后,用自己实现的算法替换这个算法库。

TLS: Transport Layer Security
SSL: Secure Sockets Layer

  Heartbleed 漏洞的披露让人们意识到 OpenSSL 就是这样一个组件。这促使 Linux 基金会发起了 Core Infrastructure Initiative 倡议,资助关键基础组件的开发和维护。就目前来看,OpenSSL 的维护要比 LibreSSL 要积极一些。而且 Linux 对于 LibreSSL 的支持明显不如 OpenSSL。具体见 Github:

OpenSSL: https://www.openssl.org/;官方 Github 库: https://github.com/openssl/openssl
LibreSSL: http://www.libressl.org/;官方 Github 库: https://github.com/libressl-portable/


使用特权

评论回复
8
tpgf|  楼主 | 2021-12-1 08:33 | 只看该作者
Git
  Git 的安装很简单,直接在终端中键入命令:sudo apt install git 即可安装,但是安装之后的版本并不是最新的,我这里的版本号是:git version 2.5.1。我的选择是将 Git 升级到最新版,使用命令如下:

$ sudo add-apt-repository ppa:git-core/ppa
$ sudo apt-get update
$ sudo apt-get install git



使用特权

评论回复
9
tpgf|  楼主 | 2021-12-1 08:33 | 只看该作者
PPA
  PPA 全称为 Personal Package Archives(个人软件包档案),是 Ubuntu Launchpad 网站提供的一项服务,当然不仅限于 Launchpad 。它允许个人用户上传软件源代码,通过 Launchpad 进行编译并发布为二进制软件包,作为 apt 新的源供其他用户下载和更新。在 Launchpad 网站上的每一个用户和团队都可以拥有一个或多个PPA。
 通常 PPA 源里的软件是官方源里没有的,或者是最新版本的软件。相对于通过 Deb 包安装来说,使用 PPA 的好处是,一旦软件有更新,通过 sudo apt-get upgrade 这样命令就可以直接升级到新版本。

  通过命令 sudo add-apt-repository ppa:git-core/ppa,最终在会在 /etc/apt/sources.list.d 下多出一个文件,这个文件就是我们添加的新的源:

除了通过命令的方式,我们还可以使用 Ubuntu 自带的 Software & Updates 来通过 GUI 的方式编辑:



使用特权

评论回复
10
tpgf|  楼主 | 2021-12-1 08:33 | 只看该作者
Microsoft Edge 更新报错

安装了 Microsoft Edge,在 Ubuntu 自带的 软件中心更新时提示如下错误:


解决方法是编辑如下图所示的文件,将内容注释掉即可。


使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1760

主题

15201

帖子

10

粉丝