{"id":609,"date":"2014-06-12T09:23:47","date_gmt":"2014-06-12T09:23:47","guid":{"rendered":"http:\/\/www.quicktoptens.com\/?p=609"},"modified":"2014-06-12T09:29:09","modified_gmt":"2014-06-12T09:29:09","slug":"top-10-reasons-linux-better-windows-server","status":"publish","type":"post","link":"http:\/\/wp68.hostgator.com\/~wadobs0ab4ty\/top-tens\/science\/top-10-reasons-linux-better-windows-server","title":{"rendered":"Top 10 Reasons Why Linux is Better Than Windows Server"},"content":{"rendered":"<p><strong><span style=\"color: #000000;\">The reason I put server is that you often have more of a choice between\u00a0<\/span><span style=\"color: #000000;\">Linux\/BSD and Windows Server in that environment. For home and enterprise\u00a0<\/span><span style=\"color: #000000;\">you are often more constrained due to certain applications.\u00a0<\/span><span style=\"color: #000000;\">I do use Windows (7 to be exact) and I have used Windows Server in the past.\u00a0<\/span><span style=\"color: #000000;\">The numbers for install size, system reserved space and memory usage come\u00a0<\/span><span style=\"color: #000000;\">from Windows Server 2012 (x64) Datacenter build 9200. Numbers for Linux\u00a0<\/span><span style=\"color: #000000;\">come from Arch Linux, unless stated otherwise.\u00a0<\/span><\/strong><\/p>\n<p>&nbsp;<br \/>\n<strong><span style=\"color: #000000;\">10. Updates\u00a0<\/span><\/strong><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/faildesk.net\/wp-content\/uploads\/2012\/02\/shutdown_hell.png\" alt=\"\" width=\"381\" height=\"281\" \/><\/p>\n<p><span style=\"color: #000000;\">Windows for updating is slow, in my experience. There`s also\u00a0<\/span><span style=\"color: #000000;\">no 3rd party support (or very little) when it comes to Windows Updates.<\/span><br \/>\n<span style=\"color: #000000;\">This means you, as the administrator, need to keep checking 3rd party sites\u00a0<\/span><span style=\"color: #000000;\">or get another update manager to handle these applications (this takes\u00a0<\/span><span style=\"color: #000000;\">resources). Linux distributions tend to have a repository for all programs\u00a0<\/span><span style=\"color: #000000;\">on the system, very few need to come from a 3rd party site with no update\u00a0<\/span><span style=\"color: #000000;\">mechanism. There`s also no need to reboot between updates, except for it\u00a0<\/span><span style=\"color: #000000;\">the update was the kernel.<\/span><\/p>\n<p>&nbsp;<br \/>\n<strong><span style=\"color: #000000;\">9. No GUI, generally<\/span><\/strong><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/9rit.files.wordpress.com\/2006\/11\/WindowsLiveWriter\/myfirstdipinvirtualizationvirtualmachine_BCD5\/image%7B0%7D%5B5%5D.png\" alt=\"\" width=\"381\" height=\"239\" \/><\/p>\n<p><span style=\"color: #000000;\">Windows Server, even Core, tends to come with a\u00a0<\/span><span style=\"color: #000000;\">GUI stack. Core has a cut down version, which only allows certain graphical<\/span><br \/>\n<span style=\"color: #000000;\">programs. This takes resources away from the OS and other services. Linux\u00a0<\/span><span style=\"color: #000000;\">allows for a complete headless experience &#8212; whilst still being able to get\u00a0<\/span><span style=\"color: #000000;\">updates without the need to install and set up WSUS or editing the\u00a0<\/span><span style=\"color: #000000;\">registry (and no way to really tell if the changes have worked). This means\u00a0<\/span><span style=\"color: #000000;\">that those 512GiB of RAM is all for the server and not for a graphics server.<\/span><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p><strong><span style=\"color: #000000;\">8. Better resource management\u00a0<\/span><\/strong><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/1.bp.blogspot.com\/-UFHWmAzZgHo\/UQKIsm9Q4aI\/AAAAAAAAEUY\/qqwMsfn1WVE\/s1600\/linux-dedicated-servers.png\" alt=\"\" width=\"388\" height=\"259\" \/><\/p>\n<p><span style=\"color: #000000;\">Linux has better resource management \u00a0<\/span><span style=\"color: #000000;\">which is always improving with each kernel release. This means that most \u00a0<\/span><span style=\"color: #000000;\">distributions need up to 1GiB of RAM to run without issues (laptop uses \u00a0<\/span><span style=\"color: #000000;\">519MiB with: GUI, Dropbox and Skype). 1GiB is often stated as the \u00a0<\/span><span style=\"color: #000000;\">minimum, but will quite happily be the maximum, for most solutions \u00a0<\/span><span style=\"color: #000000;\">(especially a small VPS). This means that there`s more space for other \u00a0<\/span><span style=\"color: #000000;\">programs and services. Windows Server recommends 1.5GiB and uses 600MiB\u00a0<\/span><span style=\"color: #000000;\">(with GUI) with just the standard services running after a fresh install\u00a0<\/span><span style=\"color: #000000;\">and it shows that you really do need more than that, as Windows is slow\u00a0<\/span><span style=\"color: #000000;\">if there`s little RAM available. Linux doesn`t really suffer from this.\u00a0<\/span><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p><strong><span style=\"color: #000000;\">7. Initial disk space <\/span><\/strong><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/upload.wikimedia.org\/wikipedia\/commons\/2\/29\/Hard_disk_Western_Digital_WD740_1_(dark1).jpg\" alt=\"\" width=\"365\" height=\"276\" \/><\/p>\n<p><span style=\"color: #000000;\">\u00a0Windows needs a minimum of 20GiB for first install\u00a0<\/span><span style=\"color: #000000;\">and updates as a minimum recommendation. It uses around 8-10GiB from first<\/span><br \/>\n<span style=\"color: #000000;\">install (with the added 350MiB &#8220;System Reserved&#8221; partition). Linux only needs\u00a0<\/span><span style=\"color: #000000;\">3GiB (Ubuntu recommends 6-7GiB) but will actually use less than that. A typical \u00a0<\/span><span style=\"color: #000000;\">install for me (httpd, ntpd, bind, samba) uses about 1.7-2GiB (Arch Linux). \u00a0<\/span><span style=\"color: #000000;\">This means there`s more space available for your data.<\/span><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p><strong><span style=\"color: #000000;\">6. CLI <\/span><\/strong><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.dedoimedo.com\/images\/computers\/2009\/vmware-secrets-cli-linux.jpg\" alt=\"\" width=\"414\" height=\"321\" \/><\/p>\n<p><span style=\"color: #000000;\">Windows has been build for mainly GUI applications. This means the\u00a0<\/span><span style=\"color: #000000;\">CLI has lost features to the GUI components. Unfortunately, Microsoft didn`t\u00a0<\/span><span style=\"color: #000000;\">keep these features for legacy reasons and instead created a PowerShell.\u00a0<\/span><span style=\"color: #000000;\">PowerShell tries to give back some of the power lost to the cut down of \u00a0<\/span><span style=\"color: #000000;\">cmd (instead of just making cmd better). Linux, on the other hand, still\u00a0<\/span><span style=\"color: #000000;\">has a very powerful CLI and the GUI is only there to compliment the CLI\u00a0<\/span><span style=\"color: #000000;\">tools. The GUI for Linux isn`t a way to get rid of the CLI components but\u00a0<\/span><span style=\"color: #000000;\">is there to aide in administration, if needed. Everything the GUI can do\u00a0<\/span><span style=\"color: #000000;\">the CLI can, for the most part. There are very few GUI only programs.<\/span><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p><strong><span style=\"color: #000000;\">5. Development\u00a0<\/span><\/strong><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/techgatherer.s3.amazonaws.com\/wp-content\/uploads\/2012\/07\/twitter-hosts-hacker-open-house-not-so-secret-recruitment-event-0jMVV3.jpg\" alt=\"\" width=\"429\" height=\"282\" \/><\/p>\n<p><span style=\"color: #000000;\">Linux is built for developers, mainly. This means the\u00a0<\/span><span style=\"color: #000000;\">tools developers need are there at the fingertips of any typical install.\u00a0<\/span><span style=\"color: #000000;\">This saves time trying to find and install needed support for languages\u00a0<\/span><span style=\"color: #000000;\">such as: Python, Perl and C++. Also, getting these working with a httpd<\/span><br \/>\n<span style=\"color: #000000;\">is also often a few line edits in a config file. Windows often relies on \u00a0<\/span><span style=\"color: #000000;\">the project compiling for Windows and offering a binary to download. \u00a0<\/span><span style=\"color: #000000;\">Things also often don`t work together, in a nice fashion. This is why\u00a0<\/span><span style=\"color: #000000;\">XAMPP and WAMP have come about for web servers which need Apache, PHP and\u00a0<\/span><span style=\"color: #000000;\">MySQL. The setup has been done for the administrator. Unfortunately, you \u00a0<\/span><span style=\"color: #000000;\">are then bound to that 3rd party software. If they stop updates then you\u00a0<\/span><span style=\"color: #000000;\">are unlikely to be able to update to the latest Apache, PHP, MySQL not\u00a0<\/span><span style=\"color: #000000;\">offered by the 3rd party. This could leave your system vulnerable.\u00a0<\/span><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p><strong><span style=\"color: #000000;\">4. File permissions\u00a0<\/span><\/strong><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/makingwindowseasy.com\/wp-content\/uploads\/2011\/02\/file-properties-security-tab.png\" alt=\"\" width=\"310\" height=\"423\" \/><\/p>\n<p><span style=\"color: #000000;\">Linux uses the UNIX file permissions (Read, Write,\u00a0<\/span><span style=\"color: #000000;\">Execute) to handle what a file can\/cannot do. This is easily modified on the \u00a0<\/span><span style=\"color: #000000;\">command line, along with whom the owner is (so long as you have permission).\u00a0<\/span><span style=\"color: #000000;\">This is in contrast to Windows where changing the file permissions is \u00a0<\/span><span style=\"color: #000000;\">through the file dialog. This can make it difficult to quickly sort out\u00a0<\/span><span style=\"color: #000000;\">a permissions issue on a server (a file set to be read\/written by everyone\u00a0<\/span><span style=\"color: #000000;\">for example, which leaves the file exposed for longer). Changing the owner\u00a0<\/span><span style=\"color: #000000;\">for a file or directory is also hit and miss for Windows. You can select\u00a0<\/span><span style=\"color: #000000;\">&#8220;include subdirectories&#8221; but this doesn`t always go through the subdirectories\u00a0<\/span><span style=\"color: #000000;\">or only does the first subtree of each subdirectory. This can be a pain to \u00a0<\/span><span style=\"color: #000000;\">make all subdirectories of a directory owned by a new user.\u00a0<\/span><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p><strong><span style=\"color: #000000;\">3. Freedom of code\u00a0<\/span><\/strong><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/g-codemagazine.com\/wp-content\/uploads\/2013\/09\/Fotolia_47331314_Subscription_Monthly_M.jpg\" alt=\"\" width=\"444\" height=\"354\" \/><\/p>\n<p><span style=\"color: #000000;\">As the code is open source, for Linux, this means that\u00a0<\/span><span style=\"color: #000000;\">it is easier to edit, read and audit. This means that there are more eyes\u00a0<\/span><span style=\"color: #000000;\">on the source code and allows for functionality to be added by anyone. \u00a0<\/span><span style=\"color: #000000;\">If there is a bug or a feature you need then this can be fixed or added.\u00a0<\/span><span style=\"color: #000000;\">This also means it`s less likely that there is a backdoor or a security flaw.\u00a0<\/span><span style=\"color: #000000;\">Those reading this after reading about Heartbleed might find this difficult\u00a0<\/span><span style=\"color: #000000;\">but OpenSSL has many issues, and is often pseudo-security more so than anything.\u00a0<\/span><span style=\"color: #000000;\">The project has been around a long time and there have been many features added.\u00a0<\/span><span style=\"color: #000000;\">It has a large code base and this makes it difficult to audit, with very few funds.\u00a0<\/span><span style=\"color: #000000;\">The funds are now in place, thanks to the Linux Foundation. This means another\u00a0<\/span><span style=\"color: #000000;\">Heartbleed is less likely to occur. Open Source is still more secure than closed,\u00a0<\/span><span style=\"color: #000000;\">as people can see and fix issues &#8212; or remove anything they don`t like. \u00a0<\/span><span style=\"color: #000000;\">Microsoft Windows is closed source, which means that only by disassembling the\u00a0<\/span><span style=\"color: #000000;\">compiled code can we get any idea what it is actually doing. This is a time \u00a0<\/span><span style=\"color: #000000;\">consuming process and fixes are therefore slower to come about (as issues are\u00a0<\/span><span style=\"color: #000000;\">hidden from plain view &#8212; often only found when exploited, this gives the bad guys\u00a0<\/span><span style=\"color: #000000;\">an advantage). This means the only people whom really know what Windows is doing\u00a0<\/span><span style=\"color: #000000;\">are the developers.\u00a0<\/span><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p><strong><span style=\"color: #000000;\">2. SSH vs Telnet\u00a0<\/span><\/strong><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/pyxpcomext.mozdev.org\/images\/sshconsole_screenshot.png\" alt=\"\" width=\"457\" height=\"325\" \/><\/p>\n<p><span style=\"color: #000000;\">SSH (Secure SHell) is exactly as it says &#8212; secure. It allows\u00a0<\/span><span style=\"color: #000000;\">for secure communication between client and server and also allows for GUI programs\u00a0<\/span><span style=\"color: #000000;\">to be forwarded from the server to the client without running a full graphical stack\u00a0<\/span><span style=\"color: #000000;\">on the server. All data is encrypted. Telnet, on the other hand, is insecure.\u00a0<\/span><span style=\"color: #000000;\">All passwords are sent in plain text and there is no encryption used. \u00a0<\/span><span style=\"color: #000000;\">If you also want a graphical application you need to run an RDPd which also means\u00a0<\/span><span style=\"color: #000000;\">running the full graphical stack on the server, as it only forwards the screen and not\u00a0<\/span><span style=\"color: #000000;\">the information to show the screen. Some telnet clients do support encryption but\u00a0<\/span><span style=\"color: #000000;\">this is still an exception and probably not the built-in Windows version.<\/span><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p><strong><span style=\"color: #000000;\">1. Registry or lack thereof\u00a0<\/span><\/strong><\/p>\n<p><img decoding=\"async\" src=\"http:\/\/news.techgenie.com\/files\/Windows-Registry.jpg\" alt=\"\" \/><\/p>\n<p><span style=\"color: #000000;\">Let`s be honest, the Windows Registry is a nightmare.\u00a0<\/span><span style=\"color: #000000;\">It can break and get bloated. Trying to bring down the bloat and defrag it can also\u00a0<\/span><span style=\"color: #000000;\">also cause problems and the server not to boot. Programs often add registry values on\u00a0<\/span><span style=\"color: #000000;\">install but leave these behind when they are uninstalled. Including that they were\u00a0<\/span><span style=\"color: #000000;\">installed. This is unneeded information and can build up over time if you keep \u00a0<\/span><span style=\"color: #000000;\">installing\/removing software. Luckily, Linux doesn`t have this problem as the config\u00a0<\/span><span style=\"color: #000000;\">for applications are all in text files. This means that you can remove a program\u00a0<\/span><span style=\"color: #000000;\">and delete the config file and that program is removed. You can also uninstall dependencies<\/span><br \/>\n<span style=\"color: #000000;\">for the application at the same time as uninstalling the application, instead of having to\u00a0<\/span><span style=\"color: #000000;\">start an uninstall and then waiting until it`s finished to start another. The package manager\u00a0<\/span><span style=\"color: #000000;\">will also remove the config files and anything else related to the software, if told to (example: pacman -Rns \ud83d\ude09\u00a0this means you don`t need to do it manually. Text files also take no room in RAM which the registry does. This is why a bloated registry makes Windows so slow yet an old Linux install\u00a0<\/span><span style=\"color: #000000;\">still run as if it were brand new.<\/span><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #000000;\">There are also reasons to being for Windows Server and more for being against.\u00a0<\/span><span style=\"color: #000000;\">The overall decision is yours. If you don`t need a Windows domain or aren`t\u00a0<\/span><span style=\"color: #000000;\">ingrained in the Windows Ecosystem then is there really a reason to go with\u00a0<\/span><span style=\"color: #000000;\">Windows? If the answer is yes, then that`s your choice. If the answer is no,\u00a0<\/span><span style=\"color: #000000;\">why not try Linux? It might just make your day.\u00a0<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>The reason I put server is that you often have more of a choice between\u00a0Linux\/BSD and Windows Server in that environment. For home and enterprise\u00a0you are often more constrained due to certain applications.\u00a0I do use Windows (7 to be exact) and I have used Windows Server in the past.\u00a0The numbers for install size, system reserved [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":610,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6,20],"tags":[],"class_list":{"0":"post-609","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-science","8":"category-tech"},"_links":{"self":[{"href":"http:\/\/wp68.hostgator.com\/~wadobs0ab4ty\/wp-json\/wp\/v2\/posts\/609","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/wp68.hostgator.com\/~wadobs0ab4ty\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/wp68.hostgator.com\/~wadobs0ab4ty\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/wp68.hostgator.com\/~wadobs0ab4ty\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/wp68.hostgator.com\/~wadobs0ab4ty\/wp-json\/wp\/v2\/comments?post=609"}],"version-history":[{"count":0,"href":"http:\/\/wp68.hostgator.com\/~wadobs0ab4ty\/wp-json\/wp\/v2\/posts\/609\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/wp68.hostgator.com\/~wadobs0ab4ty\/wp-json\/wp\/v2\/media\/610"}],"wp:attachment":[{"href":"http:\/\/wp68.hostgator.com\/~wadobs0ab4ty\/wp-json\/wp\/v2\/media?parent=609"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/wp68.hostgator.com\/~wadobs0ab4ty\/wp-json\/wp\/v2\/categories?post=609"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/wp68.hostgator.com\/~wadobs0ab4ty\/wp-json\/wp\/v2\/tags?post=609"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}