Response to “Why Should I Use Linux?”

While I was browsing the Internet, I ran across a website that gives an introduction to the basics of Linux to computer users who do not know what Linux is all about.

One of the web pages of the presentation gives typical misinformation about Windows that you normally would probably read elsewhere.

Link to webpage:  http://www.lugod.org/presentations/intro2linux/page10.html

Please note that I mean no disrespect to the author of the presentation in anything that I say.

The author’s text (direct quotes) are in red and my responses are in black.  Please note that I am only responding to the areas that are in fact misinformation. Everything else, I am not responding to.

Especially when it is compared to Microsoft Windows, Linux has many advantages:

  • Crashes (breaks) less often 

How do you know that Linux breaks “less often” than Windows?  I have administered both Windows and Linux computers, and have found neither to be unstable when properly setup with good hardware and drivers. No technical arguments to explain how you know that Windows is not as stable as Linux.

  •  More customizable

I agree that the “sky is the limit” when it comes to modifying Linux. However you must understand that a lot of Linux users are not programmers, and hence they will not know how to modify Linux if needed. Hence they really cannot “customize” Linux the way they want to anyway (not at least, without hiring a programmer)!

Also, Microsoft has allowed Windows users to modify a lot of settings (mainly in the registry) to make changes in the Windows operating system.

Basically without the user being a programmer, Linux (for the non-programmer) is not “more customizable” than Windows would be.  It is all in the way you look at it! 🙂

  •  Faster

How is Linux “faster” than Windows?  If I dual-booted both Windows and Linux, how would one be “faster” than the other?  It is the same hardware being used for both operating systems!  No technical arguments to explain how you know that Linux is faster than Windows.

  •  Access to many useful, and free, applications

Windows has “access to many useful, and free, applications” too!

Just Google several open source software programs such as:

  • VLC Player
  • Gimp (a Photoshop-like image editor)
  • Blender (a 3D modeling and animation software)
  • Open Office
  • Mozilla Thunderbird
  • Mozilla Firefox
  • Inkscape
  • MPlayer
  • LibreOffice
  • Audacity (a free audio editor)
  • GnuCash (financial-accounting software)
  • Notepad++ (a very powerful text editor)
  • 7-Zip (a very good file compressor)
  • VirtualBox (a virtual machine hypervisor)

———–

I hope these blog posts help people understand that not everything they hear about Windows is necessarily true. Over the past three years, I have spent literally hours reading misinformation about Windows from person after person on the Internet. It seems like there is no end to the misinformation problem!

Please remember to always check the “facts” you receive from someone online, before blindly believing what they say! Otherwise, you may end up believing something that is in fact not true, and you may even accidentally lead other people astray!


Posted in Computers, Operating Systems

Windows Misinformation in Action

In this blog post, I will be responding to an online comment made by a user that gives misinformation about Windows. The comment can be located at:  https://discuss.howtogeek.com/t/htg-explains-why-does-windows-want-to-reboot-so-often/13393/5   Please note that I mean *no* disrespect to the author of the comment in any way.

The direct quotes (quotes were copied and pasted directly from the website itself; I made no changes to the quotes) from the article are in red, and my responses are in black.

Simple really, Windows is inherently flawed by both a poor design

Windows is not “inherently flawed” by poor design. For example, in Windows (since Windows 7, I believe) if your display driver crashes for whatever reason, instead of blue screening, Windows just restarts the display driver and you are all set! This is a great design in Windows’ driver model.

Another example of good design is that Windows supports many different security features like: Access Control Lists, Mandatory Access Control, Disable Memory Execution, Address Space Layout Randomization, integrated firewall (Windows Firewall), etc.

Not to mention Windows NT was designed from the beginning to be a multi-user, networking capable operating system, for small and large businesses alike to use. This was before the consumer NT versions came out onto the market (like Windows XP).

Windows (NT versions) are far from “inherently flawed”. That is just spreading fear, uncertainty, and doubt to less technical computer users.

and a legion userbase who is mor ethan willing to accept any remotely plausible answer concerning why presumably simple things are so obtuse in the windows world.

You are pretty much calling Windows users idiots. With all due respect, this is not a technical argument. You are just throwing a “low punch” at people who have a different opinion than yourself.

You say “simple things are so obtuse in the windows world”, but you didn’t give any technical arguments!

Bottom line the reason reboots are necessary is the security model (or lack thereof) of windows. Simply up until windows 7 and 8 (supposedly anyway) windows had a boiler plate security model.

Nope! Not true at all. Windows requires a reboot after updates to make sure that all the updated files that are used by the system and user-installed programs are using the newly updated files.

Let me explain. When you load a program, all of the required / critical files associated with that program get loaded into memory (e.g., DLL files). Now when you update certain files that are being used by other programs, you have updated those files, but the computer memory still retains the older version of those files you updated. The programs will not re-cache the newer files into memory, until the programs have been restarted.

Microsoft just opted to force the user to reboot, so security, stability, and performance updates are actually applied, and not just lying dormant until the user happens to reboot the computer. Of course, any program that is not currently running, or a program that you manually restart, will then use the updated files automatically.

In addition, Linux has the same problem.  Users who update important libraries and whatnot need to restart their services on their Linux boxes to have the newly updated files take effect.  The problem?  There is no real guarantee for Linux users that just by restarting their system services that all of the system programs are using the newly updated files.  It would be a good idea for Linux users to reboot their systems just like Windows users do, to make sure that all of the running programs are making use of the important updated files.  This website recommends that Linux users reboot their systems after installing important updates.

The picture below will show you Webmin telling me that Ubuntu Linux needs a reboot after doing some updates.  Basically this disproves anyone who claims that Linux does not need a reboot after doing updates.

Linux Reboot Example

While the file system provides file level security, and the os does as well, the applications and developers of windows applications do not follow best practices and many applications require administrative access to install and use.

This has nothing to do with Windows. This is a fault of certain application developers. This is not an OS specific issue either. Any OS can have bad programmers writing software.

How this translates to rebooting is that the updates can not guarantee at any given time the context they (update software) is operating in, as the line beween administrator and users is somewhat vague. (this is why windows is so virus and malware porus)

I am not sure what you are trying to say.

Linux does have malware. It is rare to actually get malware on Linux, but the same goes for a properly setup Windows computer with a user that uses common sense. Just because someone uses Windows does not mean that they will catch malware, nor is Windows typically easy to infect.

I would say 99% of all Windows infections nowadays are caused by the user allowing the malware to infect the system (e.g., running an infected program as Administrator, opening an e-mail attachment manually from an unknown e-mail, running random downloaded exe files from the Internet), not the malware just “getting in” by itself without accidental help from the user.

Windows NT was supposed to allow updates without reboots. In fact OS/2 did that as well, and as a precursor to NT, the only remainin greason for a reboot is laziness on the part of developers and failure to motivate application developers to provide mechanisms to install theiur software without admin privileges.

As this link will show you, Windows rebooting for updates is not a “lazy developer” problem. It is a good design decision based upon logical reasoning.

———-

Almost everyone (not all, of course 🙂 ) that I have encountered, that happens to prefer an OS other than Windows (or at least comes across as if they hate Windows), seems to think that it is their “calling” to trash Windows with little to no technical arguments.

Then when you do give technical arguments to these people, in my experience they will just argue and mock you to the point that you really do not know why you even bothered to respond to their misinformation.

I had one guy literally copy and paste my whole response (that I made on another website), and replaced some of my words to make it sound like I was saying the opposite of what I really said!  No polite, honest, mature conversation.  No technical arguments.  I just got mockery.  He probably didn’t have any responses to begin with, and needed to mock me since he did not have anything else to give in response!

Linux is a good operating system for servers, but let’s not get carried away with thinking that it is the _only_ OS out there worth its salt.  There are other ones like FreeBSD, OS X, and of course Windows that have their own share of pros. I have used both Windows and Linux, and I can see the good and bad in both OSes.


Posted in Computers, Operating Systems

Response to “Linux vs Windows”

In this blog post, I will be giving a brief response to a section of an online article I found. The article claims that Linux is “more secure” than Windows, but this is of course not accurate. The article can be located at: http://techluminati.com/operating-systems/linux-vs-windows/

Please note that I mean *no* disrespect to the author of the article.  Please also note that I am just going to reply to the part of the article that talks about Windows’ security. I’m not replying to the whole article.

The direct quotes from the article are in red, and my responses are in black.

Linux on the other hand , has always been a secure operating system since the early days. It has often been the subject of debate that an open source operating system cannot be as secure as a proprietary one, but Linux has proved  that belief to be untrue. Overall, I believe that Linux offers much more security by default.

This is not true at all. Linux has had its fair share of security vulnerabilities too. Also, Linux was not “always secure from the beginning” either. Linux itself had to undergo a lot of security patches to get it where it is today.


Overall, I believe that Linux offers much more security by default.

Not really. A default install of Windows Server 2012 R2 and CentOS Linux will have similar security defaults out of the box.

As the links will show you, there have been several security problems discovered in Linux. Why people insist on saying that Linux is “more secure” than Windows is beyond me.


Access Privileges – Linux by default does not run as a root (the Windows ‘administrator’ equivalent) This ensures that any automated program or script cannot make changes to the system without explicit privileges from the user.

Windows (since Vista) does not let the user run as Administrator by default. The default Windows user has to press “Yes” on the UAC prompt to gain Administrator access. Otherwise the user is still a “limited, non-Administrator”.

Linux (specifically Ubuntu) does something similar. The default user in a Ubuntu install is a limited account too (like Windows) with privileges to access root if the user wants to, but instead of having to click a “Yes” button to gain Administrator access, the Ubuntu Linux user has to enter their password instead.

I suspect Microsoft opted for clicking a “Yes” button for more user-friendliness. However you can have Windows force users to enter their password, instead of just clicking a “Yes” button.


Although Windows has implemented a similar mechanism called ‘User Account Control or UAC’, Which does provide good protection although not as robust as Linux does.

You claim that UAC is not as “robust” as Linux (I assume you are talking about “sudo” in Linux). This isn’t true. UAC is basically doing what “sudo” on Linux does. Allowing a Windows user to elevate him/her self to Administrator, without having to be Administrator all the time.


Viruses – Viruses and other malware continue to be a constant headache for windows users. Combating viruses is not only time consuming, but also expensive when we talk about using Windows in a large scale production environment. Moreover, there is always a need to purchase expensive antivirus software with yearly subscriptions, punching additional holes in your pocket.

Linux on the other hand has significantly less number of viruses, so you are considerable less likely to get infected. In fact, I am yet to hear this from a friend or a fellow systems administrator, that they are using Linux, and that it has been infected! am sure most administrators or users  must have had a similar experience.

Linux does have malware. It is rare to actually get malware on Linux, but the same goes for a properly setup Windows computer with a user that uses common sense. Just because someone uses Windows does not mean that they will catch malware, nor is Windows typically easy to infect.

I would say 99% of all Windows infections nowadays are caused by the user allowing the malware to infect the system (e.g., running an infected program as Administrator, opening an e-mail attachment manually from an unknown e-mail, running random downloaded exe files from the Internet), not the malware just “getting in” by itself without accidental help from the user.

Also, malware for Linux can be just as dangerous as Windows malware. For example, someone writes a shell script for installing…say…a media player for Linux. Well “John Doe” (our average computer person we are using as an example) downloads and then runs the shell script, using setup instructions on the author’s website. The script informs John Doe that he needs to run the script as “root”.

John Doe then says to himself “I want to use this media player, so I’ll go ahead and login as root”. John Doe logs in as root, then executes the installer again (on Linux).  What John Doe does not realize is that the installer also contained malicious code to create a user account (for the hacker) as well as a small SSH service that allows the hacker to gain unauthorized entry into John Doe’s computer.

Now did Linux magically prevent the malware from infecting John Doe’s computer? Of course not. Neither would Windows, if that setup had been for Windows. Whether the installer had been for Windows or Linux, the malware would have needed the user to perform a risky move (running the setup as root on Linux) to infect John Doe’s computer.

Now not all malware requires the user letting it through, but I would say most of it does.

Quick Note:  Running something as “root” on Linux is the equivalent to running something as “Administrator” on Windows.

Also, FYI, it is extremely rare to catch a virus by just being connected to the Internet (that goes for Windows, Linux, or any other operating system).


Overall Security – Overall, I believe that Linux will always be much more secure than Windows operating system given the fact that its open-source. It would interest you to know that there is something called as the ‘Linus Law’ – named after the creator of the Linux kernel Linus Torvalds , which states :

“given enough eyeballs, all bugs are shallow”

That quote is really a myth. If anything, there would be so much code (like in the Linux kernel) that no one could constantly go through all of the code to make sure that no “monkey wrenches” have been thrown into the works.

Not to mention all of the Android malware that exists.  Remember Android (which is what I use on my phone) is Linux, and being Linux has not stopped malware from infecting people’s phones.

Here is a list of Android malware out there now: https://forensics.spreitzenbarth.de/android-malware/

Technically any Android malware *is* Linux malware.  I suspect a lot of Linux users have never thought of it that way before. Basically Android having malware completely disproves Linux being “inherently secure” (who started that myth anyway?).

Now I am not saying that Android malware will magically work on a CentOS web server, nor am I saying to just forget using Linux.  What I am pointing out is that Linux does indeed have malware, and saying that it doesn’t is false.

Also, my Windows server has been semi-frequently targeted for the ShellShocker vulnerabilities (even this late in 2015). This tells me that there must be Linux systems out there still vulnerable to ShellShocker, otherwise the attackers would not bother anymore. At least since my server I use runs Windows, I am not vulnerable to the ShellShocker vulnerabilities.


In simple terms it means given a large number of developers and beta testers, every problem will be identified quickly and that the solution of that problem will be obvious to someone. I completely agree with this.

I respect your opinion, but I respectfully disagree. There would be so much code (like in the Linux kernel) that no one could constantly go through all of the code all the time.

Think about it.  Someone sneaks in a little bit of malicious code (say…inside a large open source project) that deletes *all* the user’s data (does not require root privileges). Now unless someone is constantly going over all of the source code for that project, they may very well miss the malicious code. It just takes it happening one time in a large open source project to cause a large mess that would be very hard to clean up.

Also, there really is no hard evidence for “open source  ==  more secure”. Neither is there hard evidence for “closed / proprietary ==  more secure”  either.


Posted in Computers, Operating Systems

Difference between TCP and UDP

If you work with computers, you probably have heard about the TCP and UDP protocols. While they both are mechanisms to transmit data to other computers, they do not operate in the same manner. Below I’ll show you some differences between the two data protocols.

TCP (stands for “Transmission Control Protocol”)

  • It’s a connection-orientated data protocol
  • TCP is best used for applications that require high reliability
  • There is more overhead (more computer resources used) when using TCP
  • Other protocols such as: HTTP, HTTPs, FTP, and SMTP make use of the TCP protocol
  • TCP makes sure that the order in which data is received is the same order in which it was originally sent
  • TCP is typically slower than UDP
  • TCP allows for “flow control”
  • TCP checks for errors in the data transmission
  • TCP acknowledges segments
  • TCP has both error checking and options to recover in-case of an error

UDP (stands for “User Data-gram Protocol”)

  • Not a connection-oriented protocol
  • UDP is useful for applications that need fast transmission of data (regardless of data integrity)
  • Less overhead when using UDP, since UDP is a connectionless protocol
  • Other protocols such as: DNS, DHCP, and VOIP make use of the UDP protocol
  • UDP does not make sure that data received is in the same order that it was originally transmitted (less reliable, but faster)
  • UDP is typically faster than TCP
  • UDP has no “flow control”
  • UDP does not check for errors in the data transmission (less reliable, but faster)
  • UDP does not acknowledge segments
  • UDP has error checking but does not have any way to recover from errors it detects

Posted in Computers, Internet and Servers, Operating Systems