在 Windows 上运行 Linux 到底有多简单?

Linux 是 Windows 的竞争对手吗?

可能并不是。

在今年4月份的一次采访中,Ubuntu 副总裁表示其在 Windows WSL 上增长非常迅速。

得益于 AI 和机器学习,很多开发者第一件事就是使用 WSL 安装 Ubuntu,并且他还说:未来几个月内,WSL 上的 Ubuntu 用户将超越原生 Ubuntu 用户数量。

来源 windowslatest、Orosz(付费墙)

在 Windows 上运行 Linux 到底有多简单?

1 个赞

有了AI之后就更简单了。
有些wsl的配置,比如端口映射、防火墙,直接问AI怎么办就行

1 个赞

其实这个视频有点误导性,真实情况远没有这么简单。

WSL 毕竟不是默认开启的。想在 Windows 上运行 Linux,首先是要开启 WSL,包括虚拟机平台,有时候还要升级到 WSL2,然后再去安装一个发行版。在这个过程中,还可能遇到网络问题。


此外说句题外话,在 FreeBSD 上运行 Linux 也不难 :doge: :

说的对,其实没这么简单,还得先wsl install,可能还需要代理。
而且关键不是运行,而是会不会有些烦人的bug。 :distorted_face:

其实可以从微软商店安装

现在应该是默认wsl2吧

不清楚,好久不用 Windows 了。我之前那台电脑的 Win 10 好像不是。

从 Comparing WSL Versions | Microsoft Learn 可以找到这么几句话,“WSL 2 is the current default version when installing a Linux distribution and uses the latest and greatest in virtualization technology to run a Linux kernel inside of a lightweight utility virtual machine (VM).”、“WSL 2 is only available in Windows 11 or Windows 10, Version 1903, Build 18362 or later.”、“For builds lower than 14393, WSL is not supported at all.”。所以说,只要你电脑上的Windows 10及时更新了,默认安装的WSL就是WSL 2。

没有WLS或者系统不支持WSL的时候, coLinux 工作的也不错,

既然都要用Linux为啥还在Windows下用,直接装Linux不是更清爽么。

实在需要用Windows可以在虚拟机里跑,起码不用频繁的重启、重装、蓝屏了。

难者不会,会者不难

因為要用桌面系統啊,桌面Linux哪有它的命令行穩定,現在Windows哪需要那麼多重裝,我都幾年沒重裝了。

linux 原生层面的安装(apt、yum)的确实,一不小心就安装巨多库,想卸载的时候发现关联一大堆东西,还卸载不掉,跟黑恶势力窝点一样,盘根错节的 :face_with_bags_under_eyes:
搞得我现在只敢用Docker了,安装方便、卸载方便,就是磁盘吃的有点多

Docker就是因此而生啊,遇到困難就發明個新東西繞開它。

1 个赞

如果不喜欢系统级的shared library可以安装snap、flatpkg、appimage这类的独立package

flatpkg自带sandbox功能,类似docker的隔离,单比docker轻量级多了。

snap现在是不是支持sandbox我不知道,因为主要是ubuntu支持snap

1 个赞

可以用Linux桌面。开始可能不习惯,可以试试一些模仿Windows GUI的Linux发行版,或是在虚拟机里跑Windows。慢慢的习惯Linux GUI和命令行后就可以彻底抛弃Windows了。

那开发常用的bat脚本的时候呢,咋办?
项目是要以sh为主,还是bat?
远程debug用户的时候,也不能指望用户装wsl,这些偶尔的切换,我感觉是致命的。

你說得已經假定必須要適應Linux桌面了,我個人覺得沒必要,有這時間學學它的編程接口,雖然我自己現在都是優先跨平臺。

是 Flatpak 吧?

一般的软件包管理器都有自动处理残留依赖关系的功能,比如 Debian 系,apt 有 apt autoremove,可以自动清理掉多余的依赖包。

个人建议,卸载软件包时,可以直接用 apt autoremove [软件包名],将其依赖项一并卸载。

或者,可以去查包管理器的日志,直接把上次安装的软件包一起卸载。

此外,还可以用 btrfs 的快照功能,直接恢复到安装上述软件包之前的状态。我安装大量软件包之前一般会先建立一个快照,如果后续不想用这些软件包了,就直接回滚到上一个快照那里。

1 个赞

是的,我敲错了