replicate dataframe mean 和mean dota 有什么差别

Powered by
Major Linux Problemson the Desktop or Why Linux is not (yet) Ready for the Desktop,2016 edition
Why Linux sucks? No why, Linux doesn't suck!
Font size: &&&
Table of contents
The article translations:
Una versión en espa?ol de este artículo se puede encontrar
你可以从这里阅读这篇文章的本 (2013)
Частичный
статьи на русский (2012)
More translations, please! ;-)
In this regularly updated article, which is without doubt the most comprehensive list of Linux distributions' problems on the entire Internet, we only discuss their main problems and deficiencies (which may be the reason why some people say Linux distros are not ready for the desktop) while everyone should keep in mind that there are areas where Linux has excelled other OSes: excellent package management, multiple platforms and architectures support out of the box, usually excellent stability, no widely circulating viruses or malware, complete system reinstallation is almost never required, besides Linux is extremely customizable, easily scripted and it's free as in beer.
Again, let me reiterate it, this article is primarily about Linux distributions, however many issues listed below affect the Linux kernel as well.
This is not a Windows vs. Linux comparison, however sometimes you'll find comparisons with Windows or Mac OS as a point of reference (after all, their market penetration is in an order of magnitude higher). Most issues listed below are technical by nature, however some of them are "political" (it's not my word - it's what other people say) - for instance when companies refuse to release data sheets or release incomplete data sheets for hardware, thus Linux users don't get all the features or drivers have bugs almost no one in the Linux community can resolve.
I want to make one thing crystal clear - , in some regards, is even worse than Linux and it's definitely not ready for the desktop either. Off the top of my head I want to name the following quite devastating issues with Windows:
o&devastating Windows rot,
o&no enforced file system and registry hierarchy (I have yet to find a single serious application which can uninstall itself cleanly and fully),
o&svchost.exe,
o&no true safe mode,
o&no clean state,
o&the user as a system administrator (thus viruses/​malware - most users don't and won't understand UAC warnings),
o&no good packaging mechanism (MSI is a fragile abomination),
o&no system wide update mechanism (which includes third party software),
o&Windows is extremely difficult to debug,
o&Windows boot problems are often fatal and unsolvable unless you reinstall from scratch,
o&Windows is hardware dependent (especially when running from UEFI),
o&Windows updates are terribly
and they also waste disk space,
o&there's no way to cleanly upgrade your system (there will be thousands of leftovers), etc.
Probably you've heard many times that Android thus Linux is conquering the entire world since it's running on the majority of smart phones (which are indeed little specialized computers but not ). However there are two important things to keep in mind - firstly, Android
(besides have you seen anyone running Android on their desktop or laptop?). Android contains the only Linux component - the kernel (moreover, it's a fixed old version (3.0.x, 3.4.x or 3.10.x as for 2016) which is maintained and supported solely by Google). Secondly, Android is not a desktop OS, it's an OS for mobile phones, tablets and other touch screen devices. So, this article is not about Android, it's about a
of Linux distributions and Open Source Software included by these distributions (called "distro" below).
Miguel de Icaza, the creator of Gnome and Mono, opined about Linux problems in a similar way, here's
where he reiterates a lot of things mentioned below. He
Linux in 2012, saying about his Mac the following, "Computing-wise that three week vacation turned out to be very relaxing. Machine would suspend and resume without problem, Wi-Fi just worked, audio did not stop working, I spend three weeks without having to recompile the kernel to adjust this or that, nor fighting the video drivers, or deal with the bizarre and random speed degradation that my ThinkPad suffered", highlighting problematic areas in Linux. Recently Linus Torvalds expressed his
with the state of Linux on the desktop.
Ubuntu developers decided to push Ubuntu as a viable gaming platform and they identified
which need to be addressed in order to achieve this goal. Uncannily , they've come up with, matches the list, you can read below, almost verbatim.
Some of Fedora developers
to change this distro so it provides stable APIs/ABIs and avoids regressions if possible.
Feel free to express your discord in the .
Attention:
Greenish items on the list are either partially resolved, not crucial, questionable, or they have workarounds.
This list desperately needs to be reorganized because some of the problems mentioned here are crucial and some are not. There's a great chance that you, as a user, won't ever encounter any of them (if you have the right hardware, never mess with your system and use quite a limited set of software from your distro exclusively).
Here are a few important considerations before you start reading this article:
If you believe Linux is perfect and it has no problems, please close this page.
If you think any Linux criticism is only meant to groundlessly revile Linux, please close this page.
If you think the purpose of this article is to show that "nothing ever works in Linux or Linux is barely usable", you are wrong, please close this page.
If you believe Linux and Linux users will work/live fine without commercial software and games, please close this page.
If you think I'm here to promote Windows or Mac OS, please close this page.
If you think I'm here to spread lies or FUD about Linux, please close this page immediately and never ever come back. What are you doing here anyway? Please go back to flame wars and defamations.
Keep in mind that this list serves the purpose to show what needs to be fixed in Linux rather than to find faults in it.
(For those who hate reading long texts, there's a
below). So Linux sucks because ...
Hardware support:
Video accelerators/​acceleration (also see the
! NVIDIA Optimus technology and ATI dynamic GPU switching are still not supported on Linux out of the box in any existing distro. AMD hybrid graphics support
and very incomplete.
! Open source drivers have certain, sometimes very serious problems (-,
! Open Source NVIDIA driver is much slower (up to five times) than its proprietary counterpart due to improperly working power management.
AMD and Intel graphics drivers can be signficantly slower than their proprietary counterparts (for Intel that's their Windows driver) in new complex, graphically intensive games and applications. Luckily open source drivers have reached parity in regard to old games and applications.
! The most recent test shows that open source AMD and NVIDIA drivers
support many types of video cards.
! Open Source NVIDIA driver do not properly and fully support power management features and fan speed management.
! Suspend and resume in Linux is
and oftentimes does't work.
The lack of suitable performance
support due to different issues.
OpenCL and multiGPU rendering are not supported by open source drivers.
Oftentimes both open source and closed source drivers cannot properly detect and/or use monitors: with certain displays you may get black screen, or unsupported resolutions, or out of bandwidth message.
!! According to an anonymous NVIDIA engineer, "Nearly Every Game Ships Broken ... In some cases, we’re talking about blatant violations of API rules ...
There are lots of optional patches already in the driver that are simply toggled on or off as per-game settings, and then hacks that are more specific to games ... Ever wondered why nearly every major game release is accompanied by a matching driver release from AMD and/or NVIDIA?". The open source community simply doesn't have the resources to implement similar hacks to fix broken games, which means at least for complex AAA games proprietory drivers will remain the only option.
! Mesa problems (Open source OpenGL stack):
This has become a distro specific choice, and hopefully we'll forget about it very soon: certain OpenGL features
enabled in Linux due to patents (like S3TC texture compression and floating point textures).
Mesa currently implements OpenGL 4.2 but it lacks
which are required for modern games which means in some cases you might need proprietary NVIDIA/AMD drivers to play certain games under Linux.
You cannot easily mix proprietary NVIDIA/AMD drivers with open source drivers because the former override system wide OpenGL/OpenCL libraries.
proprietary graphics drivers don't work reliably for many people (crashes, unsupported new kernel and X server, slow downs, extreme temperatures, a very loud fan, etc.).
Proprietary NVIDIA/AMD graphics drivers don't support KMS/VirtualFB and are often late supporting newer X.org server and kernel releases. Besides Linux developers do everything to break closed source drivers by changing APIs (to give you an example, each and every kernel from 3.8 to 3.14 included, had changes that rendered NVIDIA binary drivers inoperable, i.e. uncompilable) or
APIs unusable beyond the GPL realm.
A shaky state of hardware acceleration of H.264(AVC)/​H.265(HEVC)/​VP9/​Microsoft VC formats. Mplayer (the most widely used video player in Linux) developers haven't yet merged VAAPI support (luckily MPV and VLC support VAAPI and VDPAU natively - use them instead). Adobe Flash Player uses neither VDPAU nor VA-API because Linux video drivers have too many bugs when it comes to supporting these video acceleration APIs thus Adobe Flash Player drains a lot more power under Linux than in Windows/MacOS X.
! Great many users experience
and desktop
while watching videos and youtube clips (using Adobe Flash) - this issue affects both proprietary (NVIDIA
that this issue plagues Kepler and Maxwell GPUs; an NVIDIA specific workaround exists but it causes performance degradation) and
GPU drivers. Ostensibly it's an X.org "feature".
! Linux drivers are usually much worse (they require a lot of tinkering, i.e. manual configuration) than Windows/Mac OS drivers in regard to support of non-standard display resolutions, very high (a.k.a. HiDPI) display resolutions or custom refresh rates.
! Under Linux setting multi-monitor configurations especially using multiple GPUs running binary NVIDIA drivers can be a major PITA.
Audio subsystem:
! ALSA (the primary sound driver in modern Linux'es) is a
for both developers and users.
! No reliable
(if you use a normal microphone and speakers in many cases you won't be able to use Skype and other VoIP services normally). Windows, Android and MacOS implement it on a system level. There's
for PulseAudio - hopefully it'll be enabled by default in the future or/and there'll be an easier way to use it.
for HDMI devices connected to NVIDIA GPUs (notwithstanding ALSA softvol hacks).
unified software
(implemented in all modern OSes except Linux), many old or/and proprietary applications still open audio output exclusively causing major user problems and headache.
! Too many layers of abstraction lead to the situation when the user cannot determine why his
(ALSA kernel drivers1 -& ALSA library2 ( -& dmix3 ) -&
server4 -& Alsa library5 + Pulse backend6 -& Application - in other words, six layers
or seven layers in case of KDE since they have their own audio subsystem called Phonon).
High definition audio support (&=96KHz, &=24bit) is too often unusable. (Adobe Flash doesn't work with it, old Linux applications do not work with it or produce broken sound).
(Applies only to certain sound cards, e.g. the Creative Audigy series) Insanely difficult to set up volume levels, audio recording and in some situations even audio output. Highly confusing, not self-explanatory audio channels names/settings.
(Linux developers don't care about backward compatibility - OSS is mostly unsupported nowadays,
is no longer being developed. ALSA FTW - like it or not) Changing the default sound card for all applications (i.e. for old applications using OSS or ALSA directly) if you have more than one of them is a major PITA.
Printers, scanners and other more or less peripheral devices:
! There are still many printers which are not supported at all or only barely supported (among them are Lexmark and Canon) - some people argue that the user should research Linux compatibility before buying their hardware. What if the user decides to switch from Windows to Linux when he/she already has some hardware? When people purchase a Windows PC do they research anything? No, they rightly assume everything will work out of the box right from the get-go.
Many printers features are only implemented in Windows drivers.
! Some models of scanners and (web-)cameras are still inadequately supported (again many features from Windows drivers are missing) or not supported at all.
Incomplete or unstable drivers for some hardware. Problems setting up some hardware (like sound cards, touchpads in newest laptops, web cameras or Wi-Fi cards, for instance, 802.11ac and USB Wi-Fi adapters are barely supported under Linux and in many cases they are just unusable).
people report that Broadcom and Realtek network adapters are barely usable or outright unusable under Linux.
Laptops/notebooks special buttons and features often don't work (e.g. Fn + F1-F12 combination or special power saving modes).
! An insane number of
in the Linux kernel, when with every new kernel release some hardware can stop working inexplicably. I have personally reported two serious audio playback regressions, which have been consequently resolved, however most users don't know how to file bugs, how to bisect regressions, how to identify faulty components.
! Incomplete or missing support for certain power saving features modern laptops employ (like e.g. PCIe ASPM, proper video decoding acceleration, deep power saving states, etc.) thus under Linux you won't get the same battery life as under Windows or MacOS and your laptop will run a lot hotter.
(discontinued unfortunately), see .
Software support:
X system (current primary video output server in Linux):
PCs and applications.
No high level, stable, sane (truly forward and backward compatible) and standardized API for developing GUI applications (like core Win32 API - most Windows 95 applications still run fine in Windows 10 - that's 20 years of binary compatibility). Both GTK and Qt (incompatible GTK versions 1, 2,
and incompatible Qt versions 2, 3, 4, 5 just for the last decade) don't strive to be backwards compatible.
! Keyboard shortcuts handling for people using local keyboard layouts is
(this bug is now 10 years old).
between desktop resolutions if you have a full screen application with a custom resolution running - strangely some Linux developers
to the whole idea of games on Linux. But since Linux is not a gaming platform and no one is interested in Linux as a gaming platform this problem importance is debatable. Valve has released Steam for Linux and they are now porting their games for Linux - but that's a drop in the bucket.
! X.org doesn't restore gamma (which can be perceived as increased brightness) settings on application exit. If you play Valve/Wine games and experience this problem run `xgamma -1` in a terminal. You can thank me by clicking the ad at -)
! Scrolling in various applications causes .
! X.org allows applications to
keyboard and mouse input. If such applications misbehave you are left with a system you cannot manage, you cannot even switch to text terminals.
! Keyboard handling in X.org is broken by design - when you have a pop up or an open menu, global keyboard shortcuts/​keybindings
It's fixed as for Qt5 - hopefully most Qt4 applications will be ported to Qt5: another keyboard handling issue is that in many situations applications' shortcuts do
(Qt4) when you have a different than the English US keyboard layout.
! For VM applications keyboard handling is
and passing keypresses to guest OS'es is outright .
! X.org architecture is inherently insecure - even if you run a desktop GUI application under a different user in your desktop session, e.g. using sudo and xhost, then that "foreign" application can grab any input events and also make screenshots of the entire screen.
Under some circumstances GUI becomes slow and unresponsive (video drivers performance, video drivers breakage (thus using software accelerated VESA drivers), notorious bug
- it's ostensibly fixed but some people still experience it). This bug can be easily reproduced under Android (which employs the Linux kernel) even in 2016: run any disk intensive application (e.g. under any Android terminal 'cat /dev/zero & /sdcard/testfile') and enjoy total UI unresponsiveness.
Adobe Flash Player has numerous problems under Linux (badly supported/unsupported video acceleration decoding and , video tearing, crashes and
at 100% CPU usage even on high end systems). In 2012 Adobe
that Adobe Flash player wouldn't be supported any longer for any browsers other than Google Chrome. Edit 2016: no, this issue has not been resolved, it's just Adobe Flash Player which is rapidly becoming irrelevant.
! X.org server currently has no means of permanently storing and restoring settings changed by the user (xrender settings, Xv settings, etc.). NVIDIA and ATI proprietary drivers both employ custom utilities for this purpose.
!! X.org has no means of providing a tear free experience, it's only available if you're running a compositing window manager in the OpenGL mode with vsync-to-blank enabled.
!! X.org is not multithreaded. Certain applications running intensive graphical operations can easily freeze your desktop (a simple easily reproducible example: run Adobe Photoshop 7.0 under Wine, open a big enough image and apply a sophisticated filter - see your graphical session die completely until Photoshop finishes its operation).
! There's currently no way to
speed/acceleration under X.org. Some mice models scroll
under X.org.
There's no way to replace/​upgrade/​downgrade X.org graphics drivers on the fly (simply put - to restart X server while retaining a user session and running applications).
X.org 2D acceleration technologies and APIs aren't as mature and fast as Direct2D and DirectWrite in Windows. This is proven by the fact that standards based
which contain 2D animations and transformations work up to a thousand times faster in Windows than in Linux (to be fair MacOS X has the same issue).
for the X.org server (likewise for KMS - read below). Misconfiguration and broken drivers can leave you with a non-functional system, where sometimes you cannot access text virtual consoles to rectify the situation (in 2013 it became almost a non-issue since quite often nowadays X.org no longer drives your GPU - the kernel does that via KMS).
Adding custom modelines in Linux is a major PITA.
(IOW doesn't work at all in regard to old applications) when it comes to supporting tiled displays, for instance modern 4K displays (Dell UP3214Q, Dell UP2414Q, ASUS PQ321QE, Seiko TVs and others). This is yet another architectural limitation.
!! HiDPI support is
! Fast user switching under X.org works very badly and is implemented as a dirty hack: for every user a new X.org server is started. It's possible to login twice under the same account while not being able to run many applications due to errors caused by concurrent access to the same files. Fast user switching is best implemented in KDE followed by Gnome.
!! Applications (GUI toolkits) must implement their own windows shadowing, because Wayland decorator has no access to applications sub-windows. This issue seems to be .
!! Applications (GUI toolkits) must implement their own fonts antialiasing - there's no API for setting system wide fonts rendering. What??! Most sane and advanced windowing systems work exactly this way - Windows, Android, Mac OS X. In Wayland all clients (read applications) are totally independent.
!! Applications (GUI toolkits) must implement their own DPI scaling.
The above issues are actually the result of not having one unified graphical toolkit/API. Also no one is working towards making existing toolkits share one common configuration for setting fonts antialiasing, DPI scaling and windows shadowing. So at least in theory these issues can be easily solved.
Wayland (even though it bears a version number way above 1.0) is
and it's not supported by proprietary NVIDIA and AMD GPU drivers. Wayland currently properly works only with open source drivers for Intel, NVIDIA and AMD GPUs. It does not work with any other video accelerators (mostly extinct though so it's not a big deal).
Font rendering (which is implemented via high level GUI libraries) issues:
! White or light-colored fonts antialiasing on dark backgrounds (without Infinality patches which are yet to be included by default by any distro) is horrible.
! ClearType fonts are not properly supported out of the box (for a test I compiled FreeType 2.4.11 with ClearType technology but the results were abysmal). Even though the ClearType font rendering technology is now supported, you have no means to properly configure/tune it.
Quite often default fonts look , due to missing good (catered to the LCD screen - subpixel RGB full hinting) default fontconfig settings (this quite unpopular website alone gets over 20% of its visitors seeking to fix bad fonts (rendering) in Linux).
Web fonts under Linux
in old distros.
Fonts antialiasing is very difficult to implement properly when not using GTK/Qt libraries (Opera had been struggling with fonts antialiasing for a year before they made it work correctly, Google Chrome had fonts rendering
for eight months).
(Getting better but we're not yet there) By default most distros come without good or even Windows compatible fonts.
Fonts antialiasing settings cannot be applied on-the-fly under many DE.
By default most distros disable good fonts antialiasing due to patents - more or less resolved in 2012 (however even in 2016 there are still many distros which forget/refuse to enable SPR in freetype2).
The Linux kernel:
! The kernel cannot recover from , sound and network drivers' crashes (I'm very sorry for drawing a comparison with Windows Vista/7/8 where this feature is implemented and works beautifully in a lot of cases).
exclusively grabs video output and
VESA graphics modes (thus it's impossible to switch different versions of graphics drivers on the fly).
KMS video drivers cannot be unloaded or reloaded.
!! KMS has no safe mode: sometimes KMS cannot properly
your display and you have a dead system you cannot access at all (a kernel option "nomodeset" can save you, but it prevents KMS drivers from working at all - so either you have 80x25 text console or you have a perfectly dead display).
Traditional Linux/Unix (ext4/​reiser/​xfs/​jfs/​btrfs/etc.) filesystems can be
when being used on mass media storage.
File descriptors and network sockets
be forcibly closed - it's indeed unsafe to remove USB sticks without unmounting them first as it leads to stale mount points, and in certain cases to oopses and crashes. For the same reason you cannot modify your partitions table and resize/move the root partition on the fly.
In most cases kernel crashes (= panics) are invisible if you are running an X session. Moreover KMS prevents the kernel from switching to plain 640x480 or 80x25 (text) VGA modes to print error messages.
Very incomplete hardware sensors support, for instance, hwinfo32/64 detects and shows ten hardware sensors sources on my average desktop PC and over 50 sensors, whilst lm-sensors detect and present just four sources and 20 sensors. This situation is even worse on laptops - sometimes the only readings you get from lm-sensors are cpu cores' temperatures.
!! A great number (sometimes up to a hundred) of very serious regressions every kernel release due to missing QC/QA.
!! The Linux kernel is
and cumbersome to debug even for the people who develop it.
Problems stemming from the vast number of Linux distributions:
! No unified configuration system for computer settings, devices and system services. E.g. distro A sets up networking using these utilities, outputting certain settings residing in certain file system locations, distro B sets up everything differently. This drives most users mad.
! No unified installer/package manager/universal packaging format/dependency tracking across all distros (The
project, which is meant to solve this problem, is now under development - but we are yet to see whether it will be incorporated by major distros). Consider RPM (which has several incompatible versions, yeah), deb, portage, tar.gz, sources, etc. It adds to the cost of software development.
! Distros' repositories do not contain all available open source software (libraries conflicts don't even allow that luxury). The user should never be bothered with using ./configure && make && make install (besides it's insecure, can break things in a major way, and it sometimes simply doesn't work because the user cannot install/configure dependencies properly). It should be possible to install any software by downloading a package and double clicking it (yes, like in Windows, but probably prompting for a user/administrator password).
! Applications development is a major PITA. Different distros can use a) different libraries versions b) different compiler flags c) different compilers. This leads to a number of problems raised to the third power. Packaging all dependent libraries is not a solution, because in this case your application may depend on older versions of libraries which contain serious remotely exploitable vulnerabilities.
! Two most popular open source desktops, KDE and Gnome, can configure only few settings by themselves thus each distro creates its own bicycle (applications/utilities) for configuring a boot loader/​firewall/​network/users and groups/services/etc.
Linux is a hell for ISP/ISV support personnel. Within the organization you can force a single distro on anyone, but it cannot be accomplished when your clients have the freedom to choose.
! It should be possible to configure pretty much everything via GUI (in the end Windows and Mac OS allow this) which is still not a case for some situations and operations.
No polish and universally followed conventions. Different applications may have totally different shortcuts for the same actions, UI elements may be placed and look differently.
Problems stemming from low Linux popularity and open source nature:
! Few software titles, inability to run familiar Windows software (some applications which don't work in
(look at the lines which contains the word "regression") have zero Linux equivalents).
! No equivalent of some hardcore Windows
like ArchiCAD/3ds Max/Adobe Premier/Adobe Photoshop/Corel Draw/DVD authoring applications/etc. Home and enterprise users just won't bother installing Linux until they can get their work done.
and few AAA
for the past six years (The number of available Linux games overall is less than 1% of games for Windows. Steam shows a better picture: 4% of games over there have Linux ports but it's still too little). Cedega (now dead) and Wine (very unstable, very regressions prone) offer very incomplete support.
patents and legality status.
cannot play many popular audio and video formats until they purchase appropriate codecs.
General Linux problems:
!! There's no guarantee whatsoever that your system will (re)boot successfully after GRUB (bootloader) or
updates - sometimes even minor kernel updates break the boot process. For instance Microsoft and Apple regularly update ntoskrnl.exe and mach_kernel respectively for security fixes, but it's unheard of that these updates ever compromised the boot process. GRUB updates have broken the boot process on the PCs around me for at least ten times. (Also see compatibility issues ).
!! LTS distros are unusable on the desktop because they poorly support or don't support new hardware, specifically GPUs (as well as Wi-Fi adapters, NICs, sound cards, hardware sensors, etc.). Oftentimes you cannot use new software in LTS distros (normally without miscellaneous hacks like backports, PPAs, chroots, etc.), due to outdated libraries. A recent example is Google Chrome on RHEL 6/CentOS 6.
!! Linux developers have a tendency to a)
of security holes b) not notify the public when said hole have been fixed c) miscategorize arbitrary code execution bugs as "possible denial of service" (thanks to
for reminding me of this practice - I wanted to mention it aeons ago, but I kept forgetting about that).
Here's a full quote by Torvalds himself: "So I personally consider security bugs to be just "normal bugs". I don't cover them up, but I also don't have any reason what-so-ever to think it's a good idea to track them and announce them as something special."
Year 2014 was the most damning in regard to Linux security: critical remotely exploitable vulnerabilities were found in many basic Open Source projects, like bash (), OpenSSL (), kernel and others. So much for "everyone can read the code thus it's invulnerable". In the beginning of 2015 a new critical remotely exploitable vulnerability was found, called .
Year 2015 welcomed us with 134 vulnerabilities in one package alone: WebKitGTK+ . More eyes, less vulnerabilities you say, right?
Many Linux
with the state of security in Linux because it is simply lacking.
!! Linux/Unix web servers are generally a lot
than ... Windows web servers, "The vast majority of webmasters and system administrators have to update their software manually and test that their infrastructure works correctly".
Seems like there are lots of uniquely gifted people out there thinking I'm an idiot to write about this. Let me clarify this issue: whereas in Windows security updates are mandatory and they are usually installed automatically, Linux is usually administered via SSH and there's no indication of any updates at all. In Windows most server applications can be updated seamlessly without breaking services configuration. In Linux in a lot of cases new software releases require manual reconfiguration (here are a few examples: ngnix, apache, exim, postfix). The above two causes lead to a situation when millions of Linux systems never receive any updates, because their respective administrators don't bother to update anything since they're afraid that something will break.
!! A new Linux init(!) system systemd has an utterly broken design: systemd can and does ,
and . In a sane world init should never ever crash under no circumstances.
Edit: systemd has become a lot more stable and reliable recently however this doesn't change the fact that an init daemon should be designed such a way 1) it should never leave the system in an undefined state 2) it should be trivially updateable 3) it should never crash. SystemD however has all these problems combined. I for one also believe that an init daemon should try to boot up to a login prompt whenever possible, however systemd will stop booting after encountering even minor problems with fstab.
A year ago a simple solution was proposed: process id 1 (init) should be a very simple daemon, which will spawn all dependent systemd subsystems and processes. In this case the system can possibly recover from certain systemd errors. However no one really wants to implement this solution. Instead systemd grows bigger, more complicated and more prone to malfunctioning. Most embedded Linux system builders actually gave up on systemd due to its immoderate memory consumption and complexity.
! Fixed applications versions during a distro life-cycle. Say, you use DistroX v10.10 which comes with certain software. Before DistroX 11.10 gets released some applications get updated, get new exciting features but you cannot officially install, nor use them.
! Let's expand the previous point. Most Linux distros are made such a way you cannot upgrade their individual core components (like kernel, glibc, Xorg, Xorg video drivers, Mesa drivers, etc.) without upgrading your . Also if you have brand new hardware oftentimes you cannot install current Linux distros because almost all of them (aside from rare exceptions) don't incorporate the newest kernel release, so either you have to use alpha/development versions of your distro or you have to employ various hacks in order to install the said kernel.
Some people argue that one of the problems that severely hampers the progress and expansion of Linux is that Linux doesn't have a clear separation between the core system and user space applications. In other words (mentioned throughout the article) third party developers cannot rely on a fixed set of libraries and programming interfaces (API/ABI) - in most other OSes you can expect your application to work for years without recompilation and extra fixes - it's often not possible in Linux.
No native or/and simple solutions for really simple encrypted file sharing in the local network with password authentication (Samba is not native, it's a reverse engineered SMB implementation, it's very difficult for the average Joe to manage and set up. Samba 4 reimplements so many Linux network services/daemons - it looks like a Swiss knife solution from the outer space).
"leaks" memory (due to ).
for Linux now uses its own memory allocator. KDE
application uses its own memory allocation routines. Neil Skrypuch posted an excellent explanation of this issue .
(Gnome) not
(X.org) - three major Open Source projects are seriously understaffed.
! It's a major problem in the tech industry at large but I'll mention it anyways because it's serious: Linux/open source developers are often not interested in fixing bugs if they cannot easily reproduce them (for instance when your environment substantially differs from the developer's environment). This problem plagues virtually all Open Source projects and it's more serious in regard to Linux because Linux has fewer users and fewer developers. Open Source developers often don't get paid to solve bugs so there's little incentive for them to try to replicate and squash difficult to reproduce bugs.
! A galore of software bugs across all applications. Just look into KDE or Gnome bugzilla's - some bugs are now ten years old with over several dozens of duplicates and no one is working on them. KDE/Gnome/etc. developers are busy adding new features and breaking old APIs, fixing bugs is of course a tedious and difficult chore.
! Steep learning curve (even in 2016 you oftentimes need to use CLI to complete some trivial or non-trivial tasks, e.g. when installing third ).
testing in Linux kernel (and, alas, in
Open Source
too) leading to a situation when new kernels may become totally unusable for some hardware configurations (software suspend doesn't work, crashes, unable to boot, networking problems, video tearing, etc.)
! GUI network management in Linux is a . Consider yourself lucky if NetworkManager works reliably for you. In too many cases NM won't see your existing eth0 connection, nor will it be able to detect it, even if this connection has never been configured before. NM cannot change your NIC hardware parameters. You
establish PPPoE connections over Wi-Fi.
Poor interoperability between the kernel and user space applications. E.g. many kernel features get a decent userspace implementation years after introduction.
! Linux security/permissions management is a bloody mess: PAM, SeLinux, Udev, HAL (replaced with udisk/upower/libudev), PolicyKit, ConsoleKit and usual Unix permissions (/etc/passwd, /etc/group) all have their separate incompatible permissions management systems spread all over the file system. Quite often people cannot use their digital devices unless they switch to a super user.
No (easy to use) application level sandbox (like e.g. ) - Fedora is working hard on it.
(This needs to be thoroughly rechecked): observed
: just compare start up times between e.g. OpenOffice and Microsoft Office. If you don't like this example, try launching OpenOffice in Windows and in Linux. In the latter case it will take more time to launch it.
! CLI (command line interface) errors for user applications. All GUI applications should have a visible errors representation.
documentation and absence of good manuals/help system.
Questionable services for Desktop installations (Fedora, Suse, Mandriva, Ubuntu) - not really important with the advent of systemd.
! No unified widely used system for packages signing and verification (thus it becomes increasingly problematic to verify packages which are not included by your distro). No central body to issue certificates and to sign packages.
There are no antiviruses or similar software for Linux. Say, you want to install new software which is not included by your distro - currently there's no way to check if it's malicious or not.
!! Linux distributions do not audit included packages which means a rogue evil application or a rogue evil patch can easily make into most distros thus endangering the end user.
! A very bad
and forward .
and constantly changing
Linux is a hell for companies which cannot push their drivers upstream into the kernel for various reasons like their closeness (NVIDIA, ATI, Broadcom, etc.), or inability to control development or co-develop (VirtualBox/​Oracle, VMWare/​Workstation, etc.), or licensing issues (4Front Technologies/OSS).
Old applications rarely work in new Linux distros (glibc
(double-free errors, memory corruption, etc.), missing libraries, wrong/new libraries versions). Abandoned Linux GUI software generally doesn't work in newer Linux distros. Most well written GUI applications for Windows 95 will work in Windows 7 (15 years of compatibility on binary level).
New applications linked only against lib C will refuse to work in old distros. (Even though they are 100% source compatible with old distros).
New libraries versions .
Distro upgrade can render your system unusable (kernel might not boot, some features may stop working).
There's a myth that backwards compatibility is a non-issue in Linux because all the software has sources. However a lot of software just cannot be compiled on newer Linux distros due to 1) outdated, conflicting, no longer available libraries and dependencies 2) every GCC release becoming much stricter about C/C++ syntax 3) Users just won't bother compiling old software because they don't know how to 'compile', nor they should know how to do that.
DE developers (KDE/Gnome) routinely cardinally change UI elements, configuration, behaviour, etc.
Open Source developers usually
about applications behaviour beyond their
scenarios. I.e. coreutils developers for no good reasons have broken head/tails functionality which is used by the Loki installer.
Quite often you cannot run new applications in LTS distros. Recent examples: GTK3 based software (there's no official way to use it in RHEL6), and Google Chrome (Google decided to abandon LTS ditros).
Linux has a 255 bytes limitation for file names (this translates to just 63 four bytes characters in UTF-8) - not a great deal but copying or using files or directories with long names from your Windows PC can become a serious challenge.
! Current serious issues with the author's own PC:
1) ALSA's audio mixer works differently than Windows' audio mixer causing an utter .
2) Suspend (specially in ) is totally broken. Suspend doesn't work at all
- NVIDIA refuses to fix this issue which plagues only Linux.
3) RPM package manager .
4) My webcam
when being initialized by Skype (it doesn't do anything unusual).
Most applications that exist both for Windows and Linux start up faster in Windows than in Linux (barring SSD disks but they are still prohibitively costly), sometimes several times faster.
All native Linux filesystems are case sensitive about filenames which utterly confuses most users. This wonderful peculiarity doesn't have any sensible rationale.
Ext4 Linux filesystem cannot be fully defragmented. It supports defragmentation but only for individual files. You cannot combine data and turn free space into one continuous area. XFS supports full defragmentation though, but by default most distros offer Ext4 and there's no official safe way to convert ext4 to XFS.
Linux preserves file creation time only for certain filesystems (ext4, NTFS, fat). Another issue is that user space utilities currently
or modify this time (ext4 `debugfs` works only under root).
There's a lot of
in the open source community.
Random ramblings:
on Slashdot as to why people still prefer Windows over Linux.
on Slashdot as to why Linux still lacks.
4) Any KDE plasmoid can
the entire KDE desktop - seems to be fixed in KDE5.
- Slashdot.
- Slashdot.
- Slashdot (A general consensus - No).
8) Broadcom Wi-Fi adapters under Linux are a PITA.
9) A Gnome developer laments .
10) Fuck LTS distros:
(WTF?! Really?!).
11) A rant about .
12) OMFG: Ubuntu has announced , an alternative to X.org/Wayland.
13) KDE's mail client
handle IMAP mail accounts.
14) Desktop Linux security is a
(zipped MS Powerpoint presentation, 1.3MB) + .
15) Yet another Gnome developer concurs that Gnome 3 was a .
16) Gnome developers keep
their users.
17) Fixed now: KDE developers'
called, "You want to disable files indexing? Really? Fuck you! Eat what we're giving you."
18) Linux "security" is a mess. For the past six months two local root exploits have been discovered in the Linux kernel. Six critical issues have been discovered in OpenSSL (which allow remote exploitation, information disclosure and MITM).
19) Skype developers
for ALSA. Wow, great, fuck compatibility, fuck old distros, fuck the people for whom PulseAudio is not an option.
20) Well, fuck compatibility, there are now
of OpenSSL in the wild: OpenSSL itself, BoringSSL by Google, LibReSSL by OpenBSD. All with incompatible APIs/ABIs (OpenSSL itself breaks API/ABIs quite often).
21) KDE developers decided to
based system tray, so your old applications will not have a system tray icon, unless you patch your system. Wonder-fuck-you-ful.
22) KDE developers/maintainers silently delete unpleasant users' comments on dot.kde.org. KDE developers ignore bugs posted at bugs.kde.org.
23) Welcome:
for Skype. Audio is not fucked up in Linux you said?
24) UDP connections monitoring is a .
25) Linux has become way
even for ... Linux developers.
26) Linux developers gave up on maintaining API/ABI compatibility even among modern distros and decided to bundle a full Linux stack with every app to . This is so f*cked up, I've got no words. Oh, Wayland is required for that, so this thing is not going to take off any time soon.
27) Out of 20 most played/popular games in Steam only three
for Linux. I'm not saying it's bad, it's just what it is.
28) This article is getting unwieldy but fuck it, even
that API/ABI compatibility in Linux is beyond fucked up: "making binaries for Linux desktop applications is a major fucking pain in the ass. You don’t make binaries for Linux, you make binaries for Fedora 19, Fedora 20, maybe even RHEL5 from 10 years ago. You make binaries for Debian Stable…well actually no, you don’t make binaries for Debian Stable because Debian Stable has libraries that are so old that anything built in the last century doesn’t work."
29) KDE is spiraling out of control (besides its code quality is beyond horrible - several crucial parts of the KDE SC, like KMail/akonadi, are barely functional): people
literally hundreds of KDE packages.
Software development under and for Linux
develop kernel drivers out of the kernel tree, because they will soon
with mainline. That's the sole reason why RHEL and other LTS distros are so popular in enterprise.
Games development: no
multimedia framework.
! Hostility towards third party developers: many open source projects are extremely self-contained, i.e. if you try to develop your open source
using open source
or if you try to bring your suggestions to some open source , you'll be met with extreme hostility.
A lot of points mentioned above apply to this category, they won't be reiterated.
Enterprise level Linux problems:
Most distros don't allow you to easily set up a server with e.g. such a configuration: Samba, SMTP/POP3, Apache HTTP Auth and FTP where all users are virtual. LDAP is a PITA. Authentication against MySQL/any other DB is also a PITA.
! No software (group) policies.
! No standard way of software deployment (pushing software via SSH is indeed an option, but it's in no way standard, easy to use or obvious - you can use a sledgehammer to crack nuts the same way).
level replacement/​equivalent (SAMBA doesn't count for many reasons): 1) Centralized and easily manageable user directory. 2) Simple file sharing. 3) Simple (LAN) computers discovery and browsing.
No native production ready filesystem with deduplication and file compression. No filesystems at all to support per-file encryption (ext4fs implements encryption for directories starting from Linux 4.1 but it will take months before desktop environments start supporting this feature).
!! No proper RDP/Terminal Services alternative (built-in, standardized across distros, high level of compression, low latency, needs zero effort to be set up, integrated with Linux PAM, totally encrypted: authentication + traffic, digital signature like SSH).
: There's an incredible amount of
(both in the
and in user space applications) when things which used to work break inexplicably, some of regressions can even lead to
. Basically there is no
() and regression testing in most Open Source projects (including the kernel) - Microsoft, for instance,
that Windows 8 received 1,240,000,000 hours of testing whereas new kernel releases get, I guess, under 10,000 hours of testing - and every Linux kernel release is comparable to a new Windows version. Serious bugs which impede normal workflow can take years to be resolved. A lot of crucial hardware (e.g. GPUs, Wi-Fi cards) isn't properly supported. Both Linux 4.1.9/4.1.10, which are considered "stable" (moreover this kernel series is also LTS(!)), crash under . WTF??
Hardware issues: Under Linux many devices and devices features are still poorly supported or not supported at all. Some hardware (e.g. Broadcom Wi-Fi adapters) cannot be used unless you already have a working Internet connection. New hardware often becomes
months after introduction. Specialized software to manage devices like printers, scanners, cameras, webcams, audio players, smartphones, etc. almost always just doesn't
- so you won't be able to fully control your new iPad and update firmware on your Galaxy SIII. Linux graphics support is a big bloody mess because kernel/X.org APIs/ABIs constantly change and NVIDIA/ATI/Broadcom/etc. companies don't want to allocate extra resources and waste their money just to keep up with an insane rate of changes in the Open Source software.
The lack of , fragmentation, unwarranted & excessive variety, as well as no common direction or vision among different distros: Too many Linux
with incompatible and dissimilar configurations, packaging systems and incompatible libraries. Different distros employ totally different desktop environments, different graphical and console applications for configuring your computer settings. E.g. Debian based distros oblige you to use the strictly text based `dpkg-reconfigure` utility for certain system related maintenance tasks.
The lack of
between open source developers and
: There's no central body to organize the development of different parts of the open source stack which often leads to a situation when one project introduces changes which
other projects (this problem is also reflected in "Unstable APIs/ABIs" below). Even though the Open Source movement lacks manpower, different Linux distros find enough resources to fork projects (Gentoo developers are going to develo a discord in ffmpeg which led to th a situation around OpenOffice/LibreO a new X.org/Wayland alternative - Mir) and to use own solutions.
A lot of rapid : Most Linux distros have very
upgrade/release cycles (as short as six months in some cases, or e.g. Arch which is a rolling distro, or Fedora which gets updated every six months), thus you are constantly bombarded with changes you don't expect or don't want. LTS (long term support) distros are in most cases unsuitable for the desktop users due to the policy of preserving applications versions (and usually there's no officially approved way to install bleeding edge applications - please, don't remind me of PPAs and backports - these hacks are not officially supported, nor guaranteed to work). Another show-stopping problem for LTS distros is that LTS kernels often do not support new hardware.
: It's very
to use old open and closed source software in new distros (in many cases it becomes impossible due to changes in core Linux components like kernel, GCC or glibc). Almost
backwards compatibility makes it incredibly difficult and costly to create closed source applications for Linux distros. Open Source software which doesn't have active developers or maintainers gets simply dropped if its dependencies cannot be satisfied because older libraries have become obsolete and they are no longer available. For this reason for instance a lot of KDE3/Qt3 applications are not available in modern Linux distros even though alternatives do not exist. Developing drivers out of the main Linux kernel tree is an excruciating and expensive chore. There's no
equivalent for Linux - thus there's no simple way to install conflicting libraries. In 2015 Debian
support for Linux Standard Base (LSB). Viva, incompatibility!
Software issues: Not that many games (mostly Indies) and few AAA games (Valve's efforts and collaboration with games developers have resulted in many recent games being released for Linux, however every year thousands of titles are still released for Windows exclusively. More than 98% of existing and upcoming AAA titles are still unavailable in Linux). No familiar Windows software, no Microsoft Office (LibreOffice still has major troubles opening correctly
produced documents), no native
(simple to configure and use, as well as password protected and encrypted network file sharing) equivalent, no Active Directory or its featurewise equivalent.
Money, enthusiasm, motivation and responsibility: I predicted years ago that FOSS developers would start drifting away from the platform as FOSS is no longer a playground, it requires substantial efforts and time, i.e. the fun is over, developers want real money to get the really hard work done. FOSS development, which lacks financial backing, shows its fatigue and disillusionment. The FOSS platform after all requires financially motivated developers as underfunded
bugs stay open for years. One could say "Good riddance", but the problem is that oftentimes those dying projects have no alternatives or similarly featured successors.
adherence (even KDE developers ).
This article is bullocks! Linux works for me/for my grandpa/for my aunt/etc.
Hey, I love when people are saying this, however here's a list of Linux problems which affect pretty much every Linux user.
Neither Adobe Flash, nor Mozilla Firefox or Google
use video decoding and output acceleration in Linux, thus youtube clips will drain your laptop battery a lot faster than e.g. in Windows. Adobe says they are fed up with video decoding acceleration bugs under Linux and refuse to re-add support for this feature (it was available previously but then they removed it to stop the torrent of bug reports). No, Adobe is not guilty that video acceleration is a mess in Linux.
NVIDIA Optimus technology and ATI dynamic GPU switching are still not supported on Linux out of the box in top tier Linux distros (Mint, Ubuntu, OpenSUSE, Fedora). Over 70% laptops out there contain either Optimus or AMD switchable graphics.
Keyboard shortcuts handling for people using local keyboard layouts is
(this bug is now 10 years old). Not everyone lives in English speaking countries.
Keyboard handling in X.org is broken by design - when you have a pop up or an open menu, global keyboard shortcuts/keybindings
There's no easy way to use software which is not offered by your distro repositories, specially the software which is available only as sources. For the average Joe, who's not an IT specialist, there's no way at all.
You don't play games, do you? Linux still has very : for the past three years less than a dozen AAA titles have been made available. Most Linux games on Steam are Indies.
Microsoft Office is not available for Linux. LibreOffice/OpenOffice still has major troubles properly opening and rendering documents created in Microsoft Office (alas, it's a standard in the business world). Besides LibreOffice has a drastically different user interface and many features work differently.
Several crucial Windows applications are not available under Linux: Quicken, Adobe authoring products (Photoshop, Audition, etc.), Corel authoring products (CorelDraw and others), Autodesk software (3ds Max, Autocad, etc.), serious BluRay/DVD authoring products, professional audio applications (CuBase, SoundForge, etc.).
In 2016 there's still no alternative to Windows Network File Sharing (network file sharing that is easily configurable, discoverable, encrypted and password protected). NFS and SSHFS are two lousy totally user unfriendly alternatives.
Linux doesn't have a reliably working hassle free fast native (directly moun FUSE )
implementation. In order to work with your MTP devices, like ... Linux based Android phones you'd better use ... Windows or MacOS X. Update: a Russian programmer was so irked by libMTP he wrote his own complete Qt based application which talks to the Linux kernel directly using libusb. Meet .
Too many things in Linux require manual configuration using text files: NVIDIA Optimus and AMD switchable graphics, UHD displays, custom displays' refresh rates, multiseat setups, USB 3G/LTE modems, various daemons configuration, advanced audio setups to name a few.
Forget about managing your e-gadgets (specially smartphones, e.g. iPhones are useless under Linux). In many cases forget about your printer advanced features like ink level reporting.
Yeah, let's consider Linux an OS ready for the desktop.
A lot of people who are new to Linux or those who use a very tiny subset of applications are quick to disregard the entire list saying things
like, "Audio in Linux works just fine me." or "I've never had any troubles with video in Linux." Guess what, there are thousands of users who
have immense problems because they have a different set of hardware or software. Do yourself a favour - come and visit Ubuntu
forums and count
the number of threads which contain "I have erased PulseAudio and only now audio works for me" or "I have finally discovered I can use nouveau
instead of
drivers (or vice versa) and my problems are gone."
There's another important thing critics fail to understand. If something doesn't work in Linux, people will not care whose fault it is, they
will automatically and rightly assume it's Linux' fault. For the average Joe Linux is just another operating system, he or she doesn't care if a
particular company ABC chose not to support Linux or not to release fully functional drivers for Linux - their hard earned hardware just doesn't work, i.e.
Linux doesn't work. People won't care if Skype crashes every five minutes under some circumstances - even though in reality Skype is an awful piece
of software which has tonnes of glitches and sometimes crashes even under Windows and MacOS.
I want to answer a common misconception that support for older hardware in Linux is a lot better than in Windows. It's partly true but it's
also false. For instance neither nouveau nor proprietary NVIDIA drivers have good support for older NVIDIA GPUs. Nouveau's OpenGL acceleration speed is lacking,
NVIDIA's blob doesn't support many crucial features found in Xrandr or features required for proper acceleration of modern Linux GUIs (like Gnome 3 or KDE4).
In case your old hardware is magically still supported, Linux drivers almost always offer only a small subset of features found in Windows drivers, so saying
that Linux hardware support is better, just because you don't have to spend 20 minutes installing drivers, is unfair at best.
Some comments just
me: "This was terrible. I mean, it's full of half-truths and opinions. NVIDIA Optimus (Then don't use it, go with Intel or something else)."
No shit, sir! I've bought my laptop to enjoy games in Wine/dualboot and you dare tell me I shouldn't have bought in the first place? I kindly suggest you not to
impose your opinion on other people who can actually get pleasure from playing high quality games. Saying that SSHFS is a replacement for Windows File Sharing
is the most ridiculous thing that I've heard in my entire life.
It's worth noting that the most vocal participants of the Open Source community are extremely
and overly
people peremptorily requiring everything to be open source and free or it has no right to exist at all in Linux. With an attitude like this, it's
no surprise that a lot of companies completely disregard and shun the Linux desktop. Linus Torvalds once
about this: There are "extremists" in the free software world, but that's one major
reason why I don't call what I do "free software" any more. I don't want to be associated with the people for whom it's about exclusion and hatred.
Most importantly this list is not an opinion. Almost every listed point has links to appropriate articles, threads and discussions
centered on it, proving that I haven't pulled it out of my & expletive &. And please always check your "facts".
I'm not really sorry for citing slashdot comments as a proof of what I'm writing here about, since I have one very strong justification for doing that -
/. crowd is very large, it mostly consists of smart people, IT specialists, scientists, etc. - and if a comment over there gets promoted to +5 insightful
it usually* means that many people share the same opinion or have the same experience. BTW, I would be very glad if someone submitted this
article to
(I've done it once but my submission was rejected).
* I previously said "certainly" instead of "usually" but after this text was called
"" (a rebuttal is
) I decided not to use this word any more.
If anyone's interested I can publish a list of measures required to make Linux edible, usable, pleasant and attractive for both users and developers
but savvy readers have probably deduced everything on their own :-).
On a positive note
If you get an impression that Linux sucks - you are largely wrong. For a limited use Linux indeed shines as a desktop OS - when you run it you
can be sure that you are malware free. You can safely install and uninstall software without fearing that your system will break up. At the same time
innate Windows problems (listed at the beginning of the article) are almost impossible to fix unless Microsoft starts from scratch - Linux problems
are indeed approachable.
Also there are several projects underway which are made to simplify, modernize and unify the Linux desktop.
They are systemd, Wayland, file system unification first proposed and implemented by Fedora, and others. Unfortunately no one is working
towards stabilizing Linux so the only alternative to Windows in the Linux world is Red Hat Enterprise Linux and its derivatives (CentOS and Scientific Linux).
Many top tier 3D game engines now support Linux natively: , , ,
and others.
Valve Software released Steam for Linux (alas, it only
under SteamOS
and it's almost unusable under modern Linux distros) and ported the Source engine for Linux and they are developing a
which is based on Linux.
Valve's efforts have resulted in several AAA game titles having been made available natively for Linux, e.g. Metro Last Light. They also promised to port
all then current AAA game titles from Windows to Linux in 2014. A considerable number of new games will be ported to Linux/SteamOS in
NVIDIA made their drivers more compatible with bumblebee, however NVIDIA themselves don't want to support Optimus under Linux - maybe because
X.org/kernel architectures are not very suitable for that. Also NVIDIA started to provide certain very limited
for their GPUs.
Linus Torvalds
Linux APIs have recently become much more stable - however I don't).
Ubuntu developers listened to me and created a new unified packaging format. More on it
and . Fedora developers decided to follow Ubuntu's lead and they're contemplating making
the installation of
easy and trouble free.
The Linux Foundation formed a
to support critical Open Source Projects.
An application level firewall named
has been graciously donated to the Linux community. Thanks a lot to its author!
With recent Mesa 11 release in September 2015 OpenGL 4.1 has finally become reality under Linux. Hopefully this will entice game publishers to start porting more games for Linux.
Sometimes I have reasons to say that indeed Linux sucks and I do hate it. Lennart Poettering doesn't give a
about how I want to use my system, and I don't even want to mention that those two things used to work previously. "I'm a developer - I know better
how users want to use their software and systems", says the average Linux developer. The end result is that most innovations draw universal anger
and loathing - Gnome 3, Unity, KDE 4.0 are the perfect examples of this tendency of screwing Linux users.
So my stance towards systemd: I dislike it a whole lot. I've tried it ten times already and this abomination keeps segfaulting (crashing the entire system), it cannot complete boot process and freezes midway, it's fickle as the sun in a rainy weather. An init system should never ever crash! Do a me favour and run "systemd segfault", "systemd crash", "systemd freeze" on Google and realize this mustn't have ever made into production systems and stable distros.
Linux has a tendency to fuck with your data. Over the past three years there have been found at least three critical errors which led to data loss. I'm sorry to say that but that's utterly unacceptable. Also ext4fs sees a scary number of changes in every kernel release.
There are two different camps in regard to the intrinsic security of open and closed source applications. My stance is quite clear: Linux security is a bad joke. There are no code analyzers/antiviruses so you have no way to check if a certain application, which is published as a source code or binaries, is safe to use. Also time and again we've seen that open source projects are hardly reviewed/scrutinized at all which also means that an attacker can send a patch to Linus Torvalds and add a backdoor to the Linux kernel.
Critical bugs which make it impossible to use your hardware/software in Linux stay open for years!
Fonts problems: in case you've reached this page and you still want good/best/top/free fonts for Linux download them . It seems like many people come to this website looking for the .
Artem S. Tashkinov. Last revised December 29, 2015. The most current version can be found .
Additions to and well-grounded critics of this list are welcomed. Mind that irrational comments lacking substance or factual information might be removed. Anonymous comments are pre-moderated disabled. I'm tired of anonymous haters who have nothing to say. Besides Disqus sports authentification via Google/Twitter/Facebook and if you don't have any of these accounts then I'm sorry for your seclusion. You might as well don't exist at all.
This is isn't a work in progress any longer (however I update this list from time to time). There is nothing serious left that I can think of.
If you want to thank the author or if you want this list to be regularly updated, please, consider the ad at the top of the page. Thank you!
Please, excuse me for grammatical and spelling errors. I'm not a native English speaker. ;-)
In case there are dead links in this article, you can find their live versions via ,
or by Googling respective page titles.
About the author: Artem S. Tashkinov is an avid supporter of the Open Source movement and Open Source projects. He has helped to resolve numerous bugs across many open source projects such as the
kernel, , , GCC, Midnight Commander, X.org and many others. He's been using Linux exclusively since 1999.
I'm searching for a permanent job (with relocation) as a systems administrator in Down U you can download my stripped (for security reasons) CV .
Artem S. Tashkinov - all rights reserved. You can reproduce any part of this text verbatim, but you must retain the authorship and provide a link to this document. The archive of this page can be found .
You can subscribe to this page via an
Please enable JavaScript to view the
You can read the previous .
Return to the .}

我要回帖

更多关于 replicate duplicate 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信