linux系统
桌面操作系统:windows,MacOS和各linux发行版。
2017年数据,windows份额超过90%,MacOS约6%,Linux份额最高的记录在2016年7月创下,是2.33%。
貌似用linux和MacOS的大多是程序员了。MacOS和linux系统正常使用(看书、上网、看电影等)已经比较成熟,没有太大的体验差异。
linux系统的主要缺点:
- 某些常用软件在linux上没有或运行有问题(qq、迅雷、office等,只有deepin通过虚拟windows系统解决得稍好)
- 完美折腾需要掌握大量相关知识,不折腾难以体现其优点
- 某些设置复杂(较好的发行版已有极大的改善,某些操作需要使用命令)
linux作为桌面系统主要优点(作为服务器系统广泛使用不谈):
- 软件管理容易
- 可定制性超强
- 免费(看版权意识)
对于开发人员,大部分的软件一键安装还解决依赖问题,想要的操作大部分可以通过修改配置和安装软件实现。在运行某些开发软件会明显感觉更快,绝大部分配置通过文本文件容易修改。
linux发行版
一般的linux发行版包括:Linux内核,一些GNU程序库和工具,命令行shell,图形界面的X Window系统和相应的桌面环境,以及一系列其他的软件包(浏览器、阅读器、文本编辑器等)。由各种组织和个人维护。
主要用过的几个桌面发行版:
- 也许桌面用户最多的Ubuntu
- 不折腾的Arch系Manjaro (当前主力)
- 和Manjaro在distrowatch上争第一的Ubuntu进化版Mint
- 号称最美linux的Elementary
- 超稳定适合服务器的版本Centos (只在服务器上用)
- 最强国产化linux的Deepin和一般国产化的优麒麟
下面叙述中不包含在内的主要道听途说
主流的发行版
debian系:Debian -> Ubuntu -> Mint | Elementary | Deepin | 优麒麟 fedora : Fedora -> RHEL -> Centos | Oracle linux SUSE : SUSE -> SLES -> openSUSE (没有用过,大多对其评价较为中立,暂不讨论) arch : Arch -> Manjaro gantoo
其中箭头后的系统基于前面的系统发展,但并不影响前面系统的优势。如Ubuntu基于Debian系统成为较好的桌面系统,但Debian由于其轻量级和可定制仍有广泛使用。
发行版之间主要区别
不同发行版的主要区别在于桌面环境、软件包管理器、软件包以及软件包版本的不同。
包管理
不同的包管理器在实现功能上差距不大,只是对软件包稳定性的态度决定了能够使用的软件版本。
Fedora系的yum管理器,对所有能够安装的软件包做严格的测试,软件包的版本一般较旧但极为稳定,因此服务器上使用较多。其中Fedora相比Centos的软件包略新也略不稳定。对于大规模服务器的管理,一般会搭建其自己的软件仓库解决部分需要使用的软件问题。吐槽:工业级软件求稳定就算了,emacs和vim这种编辑器都是老的,想要配置某些插件还需要自己下载源码编译安装…如果没有相关的测试要求,一般不建议使用centos这种作为个人电脑的操作系统,很多桌面软件不是版本偏低就是没有,需要手动安装。
Debian系使用apt管理软件包,其思路比centos稍激进,软件包版本较新但一般情况下不容易出大问题。通过apt能够下载绝大部分想要的软件,对于某些不在官方仓库的软件能够通过添加apt源安装。因此被桌面系统广泛使用。
Arch系使用滚动更新的pacman,“一周一小更,一月一大更”。相比上述两个能够安装大多数软件的最新版本。还有AUR第三方用户包的加成,通过yaourt命令能够搜索和安装绝大部分linux上有的软件(典型示例为快速安装tensorflow)。过分激进的更新方式必然影响软件包质量,Arch系的包测试比之前成熟得多,在桌面端很少出现软件更新导致不兼容的bug。Ubuntu的软件源已经够丰富,但习惯AUR安装软件后在Ubuntu上会经常有找不到软件导致的不习惯。
Gentoo和Arch类似,软件源丰富,能够下载各个版本的软件包源码并自行定制编译的各种选项,还能使多个版本的软件包共同使用。缺点在于自定义的编译需要较强的硬件能力、对大型软件的编译速度较慢。
桌面环境
主要决定了界面的显示方式以及任务栏、终端、设置、文件管理器、文本编辑器等软件。一个系统的外观、操作和配置都取决于桌面环境。
用户量最大的老牌桌面环境 gnome 和 KDE,分别使用基于C语言的gtk和基于Qt的C++开发,有强大的定制性和大量的主题。
Cinnamon和MATE,相对出现较晚但发展迅速。
轻量级桌面xfce4、LXDE。消耗内存相对少得多,UI配置靠主题。轻微吐槽xfce4,与wineqq有几个不兼容(强迫症注意),还有个super快捷键的bug。
Deepin,默认的主题就很不错不用折腾,消耗内存略大,针对qq等wine程序有优化。
还有很多可以选择的,详见https://wiki.archlinux.org/index.php/Desktop_environment_(简体中文)
顺便提两个平铺窗口管理器i3wm、awesomewm,配置后可以单独作为桌面环境使用。将窗口分块显示,有很多的配置选项,适合键盘折腾党,可以直接设置各种快捷键。当前主力使用awesomewn,由于i3wm里状态栏的qq经常消失(deepin和manjaro上测试)。
体验各种桌面环境: arch系支持大多数桌面环境,一般也不存在冲突问题,直接安装Manjaro任意版然后pacman安装其它环境即可,其中还支持deepin桌面(注意最好复制环境配置文件到用户目录得到最优的配置)。
简单聊聊发行版
不想折腾的话肯定是国产化deepin,UI炫酷还能在应用商店直接安装各种国产软件和其它优秀软件,能够免费使用wine的收费版crossover。偶尔出现不稳定(貌似已经很少了)。Manjaro桌面加deepin效果也不错,只是没有了deepin应用商店,安装软件要靠命令。优麒麟在Ubuntu本身上变化不大,和deepin比难免在某些问题上背锅,但和Ubuntu的软件包类似可以降低某些软件的兼容问题。
一般折腾的系统Ubuntu和Mint,Mint更稳定、折腾的地方更少并且有多种桌面可选(轻量级到重量级随便挑),个人认为优势更大。想要更轻量级的还可以从debian折腾起。貌似OpenSUSE也可以算在此范畴。
推荐稍微熟悉linux系统后使用Arch系或Gentoo(Gentoo有硬件配置要求)。安装arch后需要一步步安装各种包才能好好使用,算学习linux的一种方式,archwiki提供了齐全的文档。不想折腾的可以直接Manjaro,一个Arch的完整配置版,官方和社区提供了各种桌面环境。Gentoo受机器性能限制没折腾过…
Elementary号称最美,但是默认配置看起来也太朴素了点,国内也没有相关源的镜像导致安装软件包有点不舒服。
总结:默认的折腾路线Mint/ubuntu/deepin等起步,熟悉后换arch系,电脑配置还行的可以考虑gentoo,需要和服务器保持兼容另说。如果中间感觉用得舒服了停止即可,滚动更新的系统软件丰富,但Debian系肯定也够用不复杂。
个人感觉
对于操作系统的圣战,个人感觉linux和windows各有长处,经过一定的配置相互之间都能有对方的功能,没必要崇尚开源精神就贬低windows,更没必要批判linux桌面的不习惯。
使用Manjaro作为工作系统半年,平时用来写代码、上网、看论文绰绰有余,正常工作效率不亚于windows。linux系统能够不断的定制和积累以不断的提高效率,个人也很喜欢linux的设计哲学。
但某些东西一折腾就停不下来也算浪费了大量时间,何况linux有折腾不完的东西,需要时刻提醒自己操作系统不是用来折腾的。
对于喜欢折腾的人值得一试。
附
某些不舒服的点:
- 基于wine的TIM在awesome wm和xfce4下略有bug,deepin wm下基本完美
- wps配置中文字体后大部分文件正常,偶尔不正常的需要上office online,如果需要外加插入文献的插件,那还是回windows或者直接LaTeX吧
主力软件:
- vivaldi+Vimium 浏览器+vim操作
- zotero 文献管理
- foxitReader / master pdf editor 阅读和批注pdf
- wine TIM
- golden dict 词典
- 坚果云 同步
- emacs+spacemacs 只用来做markdown/org/python好像有点浪费
- vim/spf13 日常文件编辑
- awesomewm 高效切割屏幕
- idea JavaIDE
- zsh+ohmyzsh 只用了几个简单插件
- fsearch+catfish 做文件搜索