花上一小时,用 Fedora 让一台过时的 Mac 重新有用。

最近,我偶然找到了一台 2011 年底的老款 13 英寸 MacBook Pro,有 125GB SSD 和 8GB 内存。我曾带着这台机器去世界各地旅行,当年,我开了很多场会议、研讨会或演示,分享 JBoss 技术带来的各种 AppDev 优势。

在验证了它的电池能用,充了电,重新安装了一个新的 OS X 之后,我发现 Safari 浏览器的版本受限于旧的安全规范,这意味着它现在无法连接到很多 HTTPS 网站。这就使得这个解决方案失效了。

这个老伙计该怎么处理呢?

自从我作为开发人员专门在 Linux 工作站上工作以来已经有几年了。我只使用 Fedora,所以我决定尝试在这台 MacBook Pro 上安装它的最新版本。

我只花了一个多小时就用下面的步骤让 Fedora 33 在这台笔记本上工作了。

下载 Fedora 33 并创建一个临场 USB

第一步是找到正确的安装 Fedora 的方法。这台机器有一个 CD 插槽,所以可以刻录一个 ISO 并从它启动,但我选择直接使用可启动的 USB 方式。

我登上了另一台 MacBook,访问了 Fedora Workstation 网站,它有 Fedora Media Writer 的链接。点击你的机器类型的图标(在我的例子中是苹果标志),你会得到一个安装包。

开始安装,可以看到一个引导你完成安装过程的图形用户界面(GUI)。选择 Fedora Workstation 33 选项。

接下来,选择右上角的“Create Live USB”选项。

镜像将开始下载,你将看到一个下拉菜单来选择安装位置。

插入一个有足够空间的 U 盘,下载完成后,就可以选择它并在上面安装镜像。完成后,关闭 GUI,取出 U 盘。

安装 Linux

将你创建的 U 盘插入 MacBook Pro 左侧的端口,并按住 Cmd 键左侧的 Option(或 Alt)键的同时重新启动。这将打开一个启动机器的选项菜单:使用 EFI 选项,因为那是 USB 镜像。

笔记本电脑将从 USB 设备启动,你可以按照正常的 Fedora 安装过程进行。如果你能将 MacBook Pro 插入网线连接,会有帮助,因为它的 Broadcom WiFi 设备无法开箱即用。

你现在也可以将 Fedora 安装到你的硬盘上,并将它永久地放在你的机器上。

一旦安装程序完成,重新启动机器,Fedora 33 现在应该是启动选项。

唯一缺少的就是 WiFi 驱动,所以要保持网线连接,安装你正在运行的内核的开发包,并为该内核构建 broadcom-wl 驱动。

验证你需要用于 WiFi 的卡。

$ lspci -vnn -d 14e4:

在输出中会有几项,包括如下内容:

Network controller [0280]: Broadcom Inc. and subsidiaries....

Subsystem: Apple Inc. AirPort Extreme...

安装一个仓库来拉取 Broadcom 相关的部分:

$ su -c 'dnf install -y http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm'

接下来的部分很有趣:如果你查看正在运行的内核时,你会看到 v5.9.8-200.fc33,但是你要使用开发内核包来构建你的 Broadcom 无线驱动。所以,你需要安装 v5.8.15-301.fc33(在写这篇文章的时候可用)。使用 uname -r 检查它们,并使用 sudo dnf list kernel 列出已安装的内核包:

$ sudo dnf list kernel

kernel.x86_64                     5.8.15-301.fc33

kernel.x86_64                     5.9.8-200.fc33

安装开发包:

$ sudo dnf install -y akmods kernel-devel-5.8.15-301.fc33

安装 Broadcom 无线软件包:

$ sudo dnf install -y broadcom-wl

构建内核模块:

$ sudo akmods

重新启动你的机器,你应该可以看到无线驱动(wl)。

$ lsmod | grep wl

在 Fedora 中设置你的无线连接:

这篇文章对我来说有些出乎意料,但我希望它能帮助别人在周末享受一些老硬件的乐趣!

现在要走不寻常路了……在 2011 年的 Macbook Pro 上安装 #Fedora。祝我好运! pic.twitter.com/zlsESnq2Px。

Eric D. Schabell (@ericschabell) 2020 年 11 月 22 日

此文原载于 Schabell.org,经许可转载。

本文由 LCTT 原创编译,Linux中国 荣誉推出

linux-macbook内核,技术|用 Linux 让旧 MacBook 重获新生相关推荐

  1. linux 内核 课程,Linux内核分析课程-全面剖析Linux内核技术 揭开Linux内核的面纱 Linux内核学习视频教 ......

    课程名称 Linux内核分析课程-全面剖析Linux内核技术 揭开Linux内核的面纱 Linux内核学习视频 课程目录 (1)\1, 计算机是如何工作的?:目录中文件数:0个 (2)\2, 操作系统 ...

  2. Linux升级内核以及删除Linux多余的内核

    Linux升级内核以及删除Linux多余的内核 很多童鞋在玩耍linux发行版的时候,都会遇到各种各样的问题,比如:网卡不能使用,亮度不能调节,触摸板不能识别,蓝牙不能使用等等,这些关系都和linux ...

  3. 嵌入式linux实时化技术,嵌入式Linux实时化技术

    引言 Linux支持PowerPC.MIPS.ARM.DSP等多种嵌入式处理器,逐渐被用于多种关键性场合.其中实时多媒体处理.工业控制.汽车电子等特定应用对Linux提出了强实时性需求.Linux提供 ...

  4. linux最新内核4.19,Linux Kernel 4.19内核为长期支持版本,有诸多新功能及改进

    Linux Kernel开发者与维护总负责人Greg Kroah-Hartman宣布Linux Kernel 4.19内核将是长期支持版本,即用户使用该内核可得到长期的补丁支持,包括修复重要的漏洞.目 ...

  5. linux 的内核参数优化,Linux服务器内核参数优化

    Linux服务器内核参数优化 cat >> /etc/sysctl.conf << EOF #kernel optimization net.ipv4.tcp_fin_time ...

  6. linux编译内核支持pam,linux编译内核make menuconfig报错解决办法

    linux编译内核时 输入make menuconfig命令 *** Unable to find the ncurses libraries or the *** required header f ...

  7. Linux 编译内核 dirty,向linux内核版本号添加字符/为何有时会自动添加+号或者xxx-dirty【转】...

    转载说明:你可能想不到,是git管理的"问题",看下面的解析,对于u-boot也是有同样的效果. 问题解决方案: 1.删除.git目录 2.去掉CONFIG_LOCALVERSIO ...

  8. linux编译内核报错,linux编译内核时出报错;

    因为以前已经编译了,所以就很简单的连接: [root@bache linux-2.6.29]# make defconfig *** Default configuration is based on ...

  9. linux 3 内核编译环境,Linux编译内核记

    前段时间学校某课程(你猜啥课程~)要求进行简单的linux内核编译,并添加自己的系统调用,对于Linux小白来说这可不是件简单的事,的确话费不少时间和精力.趁此博客终于过了之际,来记录一下~ 0x01 ...

最新文章

  1. MPB:亚热带生态所谭支良组-基于微生物成分数据的差异zOTU分析流程
  2. Web 2.0背后的长尾理论
  3. EasyPR--开发详解(8)文字定位
  4. 【讨论】拿什么来维护原创作者的权益?
  5. SpringMVC_3.请求映射与静态资源处理
  6. anaconda3 win7_重装系统win7
  7. spring 异步返回结果_使用Spring Integration聚合异步结果
  8. 面试步步受挫,在打击中成长
  9. iOS开发点滴 - 关闭键盘
  10. win7创建mysql odbc数据源_Win7下如何创建odbc数据源
  11. 将本地电脑文件复制到虚拟机系统中详细方法
  12. 【机器人学习】abb机器人运动学分析与轨迹规划(三维模型+matlab代码+word报告)
  13. 计算机等级考试Python二级
  14. 全球顶级白帽子:美女、通缉犯、公务员
  15. 支付宝二面:如何用 UDP 实现可靠传输?
  16. Flume 以twitter为source,kafka为channel,hdfs为sink,再用spark streaming 读kafka topic
  17. simulink bus总线创建方法
  18. 如何最大程度地利用制造ERP软件
  19. javaweb项目相对路径与绝对路径
  20. Downie 4.2.6 Mac 上视频下载工具

热门文章

  1. netbeans连接数据库_NetBeans Java EE技巧#1 –数据库中的实体类
  2. primefaces_通过OmniFaces缓存组件以编程方式缓存PrimeFaces图表
  3. 用户控件 自定义控件_新的自定义控件:TaskProgressView
  4. jvm jinfo 参数_jinfo:JVM运行时配置的命令行浏览
  5. REST /使用提要发布事件
  6. 使用网真和WAD热部署Kubernetes
  7. akka使用_使用Akka简化交易系统
  8. Spring Boot完成示例
  9. 使用AWS Lambdas扩展技术堆栈
  10. mongodb适用于_适用于MongoDB和Mongometer的SpiderMonkey至V8