这篇文章主要介绍在MacBook上运行Linux需要注意什么,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
切换理由
切换的主要原因是一个杀手级应用;i3 窗口管理器。键盘快捷键,平铺的窗口,闪电般的快速体验,就像是一款专为经常 hack 计算机的人设计的软件。
安装 Linux 后,我把配置调整为:
-
使用 maim 进行类似 OSX 的键盘快捷键截屏。
-
总是在工作区 1 上打开网页浏览器
-
移除标题栏
5a3e5f0f32b05f8.png” target=”_blank”><img src=”https://s1.51cto.com/oss/202006/11/d2150ef8cbc672ea25a3e5f0f32b05f8.png” width=”auto” border=”0″ height=”auto” alt=”” title=””>
我写了自用的笔记软件,因为我对市面上的任何解决方案都不满意。软件使用 SQLite,渲染 markdown,支持 LaTeX 和全文搜索。i3wm 的 scratchpad 功能让记笔记变得轻而易举。我写了自己的 FUSE 文件系统,将笔记挂载到我的机器上进行编辑,并同步回服务器。
我最喜欢的功能是 “scratchpad”,你可以通过键盘快捷键在同一个工作区中打开和关闭一个窗口。这对我写的一些自定义笔记软件来说绝对是个好消息,我通过 FUSE 安装了这些软件。记笔记是一件很快乐的事情,因为不太需要上下文切换。
软件
Web 浏览器的崛起,让我意识到其实已经不怎么需要原生 GUI 软件了。我在 OSX 上似乎只用了一个 Web 浏览器、Visual Studio Code 和一个终端,通过一套 dotfiles 配置了很多 CLI/TUI 软件。
我骨子里是一个重度游戏玩家,但我很幸运地拥有一台强大的 PC 游戏机和一系列终端来满足这种需求,所以我没法评价 Linux 在这方面的支持能力。
所以对于我的大多数使用场景来说,切换操作系统并不是什么太大的障碍。
安装
安装一开始是有点焦虑,首先我不想把 Mac 的启动分区搞乱,以防万一出了点问题变砖,我花了点时间去搜索干净利落的安装方法。
幸好 Alex Dzyoba 写了一篇关于何如创建双启动分区的文章。
https://alex.dzyoba.com/blog/macbook-air-linux/
一旦完成启动,大部分功能都可以开始工作。WiFi,声音都没问题,所以我安装了 i3,应用我的 dotfiles 并开始工作。
键盘的问题
我遇到的第一个问题是试图让键盘设置与 Macbook 布局配合,特别是在本地化键盘上,我需要调整它以达到我习惯的 Caps Lock 和 Ctrl 切换。
用 setxkbmap 解决了这个问题,但必须在登录时运行它。
setxkbmap -layout gb -model apple_laptop -variant mac -option "ctrl:swapcaps"
此外,有时我把我的笔记本电脑放到办公桌上,然后插入一个外部键盘(不是苹果品牌的),当我把它插入时,这也需要额外的调整,因为 alt/windows 键由于某些原因被交换了。
setxkbmap -layout gb -model apple_laptop -variant mac \\ -option "altwin:swap_lalt_lwin" -option "ctrl:swapcaps"
这花了一段时间才完成这些设置,但我很满意。
复制和粘贴的问题
从 OSX 转到 Linux,意味着要忘记 10 年的键盘快捷键。剪贴板的 Cmd+C、Cmd+V 不经过大量的调整根本就无法使用,花太大力气来实现对我来说似乎不值得。先放到一边吧,等有时间再研究。
所以我不得不训练自己回到使用 Ctrl 作为修饰键,一开始很不习惯,但我适应的速度之快令人惊讶。烦人的部分是在复制/粘贴到终端时,必须记住要按 Shift 键。
显示配置
如前所述,我经常把笔记本插在外部显示器上,和键盘的调整一样,这需要花费很多精力。首先,我将我的笔记本电脑放置在外部显示器的下方,所以喜欢使用上下布局。我花了很多时间来尝试并找到体面的 xrandr 设置来支持这一点。每次我放上去,显示器又飘到笔记本屏幕下方。
最终我找到了优秀的工具 arandr,它提供了一个 GUI 界面来生成适当的设置。
不幸的是,我还没有找到一种在拔掉/插入显示器时自动应用这些设置的方法,所以我不得不写一个脚本在切换时运行(也包括上述的 setxkbmap 设置)。
xrandr --output eDP1 --primary --mode 2560x1600 --pos 640x2400 \\ --rotate normal --output DP1 --scale 2x2 --mode 1920x1200 --pos 0x0 \\ --rotate normal
视网膜屏幕
要想让所有的东西都能在笔记本上很好地缩放,需要一些努力,幸运的是,Doug Beney 写了一份详尽的指南,很容易实现。
https://dougie.io/linux/hidpi-retina-i3wm/
亮度调整
改变屏幕亮度这样需求也不简单,我花了一段时间才弄明白。感谢 askubuntu 帖子中的指导,修改了一些 i3wm 的配置设置,能够让亮度键的工作方式与你所期望的大致相同。
https://askubuntu.com/questions/715306/xbacklight-no-outputs-have-backlight-property-no-sys-class-backlight-folder
# 屏幕亮度控制 bindsym XF86MonBrightnessUp exec xbacklight -inc 5。 bindsym XF86MonBrightnessDown exec xbacklight -dec 5
睡眠功能
关闭笔记本上的盖子,应该暂停操作系统,但它似乎从来就不工作,我经常发现我的机器在第二天早上还剩30分钟电池的情况下处于滚烫的状态。
通过 Josh Sherman 的一篇帖子解决了这个问题,你还需要防止 USB 控制器唤醒系统。
https://joshtronic.com/2017/03/13/getting-suspend-in-linux-working-on-a-macbook-pro/
不幸的是,上面的这个设置需要每次启动时手工启用,所以我写了一个 systemd 服务和脚本来启用这个功能。
https://gist.github.com/djhworld/734fd6fc36768ecff639cd2d6c656f5a
告别火狐浏览器
这可能是切换中最郁闷的部分。我一直是 Firefox 的忠实粉丝,尤其是像 Tree Style Tabs 这样的扩展,对我囤积标签的恶习起到了助推作用。
不幸的是,在 Linux 上,Firefox 就是一坨 x,速度慢,启动需要很长时间,网站的渲染速度非常慢,在标签页之间的切换,会让你感觉昏昏欲睡,感觉狐狸身上的火已经熄灭了。
我尝试了所有的方法来解决这个问题,改变 about:config 中的设置,尝试 Firefox Nightly ,启用 WebRender,但似乎没有什么效果。
相比之下,Google Chrome 的速度快如闪电,真的是天地之别,所以对于进行我的 Linux 之旅,很遗憾,不得不暂时选择大 G。
其他工具和功能
-
终端用的是 alacritty,非常平滑,速度快,字体渲染效果好。
-
redshift 就像 OSX 上的 f.lux,晚上不刺眼。
-
Dropbox的设置非常简单,尤其是在添加systemd服务时(感谢Joe Roback)。
-
Visual Studio Code – 不出所料,没有问题。
-
GIMP – 可以很好地进行截图编辑,凑合可用。
新环境的乐趣
在把所有的东西都按照我喜欢的方式配置好之后,还有些什么?
i3wm
i3wm 真是爆炸性的使用,在工作空间之间的切换,移动窗口和习惯于平铺需要一个小的学习曲线,但这意味着我使用鼠标少了很多。
额外的好处是一切都感觉很快,这可能只是一个感知的问题,但有时感知很重要。
注:我知道 swaywm 的配置与 i3 兼容,并在Wayland上运行。我已经试过了,它看起来很整洁,而且它可能会解决上面描述的键盘/显示器问题,但在我的 Retina 显示器上,Chrome 看起来非常模糊。我猜是因为它是通过 XWayland 渲染的,一旦解决这个问题,我就会考虑转换。
systemd
Systemd 在社区里受到了很多抨击,但我真的非常喜欢它。我已经写了一些自己的服务,这些服务可以执行任务或运行软件,安装在 .config/systemd/user 下,写起来很简单。
熟悉这些工具的使用是一个艰难的过程,但感觉比以前的 init.d 脚本好多了。
DNF
我在其他机器上以 headless 模式使用 Fedora,所以我已经相当习惯了这些工具,有一个像样的包管理器,能让所有东西都保持最新版本是不错的。OSX上的 Homebrew 是一个努力,但还是差很多。
麻烦的问题
WiFi 掉线
这个问题我一直没有弄明白,但可能每周有一两次 WiFi 驱动就会停止工作。为了解决这个问题,我必须发出一个命令来重新加载内核模块。
sudo modprobe -r brcmfmac && sudo modprobe brcmfmac
不支持摄像头
我有时也会使用 Skype 和 Zoom 与家人沟通,但网络摄像头似乎不能使用,有一个逆向工程正在努力补救这个问题,但 iPad 可以作为一个不错的视频通话设备,所以还没有来得及修复它。
浏览器不支持视频硬件加速
Linux 中的网页浏览器不支持 GPU 视频加速。又一次我在观看一个关于煮鸡蛋的 YouTube 视频时本子热气腾腾散发的热量足以煮熟一个鸡蛋时候发现的。
显然,有一个 Chromium 的补丁版本据说支持,但目前看来,浏览器厂商并没有将此视为重要的任务。
不过安装 VLC 和 intel 驱动可以工作,所以只能这样了。
OSX / Linux 的差异
下面几个 OSX 功能切换之后就错过了,但似乎大多有 Linux 的等价物或变通办法。
-
截图编辑。在 OSX 上,做一张截图,然后立即跳入内置的编辑器中添加注释和调整非常方便。一定程度上可以用 maim+GIMP 来实现。
-
pbcopy/pbpaste: 这些都是与剪贴板交互的命令行工具。Linux 下面的等价物是 xclip
-
Spotlight/Alfred。我只是把它当做一个快速计算器来用,从来没有用过那么多的文件搜索功能。启动终端(Alt+Enter)并使用 bc 似乎可以提供类似的功能。我可能会考虑把这个功能绑定到一个快捷键上。
-
通知。设置dunst可以提供足够好的桌面通知支持。
-
Airdrop: 我很少会用它来发送东西到我的 iPad 上 — 我还没有找到合适的解决方案。
-
1Password:这真的不是一个问题,1PasswordX 工作得很好,如果想提一句的话,我认为它可以做得更好。
工作环境
把家里机器切换到 Linux 之后,在工作环境又出现了一个新的问题,在不同的操作系统上交替使用不同的键盘快捷键,这种认知上的开销似乎有些麻烦,再加上我比较想念 i3。
为了解决这个问题,我通过 VMware Fusion 使用虚拟机,效果出奇的好,感觉几乎是原生的!我的工作机是一台 MBP 2019,有 6 个核和 32GB 内存,所以能力没啥问题。
以上是“在MacBook上运行Linux需要注意什么”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注云搜网行业资讯频道!