Response to 'Mythbusting Linux'

Matthew Moore in a video called Mythbusting Linux suggests that there are three myths perpetrated by the "Linux" community and he aims to show that they are myths. Moore's video is framed around three core facts: (1) that contrary to the common claim that Linux does not get viruses, Moore contends that it can get viruses; (2) that contrary to the claim that the Linux filesystem does not become fragmented, it can become fragmented and finally (3) that contrary to the common claim that a Linux-based hard disk can be moved from one computer to another, Moore aims to show that this is not the case.

The problem with Moore's approach is primarily methodological. There are reasons why empirical research needs to have a control group and be repeated across different participants. One confounding factor in Moore's computer setup could account for the failure of the myths. For example, in Moore's demonstration, fragmentation could be observed by writing to log files. Therefore, this article respectfully disagrees that the myths are busted and presents evidence showing that the supposed myths do seem to hold.

Myth 1: Linux does not get viruses
Linux power users argue that Linux can get viruses, although, they are rare. In common usage, the idea of a virus is typically annoying adware that interferes with the computer or something that prevents the operating system from loading. Linux generally does not get these types of adware because such adware tends to bundled with Windows programs and because such programs are not installed on Linux, this adware rarely gets installed through such means. Also, Linux platforms tend to lack the attack vectors that Windows itself has. This, in turn, reduces the many ways of getting infected, which is through user error. The idea of mass unsolicited infection through the Internet, infecting thousands of home computers at once is rare. It is not the main way viruses get onto systems.

In corporate networks, viruses exploit vulnerabilities in various networking components on the Windows platform in order to spread, including remote profiles. Because these mechanisms are not present in Linux, the virus ability to spread through such means is greatly reduced. Antivirus tools exist primarily on Linux to prevent potential downloading of infectious files designed to attack Windows systems. A user working on a Linux machine may download an infected Windows file, which is copied to another Windows machine by a USB flash drive. Having an antivirus would detect and quarantine the file.

The claim that Linux does not get viruses being a myth is correct, though, the example used by Moore does not effectively demonstrate this. For example, simply running a program and having it flagged by a malware detection tool is not sufficient. Generally, heuristic analysis of the software is necessary to understand how it is infecting the system. Also, the experiment could be made more robust by repeating the experiment across systems, with different setups and with different antivirus software. Otherwise, it is difficult to see how the demonstration by Moore could generalise to other systems to conclude the myth to be busted.

Myth 2: Linux disks can become fragmented
Any filesystem and disk can become fragmented so it would be a myth to claim that Linux does not and cannot become fragmented. While it is questionable as to whether such claim has been made, the reality is that the argument is irrelevant anyway because the limitations applied to dying technologies.

In the 1990s, fragmentation was a major issue caused by discontinuous placement of a series of small junks on a physical hard disk. Over time, performance may degrade as files are broken up into chunks and spread across the disk in an arbitrary fashion. The main performance hit was that of sink delay and head alignment. Further, the FAT filesystem did not handle fragmentation well because it uses a linked list structure. These problems are non-existent on modern systems. Solid state drives have effectively replaced hard disks as the primary storage medium rendering seek delay issues non-existent. Windows and Linux filesystems can handle fragmented files and are designed to reduce fragmentation when saving data. The reality is that most operating systems do not require manual defragmentation. Even Windows 10 will perform a background defragmentation if required.

These myths are from a gone-by era. They are no longer appropriate in today's age. For example, in the 1990s, Windows 98Se was the most common Windows operating system in use. The hard disks were slow, small and the filesystem had no defragmentation optimisation. With time, fragmentation occurred. So, technicians would run defragging tools to optimise data storage. Typically, it was true that Linux coped better with fragmentation than Windows 9x operating systems, but there is no comparative difference between modern Windows and modern Linux. Both EXT4 and NTFS handle fragmentation and optimise data. Fragmentation is still in an issue when large amounts of data are freed and new data is saved.

Myth 3: Modern Linux will not boot when moved to a different computer
Mythbusting Linux shows that transplanting a hard disk with Linux installed is not possible, even though, countless videos online show proof of the contrary. There could be the very rare occasion when Linux will refuse to boot on another system, for instance, due to missing disk controller drivers, incorrectly configured kernel, or a incorrect configured BIOS. The claim that a Linux-based system can be transplanted into a computer is generally true and is not a myth. Moore's demonstration is contrary to the general principle.

Matthew Moore seems to believe that the UUID stored in the Grub configuration is a unique hash of the hardware installed in the computer done for security and efficiency purposes. He then reasons that because the hardware in the transplanted system differs, though, ever so slightly, the UUID is different, resulting in Grub being unable to find the disk. This hypothesis would seem technically incorrect. The demonstration suffers from numerous deficiencies. The first being is that the demonstration was not repeated across systems to demonstrate consistency. Moore only showed it on one computer, which may have configuration issues. Second, the hypothesis seems to be based on guesswork. Given that the UUID is stored in plaintext and easily modifiable, it is unlikely that it is a hash of the system's hardware. Also, no technical source supports this hypothesis. The UUID is auto-generated by Linux as a reference point for finding the operating system and can even be generated or set manually.

A more plausible explanation is that the particular configuration used in Moore's demonstration caused the problem. Most transplanting of Linux presumes an Ubuntu-like system is used which has mass driver support. Moore was using a more customisable Linux distribution called Arch Linux. This distribution is designed around efficiency and being lightweight omitting many drivers and other unnecessary software included with Ubuntu. It is incumbent upon the user to configure Arch Linux to use a "fallback kernel" in the event that the drivers are not found. It is likely that this configuration step was not done resulting in the error (due to missing drivers). One critic of Moore's video suggested that was likely the reason for the failed boot.