本文通过MetaWeblog自动发布,原文及更新链接:https://extendswind.top/posts/technical/linux_desktop_distribution

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 做文件搜索

linux桌面发行版简介的更多相关文章

  1. 世界排名前三的Linux桌面发行版

    linux操作系统 1.MX Linux 2.Manjaro 3. Linux Mint 1.MX Linux https://mxlinux.org 中文用户不太友好 2.Manjaro https ...

  2. 盘点十大最流行的Linux服务器发行版

    随着Linux不断发展,Linux所支持的文件系统类型也在迅速扩充.很多的数据中心服务器上都运行着Linux,可以节省大量的许可证费用及维护费用.但伴随着Linux新版本的发行,其中每一个不同版本的L ...

  3. 常见Linux的发行版有哪些?并描述不同发行版之间的联系与区别。

    一.按系列罗列linux的发行版,并描述不同发行版之间的联系和区别 Linux发行版=Linux内核+商业软件 linux的发行版: RedHat.Fedora.suse.红旗.debian.Ubun ...

  4. 2018值得选用的五个Linux服务器发行版

    [IT168 编译]据最新统计,目前Linux发行版约有300种,几乎都可以作为服务器系统运行.在Linux早期,几乎所有发行版都是“万能”发行版,专门的Linux服务器发行版并不火热,到21世纪初, ...

  5. Xubuntu 计划从 19.04 版本开始停止提供 32 位安装镜像(XDE/LXQt的 Lubuntu 成为了目前唯一仍然提供 32 位安装镜像的 Ubuntu 桌面发行版)

    Ubuntu 17.10 以及其他许多 *buntu 衍生品都已在今年早些时候停止提供 32 位安装镜像.但其中有一个依然坚持提供适用于 i386 架构的镜像,它就是 Xubuntu,但现在 Xubu ...

  6. linux 各种发行版及包管理器的关系

    linux 各种发行版及包管理器的关系 Linux发行版列表 基于Kpkg(Debian 系) Debian GNU / Linux 及其派生发行版使用deb软件包格式,并使用dpkg及其前端作为包管 ...

  7. CoreOS,CoreOS,一款 Linux 容器发行版

    CoreOS,一款最新的 Linux 发行版本,支持自动升级内核软件,提供各集群间配置的完全控制. 关于使用哪个版本的 Linux 服务器系统的争论,常常是以这样的话题开始的: 你是喜欢基于 Red ...

  8. 主流Linux发行版简介

    发行版 包格式 所属厂商 发布年份 最新版本 说明 RHEL RPM RedHat 2004 7.3 RedHat Linux9.0后的企业方向,系统可以免费下载安装但无法使用官方yum源 Fedor ...

  9. 使用U盘安装Linux最美桌面发行版Elementary OS 及常用开发环境配置(JDK,Redis,MySQL,Docker,IDEA,STS)

    前言 假期在家无聊,刚好把六年前的一台笔记本电脑利用起来,原来电脑虽然说配置说不上古董机器,但是运行win系统感觉还是不流畅,所幸给换成Linux桌面版系统,在网上查阅了很多,Linux桌面系统要么推 ...

随机推荐

  1. Angular 学习笔记 (Material table sticky 原理)

    更新 : 2019-12-03 今天踩坑了, sticky 了解不够深 refer http://www.ruanyifeng.com/blog/2019/11/css-position.html 阮 ...

  2. 服务篇:我的第一WebService应用

    一.我的第一个Webservice应用 1.新建一个空项目 2.添加新项,加入asmx,并再浏览器浏览 3.添加一个aspx网页 4.右键引用→添加服务引用→高级→添加Web引用,输入再浏览器浏览的a ...

  3. Qt界面阴影效果(背景图片)

    实现原理: 1.顶层窗体设置为无边框,背景半透明 2.顶层窗体的子窗体使用带有阴影的图片做背景 代码: //CMainWindow.h#ifndef CMAINWINDOW_H#define CMAI ...

  4. CCF 2017-03-2 学生排队

    CCF 2017-03-2 学生排队 题目 问题描述 体育老师小明要将自己班上的学生按顺序排队.他首先让学生按学号从小到大的顺序排成一排,学号小的排在前面,然后进行多次调整.一次调整小明可能让一位同学 ...

  5. springboot之手动控制事务

    一.事务的重要性,相信在实际开发过程中,都有很深的了解了.但是存在一个问题我们经常在开发的时候一般情况下都是用的注解的方式来进行事务的控制,说白了基于spring的7种事务控制方式来进行事务的之间的协 ...

  6. eclipse 部署Tomcat 只有web-inf webapps没有项目文件

    只有webapps 修改eclipse 默认的 发布位置改为 tomcat的安装位置 eclipse 默认的web-content 改为webroot ,发布后web-inf目录下才会有webroot ...

  7. VUE 元素拖拽、移动

    元素拖拽 作者:一粒尘土 时间:2019-10-30 使用范围:两个元素位置交换,移动元素到指定位置 涉及函数 属性 解释 draggable 是否允许元素进行拖拽 dragstart 拖拽开始触发的 ...

  8. ERROR: Cannot uninstall 'wrapt'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.

    pip install imagededup 时,报错:Cannot uninstall 'wrapt'. It is a distutils installed project and thus w ...

  9. kubernetes集群初始化(二)

    参考地址:https://github.com/unixhot/salt-kubernetes 一.系统初始化 1.1.安装docker 所有节点都安装docker,设置docker国内yum源 [r ...

  10. 2018 ACM 国际大学生程序设计竞赛上海大都会赛重现赛 F Color it (扫描线)

    2018 ACM 国际大学生程序设计竞赛上海大都会赛重现赛 F Color it (扫描线) 链接:https://ac.nowcoder.com/acm/contest/163/F来源:牛客网 时间 ...