开源中国

我们不支持 IE 10 及以下版本浏览器

It appears you’re using an unsupported browser

为了获得更好的浏览体验,我们强烈建议您使用较新版本的 Chrome、 Firefox、 Safari 等,或者升级到最新版本的IE浏览器。 如果您使用的是 IE 11 或以上版本,请关闭“兼容性视图”。
Linux在桌面领域存在的主要问题(2013版) - 技术翻译 - 开源中国社区

Linux在桌面领域存在的主要问题(2013版) 【已翻译100%】

标签: <无>
Mallon 推荐于 4年前 (共 19 段, 翻译完成于 08-03) 评论 10
收藏  
11
推荐标签: 待读

前言

在这篇日常更新的文章中,我们仅仅讨论Linux存在的问题和不足之处(一些人认为Linux不适合桌面,这些或许就是原因)。当然了,各位应该知道的,Linux在很多领域里是要强过其它操作系统的:比如出色的包管理;多平台架构开箱即用的支持;极佳的稳定性(一般情况而言);没有泛滥的病毒和恶意软件;基本不需要重装系统;另外Linux还具有高度的定制性和便捷的脚本环境,甚至还是免费的。

这并不是一篇诸如Windows与Linux之比较的文章,不过文章当中也会有地方拿Windows或Mac OS来作为一个参考(毕竟,它的市场占有率更高)。下面列出的大多数问题是技术性质的,也有一些是“政治性”的(不是我说的,是别人说的),例如如果某硬件生产商拒绝公开技术资料或者公开的资料不完整,那么Linux对该硬件的支持就会不完整或者BUG百出,这个问题在Linux社区里是没人能解决的。
Mallon
 翻译得不错哦!
我想把一件事弄得清清楚楚,明明白白。这件事就是,在某些方面上,Windows平台甚至还不如Linux平台,而且已经明确说明了不适合作为桌面级平台。眼下能想到的是,我要说出Windows平台以下的一些严重问题:没有加强的文件系统和注册表架构(我已经发现了一个单个的可以完全地卸载自身的重要应用程序);没有真正的安全模式;没有清理状态;用户充当系统管理员(病毒/恶意软件带来的UAC警告,大多数用户不会理解,也不想理解);没有好的打包机制(MSI是脆弱的);没有系统的全面更新机制(包括第三方的软件);Windows很难调试,在大多数情况下Windows停止启动非正常的用户才有助于解决这个问题;Windows依赖于硬件(特别是在UEFI上运行),大多数时候你不能安全地升级你的系统(将会长生成千上万的冗余项),等等。
徐继开
 翻译得不错哦!

或许你已经多次听说全球大部分的智能手机都已经使用了Android,也就是Linux。但是有两个问题必须清楚:1.Android并不是Linux(难道你有见过有人在他们的电脑上运行Android系统吗?)。Android只包含Linux的一个部分——内核(而且是一个已经不再更新的只由Google支持的内核)。2.Android 只是一个智能手机、平板或者其他触摸设备的操作系统,并非桌面操作系统。所以本文主要讨论的一系列的Linux系统分支和他们所包含的开源软件而并非Andriod系统。

Gnome和Mono的创始人Miguel de Icaza对于Linux有相同的看法。他在这里反复重申了很多本文下面将要提到的意见。

eatapple
 翻译得不错哦!
Ubuntu的开发者们决定把Ubuntu变成一个有活力的游戏平台。为了达到这个目的,他们列举了一些需要被处理的话题。令人惊讶的是,他们想到的 这个清单和下面你要读到的几乎完全吻合。

一些Fedora的开发者 提议修改这个发行版,来让它提供更稳定的接口(APIs/ABIs)并且尽可能的防止退化。

评论部分,尽情的表达你的反对意见吧。

注意:

列表中的绿色项目要么是部分解决,要么是不重要的,要么是有问题的,要么是有其他变通方法的。 这个列表非常需要被重新组织一下,因为这里提到的一些问题很重要,而也有一些并不重要。

最为一名用户,你有很大几率不会到这里的任何问题。(如果你拥有正确的硬件,从来不把你的系统搞乱,并且只使用你的发行版里面很有限的一些软件)。
mingkaidox
 翻译得不错哦!

在你阅读这篇前,请看看下面一些值得考虑的要点:

  • 如果你相信Linux是完美的,没有什么错误的话,请关闭此页。
  • 如果你认为所有关于Linux的批评只是为了毫无意义地诋毁Linux,请关闭此页。
  • 如果你觉得这篇文章的目的是为了说明“所有在Linux上做的事情或者Linux本身是毫无用处的”,那么你错了,请关闭此页。
  • 如果你相信Linux和Linux的用户可以不需要商业软件和游戏做好工作或者生活的话,请该关闭此页。
  • 如果你认为我在这里是为了要大力推崇Windows 或者Mac OS的话,请给关闭此页。
  • 如果你觉得我在这里是要传播谣言或者质疑Linux的话,请立即关闭此页并永远别再回来。你到底想干嘛?请继续回去参加激烈的争论和诽谤吧。

请记住这列问题的真正的目的是要告诉大家应该更多地深入到Linux里面,而不只是单纯找些错误出来而已。

Sarah的等待
 翻译得不错哦!

桌面Linux的问题和主要缺点

(对哪些憎恨读长文章的人来说,下面有一个简要版本)。

硬件支持

  1. 视频加速器/加速(也见X系统一节)
    • Linux上的NVIDIA优驰技术和ATI的动态GPU切换技术都不是官方支持的,也不能远端使用已经实现的骇客软件来支持。至多你可以使用   BIOS设置或者在启动过程中运行图形子系统之前更改要运行的GPU来切换GPU。优驰技术现在由Linux黑客半解决(而且任何Linux发布也不直接支持它)。
    • 没有高质量的开发源代码的Intel,NVIDIAAMD驱动:
      • 开放源代码的AMD和NVDIA驱动不能正确地和完整地支持电源特性管理和风扇速度的管理
      • 所有开放源代码图形驱动实现了非常不完整和旧的OpenGL(到2013年为止,实现了OpenGL 3.1,然而OpenGL 4.3已经在2012年发布)。
      • Intel驱动比它们在Windows下的驱动很多。
      • 开放源代码的AMD和NVIDIA驱动也比它们专有的驱动要慢很多(有时是数量级的慢)。
      • 由于问题不同,所以缺乏合适的性能对比器的支持。
    • (但愿在2013年能或多或少的解决一部分)新的东西经常使系统崩溃。
    • 完整的OpenGL栈不能合法地在Linux里实现/或者导入到Linux里,因为许多OpenGL功能(例如S3TC纹理压缩和浮点数纹理)是专有的。
    • 开放源代码OpenGL栈(也称作mesa)处在极度糟糕的状况下。
    • 对许多数人来说,NVIDIAAMD的专有知识产权的图形驱动不能可靠地工作(崩溃、不支持新内核和X服务器,逐渐缓慢,超高温度,非常吵的风扇等)。
    • 专有知识产权的NVIDIA/AMD图形驱动不支持KMS和VirtualFB,以及功能实现滞后(新的X.org和新的内核版本正确的和完全的休闲和娱乐的支持,完全2D加速支持等)。除了Linux开发者通过更改API或者使得API在GPL领域外不可用而打破封闭式源代码驱动所做的一切外。
    • H.264 AVC/微软VC加速没有统一的API。VDPAU仅仅在NVIDIA GPU上支持。Intel的VAAPI仍然不成熟,仍然无法合并和由Mpalyer/ffmpeg/xin/等)接受。AMD仍然没有一个可以运行的实现。
    • 当(使用Adobe Flash)观看视频或者youtube片段,非常多的用户经历了严重的视频断裂-这个问题不但影响了专有驱动,也影响了开放源代码的GPU驱动。很明显它是X.org的“功能”。
  2. 音频子系统:
    • 没有可靠的音响系统,没有可靠的统一的软件音频混合系统(除了Linux外,其他现代的操作系统都已经实现),许多旧的和/或者专有应用仍然打开哪些特别引起主要用户问题和头痛的音频输出。
    • 太多的抽象层使得用户不能确定为什么他的音频系统不能工作(ALSA内核驱动->ALSA库(->dmix)->PulseAudio 服务器->Alsa库+后端脉冲->应用)。
    • (仅仅适用于某类声卡,乐如Creative Audigy系列)建立音量级别、音频收录和甚至某些情况下的音频输出都是十分困难的。高度混淆,没有自我说明的音频通道名/设置。
    • (Linux开发者不关心向后兼容性-如见OSS通常得不到支持,OSSv4不再开发了。ALSA将胜出-喜欢不喜欢就这样了),如果你有多张声卡,那么为所有应用(例如直接使用OSS或者ALSA的旧应用)更改默认声卡是一件非常痛苦的事情。
  3. 打印机、扫描仪和或多或少的其他外设:
    • 仍然有许多打印机根本得不到支持,或者只有很少地支持(利盟和佳能就位列其中)。
    • 许多打印机的功能只在Windows驱动里实现了。
    • 一些型号的扫描仪和(互联网)摄像机仍然得不到很好的支持(同时许多Windows驱动具有的功能没有了)或者更本就不支持。
    • 一些硬件的不完整或者不稳定的驱动。一些硬件的安装问题(像声卡或者电视卡/互联网摄像机/Wi-Fi卡)。
  4. 膝上型电脑/笔记本的特殊按钮和功能经常无法工作(例如Fn和F1-F12组合和特定的电量节约模式)。
  5. Linux内核里有大量的 递归算法,当许多硬件同一个新的内核发布运行的时候,它难以理解地停止运行。我个人已经汇报了两个严重的音频播放递归,这两个因此得到了解决,然而大多数用户不知道如何归档漏洞,如何分割递归,如何识别失效的组件。
  6. 现代膝上型电脑使用的许多省电功能(比如PCIe的ASPM,正确地视频解码加速,深度省电状态等)得到不完全的支持的或者没有支持。因此在Linux下你将无法获得像Windows或者MacOS下同样的电池寿命,而且你的膝上型电脑运行在更热的状况下。 天哪
  7. AMD的Hondo CPU在推出的时候仅仅支持 Windows 8


几点人
 翻译得不错哦!
软件支持:
  1. X 系统:
    • 对于现代PC和程序来说,X.org 并不合适很大程度上,它已经过时了,而且不安全
    • 没有用于GUI程序的高层的、持久的、稳定的 (真正向前向后兼容) 标准化 API 。Win32 核心 API保持了18年的二进制级别兼容性,大对数Windows 95程序仍然能在Windows 8上运行。GTK和Qt都没有保持向后兼容。最近10年的版本中,GTK 1、2、3和Qt 2、3、4、5都互不兼容。
    • !用于切换不同键盘布局的快捷键至今仍然不太好用(这个问题9年来一直没有得到解决)。
    • !全屏应用程序使用自定义分辨率时,X.org 不会自动调节分辨率。很奇怪的是一些Linux开发者完全无视了Linux平台的游戏,但既然目前Linux和游戏毫无交集,这个问题似乎不足为虑。Valve已经发布Linux平台的Steam,他们的游戏业正在向Linux移植,但这只是沧海一粟。
    • 许多程序中,滚动会导致程序需要手动重绘
    • ! X.org 允许程序独占键盘和鼠标。如果程序出现意外,系统将无法控制,甚至无法切换至文本命令行界面。
    • ! 在设计上,X.org 的键盘处理无法正常工作。打开的菜单将导致全局快捷键无法使用(GTKQt都有这个问题).
    • 臭名昭著的 bug 12309,某些情况下GUI反应迟缓甚至无响应。这通常是由于视频驱动的不完善(因此使用软件加速的VESA驱动)。这个bug表面上已经修复但用户仍然可能遇到这个问题。
    • ! Adobe Flash Player 在Linux下有非常多的问题:不支持GPU解码和渲染,视频撕裂,甚至高档PC仍导致CPU 100%使用率、掉帧或者崩溃。2012年Adobe宣布将不会继续维护除Chrome以外任何Linux浏览器上的Flash Player。
    • !目前X.org server无法永久保存或恢复用户设置(例如X Render和Xv)。NVIDIA和ATI闭源驱动都提供自己的设置工具。
    • 无法无缝替换X.org驱动(简单来说,在保持用户会话和运行程序的同时重启X server)
    • X.org 的2D加速没有Windows上的Direct2D和DirectWrite那么成熟. 在一些基于标准的HTML5 demo(包含2D动画和变形动作)中,Windows比Linux快大概1000倍。当然,公平地说,Mac OS X也有同样的问题。
    • X.org server没有真正的安全模式。错误的设置或者有问题的驱动会使你的系统无法使用,有时甚至无法进入纯文本的控制台进行修复(现在这个问题已经部分解决了,因为现在通常GPU由核心通过KMS控制,X.org不再控制它了)。
  2. 字体渲染(这个可以由高级GUI库实现)问题:
    • ! 白色或者浅色字体在深色背景上的锯齿显示(没有安装Infinality补丁的时候——现在的发行版都默认安装了这个补丁)简直糟透了。
    • ! ClearType字体无法开箱即用 (我测试了一下自己编译FreeType 2.4.11,这个版本提供了ClearType技术,但显示效果糟糕透顶)。即便支持ClearType字体绘制,你也无法进行调整。
    • ! Web字体在Linux下没法
    • 由于缺乏基于RGB亚像素的完整字体微调,默认字体经常缺乏合适的字体设置,这导致很多时候这些字体看起来像一样
    • 不使用GTK或者Qt的话很难正确实现字体抗锯齿。Opera用了一年才解决了这个问题,而Google Chrome在渲染上花了八个月。
    • 一般来说大多数发行版没有包括好看的(甚至合适的)字体——这个问题正在逐步改善但是尚未完全解决。
    • 很多桌面环境下字体抗锯齿设置无法立即应用
    • 由于专利限制,很多发行版禁用了字体抗锯齿 ——这在2012年或多或少解决了。然而即使在2013年仍有很多发行版禁用了FreeType的SPR技术。
  3. Linux 核心:
    • ! Linux核心无法从显卡、声卡或者网络驱动崩溃中恢复(我很抱歉,在此我要比较一下Linux与Windows。从Windows Vista开始这项特性已经可以在多种场合下完美运行)。
    • KMS 独占显示输出,而且忽略VESA 的显示模式设置。这导致系统无法实时切换显卡驱动。
    • KMS 显示驱动无法卸载或者重新加载。
    • !! KMS 没有安全模式:有时KMS无法正确初始化显示设备,这个时候你完全无法操作你的系统。"nomodeset" 这个内核选项也许有用,但是这个选项完全禁用了KMS驱动。这个时候,要么用一个80x25的文本终端,要么用一个华丽但是不能工作的显示系统。
    • 传统的Linux/Unix (ext4/reiser/xfs/jfs/btrfs/etc.) 文件系统在U盘等大容量设备上可用性不好
    • 文件描述符和socket无法强制关闭。没有卸载就拔下U盘的确是危险的,因为这涉及固定的挂载点,某些情况下可能导致冲突甚至崩溃。基于同样的原因,对分区表和root分区的移动、调整大小无法立刻生效。
    • 对硬件传感器的支持极不完整。比如说,HWinfo32/64在我的极为一般的台式机上能侦测并显示10个硬件传感器数据源和超过50个传感器,但是lm-sensors只能侦测显示4个源和20个传感器。笔记本上的情况更糟。有时从lm-sensors上只能读到CPU核心的温度。
  4. 大量Linux发行版带来的问题:
    • ! 对系统设置、服务和设备没有统一的设置系统。例如,发行版A使用同一程序设置网络,并且将设置写入文件系统特定位置的特定文件中,而发行版B所有设置的设置方式都不一样。这会逼疯大多数用户。
    • ! 发行版之间没有统一的安装程序(或者包管理器、包格式、依赖跟踪设施)。为解决这一问题, GNU Guix 项目正在开发中,但我们不确定它是否会用于主要的发行版中。考虑一下RPM(这货有几个互不兼容的版本)、deb、portage、tar.gz、源代码发布,你就会发现这么多种方式增加了软件开发的成本。
    • ! 发行版的软件仓库没有包含所有的开源软件——库的依赖冲突本身就不允许如此。用户永远不应该为./configure && make && make install而苦恼。另外,这种方式也不安全,有时还会因为不正确的依赖停止工作。安装程序应该只需要双击安装包然后输入密码——就像Windows一样
    • ! 应用程序开发是个问题。不同的发行版可能使用库版本、不同编译器开关甚至不同的编译器。在第三方开发者眼里这会带来一大堆麻烦事。将所有依赖的库都打包并不是解决办法,因为你可能使用的旧版本库可能含有严重的安全漏洞。
    • ! KDE和Gnome这两个最流行的开源桌面本身只能进行很少的系统配置,而每个发行版都要为自己的BootLoader、防火墙、网络、用户和组、服务等创造设置程序。这简直是浪费时间。
    • 对于ISP/ISV员工来说,Linux是他们最不愿意见到的东西。在企业内部你可以强制所有人使用同一个发行版,但是你不能强迫客户这么做。他们会自己选择发行版。
  5. ! 几乎所有的设置都应该能通过GUI进行,但现在很多情况下只能依赖控制台。Windows和Mac OS都能这么做。
  6. 缺乏约定俗成的规则。对于同一个动作,不同的应用程序可能有完全不同的快捷键,UI元素的位置和风格也可能不一样。KDE和Gnome的一些核心程序外观上有些瑕疵。比如说,KDE的开始菜单可能会变成一个巨型垃圾场(这个问题出现在Fedora 17上的KDE 4.8.5)。
无奈的钝刀
 翻译得不错哦!
妨碍Linux流行的问题和开源的天性:
  1. ! 软件名称缺乏描述性,而且无法运行用户熟悉的Windows软件。有些无法用Wine(注意页面里面含有“regression”的行)运行的程序在Linux下没有替代品。
  2. ! 没有能与Windows下相匹敌的核心级应用程序 ArchiCAD、3ds Max、Adobe Premier、Adobe Photoshop、Corel Draw等程序缺乏Linux下的替代品。家庭用户和企业用户不会选择无法完成他们工作的Linux系统。
  3. !过去五年来Linux平台上几乎没有游戏AAA级游戏更是一个也没有。至于2013年,Valve发移植的3A级游戏只有总量的0.05%不到。Cedega(现在已经停止开发了)和Wine(非常不稳定)只能提供非常不完善的支持。另外,AMD和NVIDIA的开源显卡驱动的性能和兼容性不够,OpenGL也支持到OpenGL 3.1——这已经是4年以前的版本了。 
  4. 模糊的专利和法律状态。美国Linux用户在得到合适的(符合法律和专利要求的)解码器之前无法播放很多流行的音频视频格式。
无奈的钝刀
 翻译得不错哦!
Linux常见问题 :
  1. !!你的系统在更新了GRUB(启动装载器)或者内核后是否可以成功地(重新)启动没有任何保证-有时甚至一个小小的内核更新都能中断启动过程。例如微软和苹果为了修补安全漏洞经常性地分别更新ntoskrnl.exe和mach_kernel,却没有听过哪个这样的更新曾经危及启动过程。GRUB更新已中断我PC的启动过程大约十次。(另见下面的兼容性问题)。
  2. !!桌面版的长期技术支持无法申诉,因为极差的支持或者不支持新的硬件,特别是GPU(以及Wi-FI适配器,网卡,声卡,硬件传感器等等)。
  3. !!Linux开发人员有这样的趋势 a)抑制安全漏洞新闻 b)当所说的漏洞修补后不会通知大家 c)错误地把任意代码的执行漏洞当作“可能是拒绝服务”(多亏Gullible Jones提醒我这个问题-很久以前我打算提起这个问题,不过我一直忘记这件事)。这儿是Linux Torvals自己的完整的说明:“因此我个人认为安全漏洞仅仅是“常见的漏洞”。我不提及它们,而且我也没有有任何理由认为追踪并宣布它们是一个特别的东西是个好想法。”
  4. !在一个发布的生命周期里固定应用的版本。假如你使用了含有某个软件的某发布的10.10版本。在这个版本的10.11发布之前,这个应用已经有了更新,而且具有新的令人激动的特性,然而你却不能从官方安装,并且也不能使用它们。
  5. 一些人认为严重阻碍Linux发展和扩展的问题之一是在核心系统和用户应用之间Linux没有一个清晰的分割。换句话说(这篇文档通篇都提到)第三方开发人员不能依赖于一套固定的开发库和编程接口(API/ABI)-在大多数其他操作系统里,你可能期望你的应用在不需要重新编译和额外修补的情况下运行多年-在Linux里这经常是不可能的。
  6. 对那些在本地网络共享的实际上只需要密码认证的加密的文件来说没有本地或者/和简单的实现方案。(Samba不是本地实现的,它是SMB反向工程的实现,并且管理和安装都很难。Samba 4重新实现了许多Linux网络服务/后台进程-这看起来像是来自外太空的瑞士军刀形式的方案)。
  7. 设计的Glibc“泄露”内存。Linux下的火狐浏览器现在使用了自己的内存分配器。KDE的Koncole应用也是用了自己的内存分配程序。这儿Neil Skypuch发布了有关这个问题的非常优秀的说明。
  8. !仅仅(Gnome)没有足够(KDE)人手(X.org)-三个主要的开放源代码项目严重地人员不足。
  9. !Linux/开放源代码开发人员如果不能很容易地再现漏洞,那么他们通常没有兴趣修补漏洞。这个问题几乎困扰着所有的开放源代码项目。
  10. !大量的软件漏洞跨越所有应用。只要看看KDE和Gnome的漏洞跟踪系统-现在一些漏洞已经跟随许多版本复制达十年之久,没有人去解决这些漏洞,KDE/Gnome等等。开发者忙于添加新的特性和破坏老的API,修补漏洞当然是一项单调的和困难的琐事。在2013年仍然大量地破坏了KDE的文件索引。
  11. !过高的学习曲线(甚至在2013年,有时你必须运行命令行接口来完成某些不重要的任务)。
  12. !在Linux内核里有差的递归测试或者几乎没有递归测试(而alsa,另一个开发源代码软件里也一样),这导致这种情况:新的内核可能由于某些硬件配置而整体上不可用(软件挂起不能工作,崩溃,无法启动,网络问题,视频撕裂等等)。
  13. !Linux里的GUI网络管理令人烦恼的事。如果你的网络管理可靠地工作,那么可以认为你自己很幸运。在大多数情况下,网络管理既不能看到已经存在的eth0连接,也不能检测到它,甚至以前你从没有对这个连接做任何配置的情况下。网络管理不能更改你网卡的硬件参数,甚至像MAC地址这样的许多基本参数-在2012年,MAC地址可以修改了。你不能在Wi-Fi上建立PPPoE连接。大多数最近的网络管理发布已经解决了:在微软的Windows和MacOS X里,你可以通过DHCP指定IP地址/掩码/默认网关和自定义DNS服务器-网络管理不支持这样的配置。
  14. 在内核和用户应用之间有很差的互操作性。例如许多内核特性在引入之后若干年才获得相当好的用户实现。
  15. !Linux的安全/权限管理是一件令人苦恼的事:PAM ,SeLinux,Udev,HAL(被udisk/upower/libudev代替),PolicyKit,ConsoleKit和常见的Unix权限管理(/etc/passwd,/etc/group)都有它们各自不兼容的权限管理系统,而且分布在所有文件系统上。人们经常不能使用他们的数字设备,除非他们切换到超级用户。
  16. 没有应用级防火墙(为了清晰地说明这一点-没有方法阻止或者允许某个应用访问互联网,例如/usr/lib/firefox)-SeLinux不能解决这个问题,因为SeLinux策略默认情况下不适用于普通的用户应用,并且SeLinux本身不是防火墙应用 。
  17. 没有(易于使用)的应用级别的沙盒(例如像SandBoxie)-Fedora正在这方面努力着。
  18. (这需要全面的复查):通常观察到很慢:只要比较它们之间的启动时间,例如OpenOffice和微软的Office。如果你不喜欢这个例子,试试在Windows和Linux下启动OpenOffice。后一种情况下启动将花费更长的时间。
  19. !命令行接口(CLI)为用户应用提供错误。所有的GUI应用应该让可以的错误显示出来。
  20. !非常差的文档和缺乏好的手册/帮助系统。
  21. (Fedora,Suse,Mandriva,Ubuntu)的桌面安装存在可疑服务。
  22. !没有统一的广泛应用的包签名和验证系统(因此验证你的发布是否包含这些包渐渐地变成问题)。没有一个中心机构对包进行认证和签名。
  23. (如今认为花费20美元购买4GB的内存不是很严重的问题。)至于最新的Linux发布和桌边环境已经变成了贪婪的资源占有者。例如Ubuntu KDE 4.8.5消耗了非常巨大的1390兆内存。
  24. Linux下没有防病毒或者类似软件。巨乳你打算安装发布里没有包含的新的软件-目前没有任何方法可以检测它是否是恶意软件。
  25. !非常糟糕的向后兼容性和向前兼容性
    •  !由于不稳定或者不断更改内核API/ABI,所以对那些由于许多原因,比如它们是封闭源代码的( NVDIA,ATI,Broadocom等)或者不能控制开发或者合作开发(VirtualBox/Oracle,Vmware/Workstation等等)或者授权问题(4Front技术/OSS),不能把驱动上传到内核的公司来说,Linux就是地狱。
    •  老的应用很少能在新的Linux发布上运行(glibc的不兼容性(双重释放错误,内存误用等),没有这样的库,错误的/新的库版本)。过时的Linux GUI软件通常也不能在较新的Linux发布上运行。大多数书写的很好的windows  95的GUI应用可以在windows 7上运行(二进制级别上的15年的兼容性)。
    •  只连接C库的新的应用拒绝在老的发布商运行(甚至它们与老的发布100%的代码兼容)。
    • 新库的版本存在漏洞,递归和不兼容性
    • 发布的更新可以使你的系统不可用(内核可能引起无法启动,其他功能可能停止运行)。
    • 还有令人迷惑的事:向后兼容性在Linux上不是问题,因为所有的软件都有源代码。然而许多软件不能在较新的发布上编译,只是因为1)过 期,冲突,不再有可用的库和依赖 2)每个GCC发布更严格的遵循C/C++语法 3)用户只是不想编译旧的软件而使自己烦恼,因为他们不知道 如何‘编译’,而且他们应该也不知当如何做到这些。
    •  桌面环境(KDE/Gnome)开发人员平常地主要更改的是UI元素,配置以及行为等等。
    • 开发源代码的开发人员通常不关心超出应用所使用的场景外的行为,也就是说,没有好的理由的话核心应用的开发者不会破坏Loki安装程序使用的头/尾功能。
    • 你不能在长期技术支持的版本里运行新的应用非常频繁 。最近的例子:基于GTK3的软件(没有官方的方法可以在RHEL6上使用)和Google  Chrome(Google决定放弃长期技术支持发布)。
  26. !作者自己PC目前几个严重问题:
       1)我的ALC892音频编码器的最大音量比Windows下要3-4倍。
       2)UEFI模式挂起总是打断启动过程。
       3)RPM包管理器已坏
  27.  慢的(库)连接器,令大脑死亡的慢的连接器,无法容忍的慢的连接器(逐渐得到解决:google使用了黄金连接器)。(binutils连接器与应用的装载无关)。当从Wine启动OpenOffice的windows版本仍然比在Linux版本本身下面花更少的时间。甚至在1G赫兹CPU和慢硬盘的情   况下从Wine启动微软Office 2003只花几秒种。常常仍然没有使用黄金连接器。
      
  28. 其他不着边际的:
    1)KDE:正在解决 Kded4 漏洞
    2)slashdot站点上有关为什么人们仍然愿意使用Windows而不愿意使用Linux的大讨论
    3)slashdot站点上有关为什么Linux仍然缺乏吸引力的另一个大讨论
    4)任何一个KDE的微小更改就可以冻结整个KDE桌面。
    5)slashdot上-为什么桌面Linux仍然不能流行
    6)slashdot上-Torvals猛烈地抨击NVIDIA的Linux支持
    7)是不是开发源代码桌面正在失去竞争力?-slashdot站点(通常的共识是-没有丧失)。
    8)Linux下的Broadcom的Wi-Fi适配器是一个非常令人苦恼的事。
    9)Gnome开发人员对Gnome 3的开发状态很遗憾。
    10)去你妈的长期技术发布:Google说红帽子的企业版6是过时的产品(见鬼?!是真的吗?)
    11)对Gnome 3 API的谩骂。
    12)哦天哪: Ubuntu已经宣布了Mir,X.org/Wayland的替代者。
    13)KDE的邮件客户端不能正确地处理IMAP邮件帐户。
    14)桌面Linux的安全就是一堆垃圾(压缩的微软PowerPoint文件,大约1.3M) 。
几点人
 翻译得不错哦!
Linux下的软件开发
  1. 稳定的API简直就是废话:你不能在内核树之外开发内核驱动,因为很快它们就与主要的开发版本渐渐不兼容。这就是为什么RHEL和其他长期技术支持发布在企业界流行的唯一原因。
  2. 游戏开发:没有完整的多媒体框架。Flasky OpenGL支持。在2012年开放源代码大会上,GPU驱动仅仅支持OpenGL 3.1(DirectX 11级别的图形需要在OpenGL 4.0里实现的功能。DX10需要OpenGL 3.2里实现的功能)。
  3. 上面提到的许多观点也适应于这个题目,不再重复它们了。
企业级Linux问题:
  1. 大多数发布不允许你使用这样的配置:Samba,SMTP/Pop3,Apache HTTP认证和FTP的所有用户都是虚拟的就很容易地建立服务器。LDAP也是令人痛苦的事情。对MySQL/其他DB进行认证也是非常痛苦的一件事。
  2. !没有软件(组)策略。
  3. !没有标准的软件部署方法(通过SSH上传软件确实是一个选项,不过没有其他标准的,易于使用的或者鲜明的方法-就像你通过同样的方式使用长柄大锤砸开坚果一样)。
  4. 对现在的世界来说,Unix的权限系统绝对过时且不适合。Posix的ACL系统默认情况下经常是禁止的,并且不是透明的。没有合适的GUI的话ACL非常难于配置,不过KDE的ACL编辑器不能递归性地更改ACL权限,也不能设置默认的ACL权限-使用KDE的实现几乎没有什么用处。这个问题最终在KDE 4.9中得以修补,不过我不能说Gnome/XFCE/LXDE的任何事情都像我那样不能使用它们。
  5. !没有CIFS/AD级别的替代/等同软件(由于许多原因,SAMBA不算在内):1)集中式的且易于管理的用户目录。2)简单的文件共享。3)简单地(局域网)计算机发现和浏览。
  6. 没有针对文件系统的重复数据删除和文件压缩的系统固有产品。根本没有文件系统支持单个文件加密。
几点人
 翻译得不错哦!
本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们
评论(10)
Ctrl/CMD+Enter

嘿嘿终于翻译完了
完全颠覆我的思想
桌面用户需要一个接近傻瓜型的用户体验,不能一会这儿有问题,一会那儿有问题,你指望他们学命令行和文本配置文件?
的确,在桌面版中,linux真的很烂。但是这也很正常,谁会愿意将自己的大部分精力花费在一个无法获得收益的开源项目呢?
很不好说,翻译方面受英语影响,已经不太在意中文表达习惯了,在翻译栏目还可以,文章单独拿出去就比较麻烦了
很不好说,翻译方面受英语影响,已经不太在意中文表达习惯了,在翻译栏目还可以,文章单独拿出去就比较麻烦了
我去……完全是在google+的指引下从原文看到这篇翻译文章的……这其中原理是什么?@红薯
同一机器,DOTA2在Ubuntu和Windows上的性能对比

Ubuntu 13.04 VS Windows 8: Dota 2 Comparison with Intel HD 4600
http://www.youtube.com/watch?v=cCc1hNbDvUM
Ubuntu保持在50帧上下,Windows保持在80帧上下,Ubuntu平均上要比Windows低30帧.
原因除了DOTA2在Ubuntu上从Direct3D到OpenGL的转译会丢失一些性能,关键是Intel的开源图形驱动的性能有待提高.

Ubuntu 13.04 VS Windows 8: Dota 2 Comparison with a GTX 680
http://www.youtube.com/watch?v=Iih211kgwaI
帧数相近在120帧上下,但在场面复杂的时候,Ubuntu会比Windows低10到20帧.
驱动均为使用官方Nvidia 331 drivers.
随着Valve对Ubuntu的支持,看来Nvidia开始重视Linux桌面了.

Intel在今年7月推出了intel-linux-graphics-installer,通过这个程序可以安装和升级Intel图形驱动,而在9月就释出了2013Q3 Intel Graphics Stack,Intel还是非常积极的:
https://01.org/linuxgraphics/downloads

Nvidia的闭源驱动确性能实很好,但Linux没有提供双显卡自动切换技术optimus,
但可以暂时用非官方的bumblebee提供的optirun和primus实现双显卡切换.
https://wiki.ubuntu.com/Bumblebee
optirun -b primus firefox
已有2016版了,请更新@Mallon
2017年版已出:
http://itvision.altervista.org/why.linux.is.not.ready.for.the.desktop.current.html
顶部