Can Linux manage updates and upgrades more easily than Windows?

By Angela Gunn | Published July 16, 2009, 9:31 AM

Can Linux Do This? (300 px box)Our continuing Linux-vs.-Windows series turns now to the absolute basics -- the most universal, and occasionally most important, task you will undertake with any computer. Whatever software and OS you use, whatever you do with the machine, sooner or later you're going to install, update or upgrade something. How does the process compare on the two platforms?

(Again, Mac OS folk, you're not the topic of discussion here. If you want to comment on the .dmg experience or other aspects of tending your Apple orchards, please do so in comments, civilly.)

There are two classes of people who shudder at the prospect of maintaining their machines: Civilian users like your mama (or mine, who happily ran Windows Me for years rather than go through the XP install process), and sysadmins who have to handle matters for multiple users, whose machines may or may not be physically present for it. We'll try to address both in our comparison.

Breaking it down task by task:

Installing applications

Windows applications these days, whether downloaded or installed from optical disc, tend to include installation wizards; at the very least, there's likely to be a setup.exe program in there. Click and go (or just "go" if it's an autorun).

Linux packages come in a few different wrappings, depending on your preferred flavor. The installation process for *nix packages used to be rather tedious. Many experienced users are familiar with .tar balls, which are similar to .zip files under Windows. The .tar, .gz, and .tgz extensions all indicated that you had before you an archive, which had to be unpacked and the readme or install file sought in the collection within.

Fortunately, we're past all that now, thanks to package management -- a development that brought Linux installation management on an ease-of-use par with other operating systems by making the install process part of the operating system, not part of the individual package. The first iteration of the genre was given the unfortunate name "pms" (package management system). Perhaps in deference to the greater needs of humanity, it was followed quickly by RPP (Red Hat Software Program Packages), Red Hat's first essay in the field. Red hat later turned to RPM (RPM Package Manager, thank you Unix recursivity fiends), still a going concern for the Red Hat/Fedora/RHEL contingent. Yum (YellowDog Updater Modified) is one of the most popular package managers for that crowd.

The Ubuntu project (which is based on Debian -- the full family name is actually Debian Gnu/Linux, so you know) focused especially on making the install and upgrade process pain-free -- and in doing so actually provides a model that closed-source OS vendors would do well to follow. Like its progenitor Debian, Ubuntu uses the APT (Advanced Package Tool)-based Synaptic package-management tool to handle installations (and, as we'll see, updates and upgrades). APT, which is one of the centerpieces of the Debian/Ubuntu usability philosophy, is the interface to the wide world of DEB packages; instead of every individual package toting its own installation, the smarts for the process lie in the OS itself. Specifically, APT manages and resolves problems with dependencies -- a ticket out of the dreaded "dependency hell," in fact. APT sits atop dpkg, a Debian package manager.

To APT, a repository looks like a collection of files, plus an index. The index tells APT (and, therefore, Synaptic) about a desired program's dependencies, the additional files required to make the thing run. (Windows users, think "dynamic link library" here.) Synaptic checks the local machine to see if any of the listed dependencies need to be retrieved along with the program itself, and it tells you before installation if it will retrieve those for you.

More importantly, APT handles problems in which a package's dependencies conflict with each other, are circular to each other, or are otherwise out of control. Windows users will easily recognize that mess: It's DLL Hell by another name -- and if Windows' Add/Remove Programs function (Programs and Features in Vista) behaved nicely, it would actually do this sort of dependency tracking rather than simply enquiring of the setup.exe files it finds on the computer.

Jeremy Garcia, founder and proprietor of LinuxQuestions.org, notes that "the newer repository-based Linux distributions have gone to great lengths to mitigate the dependency hell issue... it's something I rarely hear complaints of anymore."

For our purposes, let's look at how the process works in Ubuntu. When installing a new app, the easiest method is to fire up Synaptic Package Manager and type in the name or even just a few description terms concerning what you want: "yahtzee game," for instance. Synaptic knows of several software repositories -- collections of software that are carefully maintained and checked for malware and such -- and users can add third-party repositories to check if they choose. By default, all repositories signed their packages, providing a level of quality assurance.

Some people find the Linux package management tools and repositories confusing, and some of that is due to the creative (and sometimes silly) naming of the tools. When the rubber hits the road, though, it's not that complicated. RPM, YUM, RHN, and several others all relate to management of packages in RPM format. APT, Synaptec, Ubuntu Update Manager, Canonical's commercial package manager -- all of these relate to management of packages in the Debian DEB format. And if you happen to want a package that's only available in RPM format for your Debian system (or vice versa) you can use a utility called Alien to translate between the two package formats, and keep everything on your system under the watchful eye of your chosen package manager.

There are four types of repositories in the Ubuntu universe: main, restricted, universe and multiverse. Main repositories hold officially supported software. Restricted software is for whatever reason (local laws, patent issues) not available under a completely free license, and you will want to know why before you install it. ("Free" in this case doesn't mean free-like-beer but free-like-speech; if a package may not be examined, modified, and improved by the community, it's not free.) Ubuntu has sorted matters out in this fashion, but once again it's a wide Linux world out there, and you're apt to encounter other terminology if you choose other flavors of the OS.

Software in the "universe" repository isn't official, but is maintained by the community; sometimes particularly popular and well-supported packages are promoted from universe to main. And many "multiverse" wares (e.g., closed-source drivers required to play DVDs on an open-source system) are not free-like-speech; you'll need to be in touch with the copyright holder to find out your responsibilities there. Many repositories of any stripe are signed with GPG keys to authenticate identity; APT looks for that authentication and warns users if it's not available.

To the end user, all this looks like: Open Synaptic. Type in search term. Select stuff that looks cool. Click "Apply." Done. Because the default repositories are actively curated, there's very little danger of malware; because the packages themselves must conform with Debian's install rules, the end user needs to do little to nothing to complete the process; because APT manages every files and configuration component completely, every package can be updated or removed completely without breaking the rest of the system. The applications are even sorted appropriately; my new Open Yahtzee game (I really do knock myself out for you people, don't I) appeared under Games with no prompting from me at all.

If you're determined, you can still do old-style installs in Debian, circumventing APT. If you're compiling your own software or installing some truly paleolithic code, you can end up scattering files and such all around your system, none of it tracked by APT. But you've really got to try.

Next: Updating and backing up Linux applications...

1 | 2 | Next Page →

Comments

View comments by with a score of at least

1) "With Windows, the process goes relatively well if you remember to do your BIOS upgrades before you start the process"

Is the author really this stupid or just creating paranoia for the ignorant?

Seriously, how many system need a BIOS upgrade before installing an OS, especially Windows?

Additionally, why would it matter if you found out you needed a BIOS update after the OS was installed?

This is not Windows of WinXP or earlier days where a specific ACPI or multi-core kernel is locked into the installation.

I have a feeling the author either didn't get the memo on the changes since Vista and 2007 or doesn't understand them.

PS The variations in BIOS updates are far less drastic than even 5 years ago when adhering to more rigid ACPI and other specifications were wanted for optimal OS operation.

2) "Rollback - In Windows, you're hosed; format and start again."

What uncle marrying moron came up with this bit of insight?

In the area of OS timeline rollbacks, this is one area that Windows is not only good at, but desgined to do effortlessly.

Let's start with drastic - If you take the OS install itself, there are rollback mechanisms throughout the process, even if you are doing a clean install, as the old OS is keep and moved to Windows.old and the system can still return the machine to the previous version, even after the new OS installation is complete.

Next let's look at this on a less drastic 'update' or software install.

Using the 'Restore' feature of Windows, you can rollback the OS to any state based on a timeline of updates and restore points, often going back months if needed.

On a more granular level, you can rollback any driver update or installation device by device. (Ever see the Rollback Driver Button on the Property sheet in device manager?)

Why is this is major 'goof'?

Well this has been around in a 'reliable' form since WindowsXP, and was further extended with Vista and now Win7 using inherent NTFS technologies.

NTFS uses a 'copy on write' mechanism along with volume level journaling.

It is these mechanisms that Vista and Win7 use to maintain 'shadow copies/restore points' of the OS and Applications on the volume.

(Ironically, the 'copy on write and journaling' that NTFS and Windows users are features you see people jumping up and down about when talking about ZFS in the *nix world and why ZFS will be so wonderful.

So no matter how horrible an update or install or system change or crap application install or bad driver install, you can ALWAYS roll the system back to just before this event happened.

This is one of the most simply, elegant, and powerful features that the Windows OS platform offers the IT world, in addition to standard home users.

The author's ignorance of this is not only astounding, but scary that someone would claim to have some techninal understanding and yet either intentionally discount or not have a clue about.

In the consumer IT market, the System Restore features of Windows has reduced the majority of IT related work. Instead of working on people's systems, more IT work is simply telling the user or helping them 'rollback' the OS to a point before the problem occured.

And these are ROLLBACK, not reinstalls, and completely non-destructive rollback/repair mechanisms.

So no matter what bad driver, software, update or even the user surfing for porn and clicking 'yes install malware for me because I'm stupid' can all be 'undone' within a couple of mouse clicks.

I love a good techninal article, and I like the Linux focus, but for the love of all that is SANE could you pick someone that has a clue about what they are talking about, or at least doesn't just completely ignore major features of a platform?

I mean really, of all things to state and pick on, the rollback mechanisms in Windows via NTFS's shadow/copy on write mechanisms are probably the best all around methods in the OS industry currently, and the author acts like it doesn't even exist.

Holy freaking knuckle-dragging journalism. I now know where the term 'Linux Hillbillies' comes from...

Car analogy...
Keep adding the Holy-carbs to your Pintos and AMC Racers and just ignoring Corvettes and other 'mainstream' technology because their engineers can't be as smart as your cousin Earl, right?

Score: -2

|

Nicely written. But the Apt process might sound a little scary for someone who has never seen it. In Ubuntu, adding a program can be as simple as this: (For those who don't wish to type ANYTHING, not even a portion of a program name.)
Click on Applications
Click on Add/Remove
Click on the desired program Category
Scroll down and select the program(s) you wish to install
Click on Apply changes.

I've found installing and maintaining a Linux system is generally faster and easier than a Windows system. (Especially if you don't have a bunch of driver disks!) Being able to do all the updates from one place in Linux is so much easier than having to go out to each and every programmer's site for updates in Windows. I've heard others ask Microsoft programmers why Windows can't offer the same convenience to users, but the ones I've spoken with just didn't seem to understand.

I hope Microsoft will eventually emulate the ease of Linux maintenance.

Score: 2

|

'Don't believe it's valid to make the comparison 'cause there's no one way to update/upgrade "linux". This is one critical issue with me that varies from one distribution to the other; there's no doubt that some distros provide for updates & upgrades far easier than Windows: take a look at Foresight and Arch.

Score: -1

|

I am using Linux over a decade and Unix more than two decades. If someone asks me about Updates Linux vs. Windows then you need first ask, what is Linux? Linux is just a kernel, and all another are projects how are added around the kernel to build an Operating System.

But I will take the hit now and ask you Angela Gunn about the command line tools from Archlinux and there “pacman” and Debian and there “apt”. Have you ever used them?

Have you ever compare Windows with the Graphical tools from openSUSE YaST or Debian's Synaptic?

At the end you will find out, everybody has another taste, see things different and use different tools.

You better ask: “Can a Linux distributions manage updates and upgrades more easily than Windows”? The answer is yes!

Score: -1

|

I find Ubuntu repositories safe and very convenient to use. However, I don't agree with your suggestion to try to install software from source: cited from your article "If you're compiling your own software or installing some truly paleolithic code, you can end up scattering files and such all around your system, none of it tracked by APT. But you've really got to try"

No thanks, I have just been through two failed compiled programs. The experience was so frustrating and even with help from experienced users, I could not get the programs to work. Not only they don't work, there is no uninstall procedure! The "sudo make uninstall" is just for show (tried with Ekiga 3.2.5).

I thanks the programmers for their generosity to give away their programs. But there should be a convenient way to help them to release their works in well know package formats. Installing Linux programs from the source code is way way too complicated.

Score: 1

|

Linux needs a universal standardized package format.

Score: 0

|

Ubuntu, Debian are fine. I use a derivation of Ubuntu called Crunchbang Linux on my Asus 901 EEE PC and Synaptic. The modern package manager of Linux are as good and dare I say better than what windows has offered for sometime. However unlike most computer users I don't want my computer to be a toaster. Which is what 99.99 percent of the world wants. I want to have all the advantages of the modern package system while seeing gobs, and gobs of code scroll up my screen. Hence my work computer, home computers, server all run Gentoo Linux. They have extended the Portage system found in BSD. If your not a coding wizard, at least you can pretend with all the code flying by on your screen as you compile ever single package needed to run a complete system. Great for the control freak and the patient. ;-) Most want there computers to work... just work... like a toaster. I want to know why it works.

====
DWW
In Love with emerge -uD world
faintfuzzies.ca

Score: 1

|

Having used the Ubuntu distribution of Linux since 2007, I find that Linux distributions can do anything, though not always in a straightforward, simple, or transparent way.

However, supporting third party applications is usually good. I have waited on the various Canonical/Ubuntu developers to roll in application updates but they generally don't happen quickly. In fact, they can be several releases back, as some applications change quickly. Firefox 3.5 has not been available as of a few days ago and the normal Mozilla way of updating has been disabled.

Still, Windows doesn't care for third party software at all and neither does Mac OS X. Of course, you can get a package manager and play behind the scenes but they're generally software ports from Linux and *BSD. A single point would be extremely nice.

Score: 1

|

Sorry to sound so frivolous (well not really), but you should have used more acronyms like PITA, WOW or WTF. They are very related to the Windows update process...

Score: -3

|

Talking about Ubuntu and kernel updates ... a kernel update usually requires a reboot. Well, not anymore, at least in Ubuntu. The very nice and free-for-Ubuntu KSplice application makes "rebootless kernel updates" a dream come true. Being available for Ubuntu only, it's just a start. Linux users expect KSplice to provide the package for other distributions too. Having KSplice on a CentOS server (or any other Linux server) would make any admin extremely happy.
Something that Windows (and even OSX) still does not have.
And yet they don't have to deal with the hell of video and/or sound drivers.
Upgrading to a new release makes me wonder every time if the existing ATI/NVidia drivers will work as they did before.
Easy things like setting up TV-Out or using your microphone in some trivial application (ex: Skype) are still a pain for the Linux user.
Not to mention the big confusing cloud caused by a non unified sound arhitecture.
Pulse Audio, ALSA, OSS, bla-bla... too many... much too many and none of them doing the right thing as easy as Windows or Mac does. I still dream of a Linux desktop.
Mark Shuttleworth wants Ubuntu to be on par with OSX in two years from now. Well, I guess he is extremely optimistic.
GNOME is a sitting duck, lagging way behind what a modern desktop needs to be/look like.
KDE devs just seem to be playing with the whole package for their own amusement (All I see of KDE is a huge "look ma' Iwe can do this, it doesn't matter if it's just useless eye candy".
Upgrading to the new KDE 4.x made lots of Linux users curse.
Compiz (as in Compiz, Beryl, Compiz Fusion and the whole history behind) brings some new air to the desktop. But try watching a video or play a game while having Compiz activated ...
Well, this is not part of the subject. Reverting to the subject itself, yes, Linux update/upgrade can be a painless process most of the times. Easier than Windows. Not as stupid-proof as Mac though :-)

Score: 2

|

Just when I thought my newer PC could handle the latest KDE.... Boy was I unhappy with that thought. KDE 4 was not the direction I thought they were going, but it's the direction they went. And my newer PC was like my older PCs of days gone by trying to use KDE 3 on them... Almost impossible. So again, I'm back to using either Gnome or XFCE. Good old XFCE, always there when you need it, and always light on the resources. I recently busted out my old 500 Mhz box and tossed Xubuntu on there and likity split, it ran like a champ. I can't put XP on it, I can't put Vista on it, I can't put OS X on it and I can't put KDE or Gnome on it, but XFCE was there yet again to save the day.

Anyway.. Long story short, I've given up on KDE now with the advent of version 4. :-(

BTW, check out Enlightenment DR17 if you get a chance. Eye candy without the KDE Bloat. :-)

Score: 0

|

Agreed.

Though while it would be ideal for Windows Update to manage updates to all installed programs, considering they weren't all "installed" from a Microsoft Repository, issues become onerous.

Where does it get the updates from? How does it know?

Developers for Windows don't necessarily like following the rules. If Microsoft were to say, "You must use this installer (package manager), and you must include this information", they'd be up in arms. If Microsoft told them, "You must upload the installation media and updates to this repository", the users *and* developers would go insane.

Without the repository, you run the risk of the files no longer being where the developer said they'd be during install. This would break the functionality *and* be 100% out of Microsoft's control. Not something they'd want to allow to happen. Talk about a PR nightmare....

Score: 1

|

Exactly.

Score: -2

|

It's only the installation package format that's mandated. If MS were to adopt this model, I don't think they would try and create an uber-repository of all available windows software, and it certainly doesn't resemble that on the Linux side. Canonical (the business behind Ubuntu) handles this nicely: On a default Ubuntu install, there are thirty-something repositories already defined. Some are maintained by Canonical (analogous to Microsoft maintaining a Windows OS and Office repository), and the rest are maintained by third parties, analogous to Adobe and Google maintaining their own repositories. You want more? Add more repositories for the software you want.

For a real example, Skype maintains a repository for Deb/Ubuntu versions, and the software they make available is on their own servers. It's just that they are using the DEB file format for their installer. E.g. their instructions are:
1. Add the Skype repository*: deb http://download.skype.com/linux/repos/debian/ stable non-free
2. Reload or update the package information
3. Install the skype package.
From that point on, Skype is installed on your Ubuntu system, AND updated automatically along with everything else on the system. To the end-user, it looks like one process, but in reality each package looks for updates from its own maintainer; Canonical, Adobe, etc etc. Now if I could just point Office 2003 (running under Wine) to a Microsoft repository.... :)

Score: 2

|

I shouldn't have worded the first sentence of that last paragraph quite the way I did...

Supplant "Without the repository" with "Without the Microsoft repository".

If it's out of their control, Microsoft will not actively code to support it. Losing a repository and ending up with a broken update looks bad for Microsoft, even if they had nothing to do with the repository in question.

Now, there's *nothing* stopping a 3rd party group of folks from doing something like this (other than scale, of course), but of course, without the built-in functionality...who's going to use it...or even hear about it?

Score: -1

|

Too true.
Someone could indeed launch a tool similar to Steam, for desktop aplications, or Steam could be extended to manage more apps than just games.
They already have a great way of managing licenses and a pretty nifty online-store for apps(games).

Score: 0

|

PDC 2009: What have we learned this week?

There was the freebie that no one will forget, the heebie-jeebies courtesy of Scott Guthrie, and a teensy bit clearer picture of how this cloud thingie should work.

Live report: Will Google Chrome OS change Linux?

The mysteries of just what Chrome OS is, and how much of an operating system it truly is, may be resolved today.

PDC 2009: Microsoft cares about Web browser performance

The effort to give users of the world's dominant Web browser the impression of quality, is a personal one for the man who leads that battle.

Nokia re-affirms its commitment to Symbian, sort of

Maemo won't necessarily be replacing Symbian in the Nokia N-Series, but that's definitely a place where it will be found.

E-book readers will be in short supply this holiday season

E-readers are hot this year, and a lot of compelling new products have been released, but are there enough electrophoretic displays to go around?

Sony looks to finally open a single storefront for downloads

Sony has had many different download portals for movies, music, e-books, and games, and now it's looking to make a single shop for all of it.

Tuning out the tablet: Time to give the endless speculation a rest

Wide Angle Zoom: Wishing and hoping and thinking and praying....won't put an iTablet on the market.

Five improvements for IT managers in 2010

If businesses are to improve their efficiency for next year, they need to stop and reassess the basic tenets of their job.

AOL's spinoff from Time Warner to shed 2,500 jobs

As AOL moves toward become an independent company again, it will cut nearly a third of its workforce.

Gartner: SMS-based money transfer will be bigger than mobile browsing, search

Gartner issues its predictions for the 10 things our phones will be doing in 2012.

Don't forget to upgrade to Firefox 3.6 beta 3 today

Mozilla has released the latest beta its Firefox 3.6 browser software, just over one week after beta 2.