在 Android 16 的 Linux 终端中内存不足?试试这个解决方法

Android 15 第二季度更新中最令人兴奋的新功能之一就是 Linux 终端应用程序。该应用允许用户在 Android 系统上运行完整的 Linux 应用程序,它通过在虚拟机中启动 Debian 发行版实例来实现这一点。这个虚拟机会与宿主 Android 设备共享资源和硬件,例如处理能力和存储空间。默认情况下,Linux 终端应用的内存限制为 4GB,这对于某些要求较高的开发工作负载可能不够用。幸运的是,这一限制有一个简单的解决方法。

在 Android 16 的 Linux 终端中内存不足?试试这个解决方法

尽管 Linux 终端应用可以在所有搭载最新 Android 15 正式版或 Android 16 测试版的 Pixel 手机上运行,但它的内存分配是固定的,与设备的总内存无关——无论是 8GB、12GB 还是 16GB。相比之下,Chromebook 上的 Linux 虚拟机几乎可以使用所有可用内存,只保留 1GB 以确保 Chrome OS 的正常运行。因此,Chromebook 能够应对更高强度的内存密集型开发任务。

由于 Google 开发 Linux 终端应用的主要动机之一是将更多开发工具引入 Android,因此其 4GB 的内存上限令人失望。尽管终端应用支持“内存气球”功能,可动态调整 Linux 虚拟机的内存分配,但这一功能只能在虚拟机运行所需的最小内存和前述 4GB 限制之间浮动。幸运的是,虽然并非万无一失,但这个限制的解决方法相对简单,并且熟悉 Linux 的用户很可能对此并不陌生。

在 Android 16 的 Linux 终端中内存不足?试试这个解决方法

正如开发者李钊在他的博客中指出的那样,这个过程包括将 zram 的大小从默认的 1GB 增加到 8GB,在磁盘上创建一个 8GB 的交换文件(swap file),并将 swappiness 设置为一个合适的值(例如 100)。

要增加 zram 的大小,需要编辑 /etc/systemd 目录下的 zram-generator.conf 文件:

$ cat /etc/systemd/zram-generator.conf
[zram0]
zram-size = 8192
compression-algorithm = zstd

要更改 swappiness 的值,需要编辑 /etc 目录下的 sysctl.conf 文件:

$ cat /etc/sysctl.conf
....
vm.swappiness=100

要创建一个新的 8GB 交换文件,请运行以下命令:

$ sudo fallocate -l 8G /swap
$ sudo chmod 600 /swap
$ sudo mkswap /swap
$ sudo swapon /swap
$ sudo swapon -s #update /etc/fstab for defaults mount on boot
$ cat /etc/fstab
...
/swap swap swap defaults 0 0

对于不熟悉的用户来说,zram 允许你将一部分内存用作压缩的交换空间,从而有效增加可用内存。另一方面,swappiness 值决定了 Linux 内核在进行内存页面交换时的积极程度。虽然与磁盘存储相比,将页面交换到内存中速度更快,但这并不是一种能显著提升可用内存的万无一失的方法——毕竟压缩是有极限的。尽管如此,这个简单的解决方案在结合磁盘上的额外 8GB 交换空间后,应该能有效减少因内存不足导致的应用被终止或 Linux 终端崩溃的情况。

自最初发布以来,Google 已对 Linux 终端应用进行了多项改进,例如增加存储分配和引入标签页界面。希望未来公司还能进一步优化,加入如可调节内存分配、图形界面应用支持等功能。

你在 Pixel 手机上体验过新的 Linux 终端应用了吗?如果是,你目前都用它做了些什么?欢迎在下方评论区分享你的体验!

上一篇 2025年5月9日 15:33
下一篇 2025年5月9日 20:01

相关推荐

  • 以下是在Galaxy S25上使用Gemini扩展与三星应用程序互动时可以做的事情

    我们最近发现了一些证据,表明谷歌正在开发新的Gemini扩展,以实现与三星Galaxy设备上原生应用的深度集成。尽管谷歌和三星都没有透露这些扩展的具体细节,但一项新的泄漏证实了我们之前的一些发现. 知名博主Chun Bhai最近在X平台分享了一些截图,展示了即将推出的Gemini扩展,适用于三星的日历、备忘录和提醒事项应用。截图揭示了用户可以通过这些扩展执行…

    2025年1月17日
    546
  • 如何降低在bios中的CPU电压

    当涉及到为额外的提升而调整你的CPU时,我们都听说过提高组件电压来处理超频。但你有没有想过走相反的路线,降低电压?这是一个很棒的技术,叫做低电压,它的目的是保护你的CPU,这样它就不会随着时间的推移而退化。 通过有目的地降低电压,你正在积极保护你的CPU免受磨损,并减少热节流的可能性。它帮助你在优化系统效率和确保系统长期健康之间找到平衡。当你的CPU被推到高…

    2024年8月20日
    1.9K
  • GeForce Now的付费档次目前免费,但前提是你已经为其付费

    对于所有订阅了NVIDIA GeForce Now流媒体服务的用户来说,迎来了好消息,但对其他人来说则是坏消息。公司正在更改平台所使用的支付平台,因此新的订阅将暂停至少五周。对于付费订阅者,这段时间将免费延长到他们的订阅期内。 通知中指出,支付将从1月31日开始暂停,但订阅已经标注为“售罄”。这包括免费版,它不需要任何支付信息。 现有订阅用户将获得一个免费的…

    2025年1月30日
    828
  • 如何在PC上使用iPhone作为网络摄像头

    你可能需要因为个人或职业原因,在笔记本电脑上参加或发起视频通话。但大多数笔记本电脑的内置摄像头质量较差,影响了通话体验。而且,如果你不经常参加视频会议,投资一个昂贵的外接摄像头并不实际。在这种情况下,你的iPhone可以帮到你。 iPhone的摄像头优于大多数笔记本电脑内置的摄像头,非常适合视频会议、直播和现场录制。因此,你不必购买专用摄像头,可以直接使用i…

    2024年12月7日
    1.6K
  • 如何只使用键盘就可以重启Windows和Mac电脑

    重新启动你的电脑是你每天要做的最普通的事情之一。Windows11 或者几乎所有的电脑。它可以应用一个新的更新,比如Windows11版本24H2,这是安装一个新的应用程序或驱动程序后需要的,或者甚至在设置应用程序中更改某些选项。 通常,你可以从”开始”菜单上重新启动你的电脑,但如果你喜欢更简单的东西,也可以只使用键盘重新启动。如果你…

    2024年8月20日
    1.0K