Mac Ubuntu双系统解决WiFi和WiFi 5G网络不可用问题

文章目录

  • 设备信息
  • 1. Ubuntu WiFi不可用解决方式
    • 查看Mac的网卡型号
    • 根据网卡型号搜索获取到的解决方法
    • 查看WiFi名字
    • 问题
    • 参考链接
  • 2. 解决WiFi重启后失效问题
    • 打开终端创建.sh脚本文件
    • 编辑脚本文件
    • 复制粘贴脚本
    • 修改脚本权限
    • 创建并编辑systemd service文件
    • 复制粘贴下文到systemd service文件
    • 启动service
    • 设置service开机自启
    • 重启即可
    • 如何撤销上面的操作
    • 参考链接
  • 3. 解决 5G WiFi的问题
    • 下载 brcmfmac43602-pcie.txt 文件
    • 修改文件中macaddr地址
    • 把文件复制到/lib/firmware/brcm,然后重启
    • 参考链接

Mac(macOS 13.3)中安装Ubuntu 22.04.3,Ubuntu的WiFi和WiFi 5G网络不可以使用,通过查找找到解决方案,记录下。

设备信息

Mac:macOS 13.3
Ubuntu 22.04.3
网卡型号:Broadcom Inc. and subsidiaries BCM43602 802.11ac Wireless LAN SoC

1. Ubuntu WiFi不可用解决方式

因为Ubuntu的网卡驱动不可用导致的问题。

查看Mac的网卡型号

lspci | less # 搜索network controller
# 结果例如:Network controller: Broadcom Inc. and subsidiaries BCM43602 802.11ac Wireless LAN SoC

根据网卡型号搜索获取到的解决方法

sudo apt-get purge bcmwl-kernel-source
sudo apt update
sudo update-pciids
sudo apt install firmware-b43-installer
reboot

查看WiFi名字

使用ifconfig或者ip addr查看。
在这里插入图片描述
然后执行命令

sudo iwconfig wlp3s0 txpower 10dBm #wlp3s0是刚查看的WiFi名字

问题

安装Ubuntu网卡驱动后,WiFi可以使用了,但是还有两个问题。
问题一:

sudo iwconfig wlp3s0 txpower 10dBm #wlp3s0是刚查看的WiFi名字

每次重启后失效,开机后都需要手动输入。

问题二:
只有2.4G WiFi可以使用,5G WiFi不可以使用。

参考链接

https://zhuanlan.zhihu.com/p/60617749?utm_id=0
https://github.com/Dunedan/mbp-2016-linux

2. 解决WiFi重启后失效问题

iwconfig wlp3s0 txpower 10dBm命令添加到root启动项中。

打开终端创建.sh脚本文件

sudo touch /opt/captain.sh # 在/opt中创建captain.sh文件

编辑脚本文件

gedit admin:///opt/captain.sh

复制粘贴脚本

iwconfig wlp3s0 txpower 10dBm #已经有root权限了,不再需要添加sudo

修改脚本权限

sudo chmod u+x /opt/captain.sh

创建并编辑systemd service文件

sudo touch /etc/systemd/system/captain.service
gedit admin:///etc/systemd/system/captain.service

复制粘贴下文到systemd service文件

[Unit]
Description=Captain service
After=network.target[Service]
ExecStart=/opt/captain.sh[Install]
WantedBy=multi-user.target

启动service

sudo systemctl start captain

设置service开机自启

sudo systemctl enable captain

重启即可

reboot

如何撤销上面的操作

按顺序执行下面命令并重启即可撤销上面的操作。

sudo systemctl stop captainsudo systemctl disable captainsudo rm -v /opt/captain.shsudo rm -v /etc/systemd/system/captain.service

参考链接

https://gist.github.com/torresashjian/e97d954c7f1554b6a017f07d69a66374
https://easylinuxtipsproject.blogspot.com/p/root-command-startup.html

3. 解决 5G WiFi的问题

下载 brcmfmac43602-pcie.txt 文件

下载地址:https://bugzilla.kernel.org/attachment.cgi?id=285753

修改文件中macaddr地址

使用 ifconfig 查看网卡信息,ether 字段值就是 macaddr,复制粘贴到brcmfmac43602-pcie.txt的macaddr中。

#需要替换的内容
macaddr=xx:xx:xx:xx:xx:xx

把文件复制到/lib/firmware/brcm,然后重启

sudo cp brcmfmac43602-pcie.txt /lib/firmware/brcm
reboot

参考链接

https://github.com/Dunedan/mbp-2016-linux/issues/47

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/216020.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python可迭代对象排序:深入排序算法与定制排序

更多Python学习内容:ipengtao.com 排序在计算机科学中是一项基础而关键的操作,而Python提供了强大的排序工具来满足不同场景下的排序需求。本文将深入探讨Python中对可迭代对象进行排序的方法,涵盖基础排序算法、sorted函数的应用、以及定制排…

x-www-form-urlencoded的含义解释,getReader()和getParameter()的区别

1、x-www-form-urlencoded x-www-form-urlencoded是一种编码格式,它是一种常见的编码方式,用于在HTTP请求中 传输表单数据 。在这种编码方式下,表单数据被编码为URL格式,然后作为请求体(payload)发送。 需要…

《尚品甄选》:后台系统——结合redis实现用户登录

文章目录 一、统一结果实体类二、统一异常处理三、登录功能实现四、CORS解决跨域五、图片验证码六、登录校验功能实现6.1 拦截器开发6.2 拦截器注册 七、ThreadLocal 要求: 用户输入正确的用户名、密码以及验证码,点击登录可以跳转到后台界面。未登录的用…

【信息隐藏】信息隐藏基础

00 学习资源 0.1 推荐书籍 1.多媒体安全基础导论 复旦大学出版社 蓝皮; 2.隐写学原理与技术(赵险峰)科学出版社 蓝皮 0.2 视频课程 南开大学-信息隐藏技术(没看) 0.3 代码资源 GitHub一位phd:https:/…

JDBC编程方法及细节

JDBC(Java Database Connectivity)是Java编程语言用于连接和操作数据库的API(Application Programming Interface)。它为开发人员提供了一组Java类和接口,用于与各种关系型数据库进行通信。使用JDBC,开发人…

点大商城V2.5.3分包小程序端+小程序上传提示限制分包制作教程

这几天很多播播资源会员反馈点大商城V2.5.3小程序端上传时提示大小超限,官方默认单个包都不能超过2M,总分包不能超20M。如下图提示超了93KB,如果出现超的不多情况下可采用手动删除一些images目录下不使用的图片,只要删除超过100KB…

git提交报错error: failed to push some refs to ‘git url‘

1.产生错误原因 想把本地仓库提交到远程仓库,报错信息如下 git提交报错信息 error: src refspec master does not match any error: failed to push some refs to git url 错误原因: 我们在创建仓库的时候,都会勾选“使用Reamdme文件初始化…

发送一个网络数据包的过程解析

在 ip_queue_xmit 中,也即 IP 层的发送函数里面,有三部分逻辑。第一部分,选取路由,也即我要发送这个包应该从哪个网卡出去。 这件事情主要由 ip_route_output_ports 函数完成。接下来的调用链为:ip_route_output_port…

apipost接口200状态码,浏览器控制台500状态码

后端 url 登录login方法 login(){this.$refs.loginForm.validate(async valid > {if (!valid) return// 由于data属性是一个json对象,需要进行解构赋值{data:result},进行状态码判断const {data: result} await this.$http.post(/api/doLogin,this.…

《使用Python将Excel数据批量写入MongoDB数据库》

在数据分析及处理过程中,我们经常需要将数据写入数据库。而MongoDB作为一种NoSQL数据库,其具有强大的可扩展性、高性能以及支持复杂查询等特性,广泛用于大规模数据存储和分析。在这篇文章中,我们将使用Python编写一个将Excel数据批…

老牌开源 SVG 编辑器 SVGEdit 是如何架构的?

大家好,我是前端西瓜哥。这次简单看看 SVGEdit 的架构。 SVGEdit 的版本为 7.2.0。 SVGEdit 一款非常老牌的 SVG 图形编辑器,用于编辑处理 SVG,start 数目前是 5.8k。 它的优点在于经过多年的开发,完成度高,较为成熟&a…

javascript判断是否是json格式

文章目录 一、问题二、解决三、总结3.1、定义 一、问题 工作中有用到JSON.parse这个来解析JSON字符串,这个时候突然有一次遇到JSON字符串是长串数字或数字字符串,主要是自己也没兼容好,就导致了一长串数字JSON.parse之后变成了e24等数字。主…