Linux 是一个很棒的操作系统,可是很多人因为对其不了解而不愿尝试使用。每当我向朋友们推荐 Linux 时,大家总是问我 Linux 有什么好处/和 Windows 有什么不同。实在懒得每一次都说一很多,所以在此详细的说一下吧。虽然你萌用不到好东西不是我吃亏,但是我人太好啦,好东西总想和大家分享

和 Windows 有什么不同

软件分发方式

我觉得这可能是 Windows 和 Linux 最大的区别了吧

Windows 完全使用二进制方式分发软件,除了一些基本运行环境之外其他的很多常用的库并无法复用,很多软件都必须包括很多相同的库,占用了部分不必要的硬盘空间。二进制方式使得用户无法获得源代码,用户实际并无法知道软件实际做了什么。很多 Windows 用户不得不前往各种各样的盗版软件下载站下载盗版软件,这不仅导致了无法确保下载到的软件是安全的之外还容易被捆绑安装很多垃圾软件,因此 Windows 用户也经常中病毒,因此小白电脑用户在这种环境下则更加的弱势。(还有很多小白用户因为各种原因安装”杀毒软件”,这种完全没必要的行为更容易导致那些常驻的软件在电脑中肆意妄为,并且占用着很多笔记本用户可怜的硬件资源)其实对于懂电脑的开发者来说 Windows 并没有什么明显的坏处

Linux 通常可以使用包管理或者编译的方式安装软件,使用包管理除了安装方便之外还完全不用担心你用的和开发者发布的有什么不同,包管理除了使用 SSL 来确保文件的来源之外还会自动校验下载的文件的散列值。如果你使用的发行版是 Arch,那么 Arch 紧随上游的特点和 AUR 的支持下几乎可以一键安装所有的软件。

软件的储存方式

Windows 的软件分发方式为 Windows 带来了很多很多缺点,除了之前列到的之外还有很多其他的。用过 Windows 的大家应该也都深有体会,这里在列举一个明显的,就是软件的储存方式。因为总是使用不知道从哪来的安装包或是压缩包来安装软件,所以软件也总被不知道放在哪其实通常来说会放在 c 盘的 Program Files 目录里,然后在开始菜单或者是桌面上放很多”快捷方式”为什么不试着用 Windows10 的搜索功能呢?,不光难以找到需要的软件而且还不便于管理软件,还使得自己的硬盘总是被莫名其妙的占用很多

Linux 则完全不用担心,包管理会自动帮你在固定的地方创建软链接,你可以在 shell 中任意的运行他们,这也使得不同的软件之间互相调用变的容易。桌面管理器会帮助你很容易的找到自己需要的软件。

不需要总是重启

虽然我用 Windows 也从来不重启,可是很多小白虽然说不上重启对电脑有什么好处,可是大家还是喜欢在出门或是睡觉的时候把电脑关机(可是他们的垃圾硬盘和垃圾软件使得开机一次要好几分钟)。或者有时因为系统或是软件的更新被迫重启,要不然就是电脑死机了或是内存被垃圾软件塞满了导致被迫重启。

而 Linux 则绝对不会说逼迫你重启或是声称为了”安全”让你更新系统。即使你更新了 Linux 内核你也无需重启(只是没法立即用上新的内核罢了)

更多的选择

Windows 下无法选择更好的工作方式,能改的似乎只有壁纸,主题色,任务栏图标大小或位置等。然而 geek 知道如何为自己打造一个舒适的开发或工作环境,小白却只能忍受效率底下的方式但自己却浑然不知

Linux 用户则可以自己选择桌面管理器,选择自己喜欢的高效的工作方式。或者单纯追求一个整洁美观的界面。

特意放几个图,都是 awesome-wm 的

其他可以参考 Why Linux is Better

为什么听说 Linux 不好用

听谁说的?告诉我他是谁?怕不是不负责任的垃圾网络媒体?

听说 Linux 难用/难以上手?

因为 Linux 的优秀通常被用作服务器使用,进而给人一种不该是普通人日常用的的错觉。其实 Linux 有着相比 Windows 更加美观易用的图形界面。开发者用命令行是因为对于他们来说有着更加高的效率。

听说 Linux 很多软件都没有?

一定程度上说确实是的,因为很多能力不足的软件公司或是开发者不愿意提供跨平台的支持。从 Windows 上的垃圾软件数量就可以看得出。然而随着技术的发展,越来越多的公司愿意提供跨平台的软件。并且即使不使用企业提供的商业软件,Linux 平台上也有足够多的开源软件可供使用。对于普通用户来说并不用担心。而对于网游玩家来说,你们只能咒骂那些游戏厂商不愿意支持 Linux 平台(笑),不过还是有很多懂技术的游戏玩家成功的在 Linux 平台玩起他们喜欢的游戏。在有了 PlayOnLinux 的帮助下大家就可以沾光在 Linux 下玩游戏啦

其实本来有人用 Linux 就是为了摆脱垃圾游戏,可是 CrossOver 的存在使得在 Linux 下他们还是能玩那些游戏,小学生看了根本把持不住(笑)

对 Steam 玩家们来说完全不用担心,大部分游戏都可以直接在 Linux 上游玩,并依然可以通过 Steam 来一键安装。而小部分的独立游戏可能因为开发者精力有限而没有支持 Linux 平台。毕竟每个独立游戏开发者都可以称作是艺术家,可以尝试和游戏开发者以及其他玩家们交流一下。

Steam 截图

超过一半了,也算是大部分了吧

建议

对于真正懂电脑的开发者来说,他们可以很好的驾驭 Windows,他们会借助第三方的包管理,不会去安装一些乱七八糟的软件。对于借力于 Windows 平台上专业的软件来工作的人来说,Windows 可以极大的提高他们的生产力。而对于普通电脑用户来说,Linux 是个更好的选择


通常来说因为 AUR 和紧随上游这两个原因我推荐大家使用 Arch,只是安装起来稍微有一点点麻烦其实有图形界面安装的方式,比如 antergos。其次大家可以考虑从 Ubuntu 或者 OpenSUSE,好处就是开箱即用,缺点显而易见。

获取 GNU/Linux!

其实还很推荐大家尝试 OSX 系统,现在叫 mac os。虽然不是 Linux,并且环境依然封闭,可是他具有上面提到的 Linux 的种种优点,并且本身界面就很美观,也有非常多高效的软件。对于几乎所有人来说都是很棒的选择。我本身也非常喜欢 OSX,只可惜我买不起苹果电脑(掀桌)


因为肯定还是有很多铁头娃坚持要用 Windows,我之后再写一篇如何用 Windows 打造一个良好的环境吧