Throwing the Windows out with the viruses

  • 22 replies
  • 21231 views
*

Pashley

  • *
  • 1659
    • My page at Citizendium
Throwing the Windows out with the viruses
« on: August 07, 2008, 12:28:52 PM »
In another thread, yet another person has a broken Windoze machine, this one because of a virus. There was also an earlier thread about problems with Vista. Both are painfully familiar refrains.

     Original post is from 2008. Updates are indented like this.

Quite a few people in China people cannot do Microsoft updates because their "pirate" copy does not pass MS-update's validation checks (though some do, I think). Windows can be tolerably secure with the patches, but wandering about the net with an unpatched Windows box is distinctly risky, approximately as sensible as frequenting whorehouses without taking condoms. If you must run Windows, you absolutely must get access to the updates! If that means paying Microsoft, rough luck.

     April 2014: Microsoft has stopped providing patches for XP. If you have that, you need to replace it!

To me, the obvious solution is to get rid of Windows. One way is just get a Mac; I'd say almost anyone who is buying a new computer anyway should consider that.

But running a Microsoft-free PC is also quite possible. There are many choices of free operating systems for PCs, all in some ways superior to Microsoft products, and all free or cheap. Combine one of these with cheap PC hardware and you have the best bang-for-the-buck solution in sight.

For anyone who wants to cut to the chase, what I use and would recommend for non-technical home or laptop users is Xubuntu. http://www.xubuntu.org/

This post describes most of the available choices in possibly excruciating detail. Every opinion I express below is debatable; some would start a "religious war" in hacker circles.

You can form your own opinions, too. Every system described below has a web site; look at a few and you may see one or more where you say "I like their style." Most provide a "live CD" version of their software; you can download it, burn a CD and boot from the CD to try it without changing anything on your hard drive. If you don't like it, or if some hardware in your PC does not work with it, give away or throw away the CD. Or go back to the web site looking for help with your system/hardware issue; maybe it is easily fixed.

     In most cases, using a USB stick instead of the CD is also possible.

The free Unix systems are all complete solutions for common computing needs. With Windows, you may be able to get a cheap "Home" version, or may find it included with your laptop. However, that won't work right on a Windows-based office network; you need to "upgrade" to the "Professional" version to be able to use network authentication. The machine that provides the authentication service has to have the "Server" version. In contrast, every system described below (except perhaps Mac; I do not know how Apple packages things) comes with all the above built in. If you need some "server" features, including  a database manager, you can just turn them on.

No version of Windows comes with a programming language, or database management software, or a suite of office tools. Those are separate products at a few $100 each. There are package deals that include Windows and one or more other products, cheaper than buying everything separately but still a significant chunk of change.

For any Unix, if you need a programming language, there are several built in and many others are easily added. Many distributions include office tools and a database, If not, adding them is straightforward, often just a few menu clicks.

Unix has been around in various forms since the early 70s, and Microsoft has copied a lot from it. The original Unix was written at Bell Labs, the research facility that invented the transistor and the laser. It was designed for research work, in a computer science research group; there was plenty of innovation and some of the best documentation of the era, but no hand-holding for amateurs. The old joke "Unix is user-friendly; it is just really choosy about who its friends are" has more than a grain of truth.

On the other hand, if you have to muck about at low levels of the system, Windows is arguably even worse; ever tried to edit the registry?

Unix is a wonderful system for software developers, a good platform to build other things on top of. Quite a few have built various user-friendly environments. The most obvious example is the Mac, which has FreeBSD (a Unix) under the hood. Every system discussed below has some sort of nice window-based front end as well; most offer a choice of several different ones.

There are three big groups of Open Source Unices (plural of "Unix"). Linux is best-known, but various *BSD distributions and Open Solaris are also worth considering. To describe the differences, I need to wax historical for a while. Bear with me, or skip paragraphs as seems appropriate.

Unix started off at Bell Labs, early 70s. By the 7th Edition, 1979, Unix was quite widespread throughout AT&T and in universities (who got it cheap) and was in use elsewhere. All modern Unices have more-or-less everything 7th Edition did, but things diverge from there.

ARPA, the Advanced Research Projects Agency of the US Defense Department built something called the ARPAnet, starting in 1969. Prime contractor was BBN, a consulting company that started off as acoustical physics profs designing opera houses but -- via wartime sonar work and postwar research on the sound barrier -- eventually ended up with a stable of top computer people and lots of military contracts.

Eventually, ARPAnet evolved into the Internet. A key change was replacing BBN's original low-level protocols -- designed to link a few dozen computer centers -- with a much more flexible system called TCP/IP. That's still what we use today. The first operating system with TCP/IP support, around 1980, was Berkeley Unix. It was by no means all written at Berkeley; ARPA paid for it, and BBN and several other universities were involved, but it was a Berkeley Software Distribution, BSD 4.2.

BSD quickly became the standard for the many vendors springing up with engineering workstations; networking was essential for them. These were powerful machines for the day: Sun has never had a monitor resolution lower than 1152*864, or a machine without ethernet, since it started around 1980; they had 64-bit CPUs by the early 90s. Silicon Graphics was founded by the guy whose thesis invented the graphics co-processor. PCs have generally been roughly 10 years behind the workstation market, though the gap seems to be shrinking. Arguably, if you're going to use hardware based on innovations pioneered in those systems, you might as well use the software too. That would be a BSD Unix.

Today, there are several free BSD descendants available. There has been some fragmentation; when developers cannot agree on where the system should go next, they sometimes just form two teams which each take it in a different direction. One split was over whether to try and be very portable and run on lots of platforms (NetBSD) or concentrate more on making it work really well on PCs (FreeBSD). The current MacOS is based on FreeBSD, and I'd say FreeBSD is the obvious choice among BSDs for PCs. Consider NetBSD if you want to use anything but a PC.

OpenBSD, a NetBSD spinoff, really emphasizes security and correctness; they won't include code they have not audited. When Whizbang 8.0 comes out and everyone switches over for the wonderful new features, OpenBSD does not include it until the audit is done and it seems mostly bug-free. They might continue with Whizbang 7.3 or they might just not support Whizbang at all, leaving it to users to download and build it if they need it. If a manufacturer of a graphics card, ethernet card or whatever does not release source code of drivers, or at least detailed device specs so a driver can be written, then OpenBSD does not support the device. Not something I'd want for my desktop, but definitely the first choice for an office firewall.

Dragonfly BSD is a new spinoff of FreeBSD, redesigning much of the low-level OS to better support multiple processors and load sharing over the network. For now, anyone except developers interested in those issues should steer well clear, but it may be more broadly interesting later. Intel's next generation, due late this year, go up to 8 cores on a chip, each hyperthreaded so the OS thinks it has 16 processors. By the time those become cheap and common, or the next generation turns up with even more cores, Dragonfly may be just the thing to run on them.

For more on any of those, see freebsd.org, netbsd.org etc.

Back to 1980 or so: AT&T decided Unix could be a product, and it should be spelled UNIX. They came up with System III and then System V. I remember a Unix conference mid-80s where AT&T marketers all had buttons on their suits "System V: Consider it Standard". They did pretty well with that line, too; quite a few big players had sysV-based products. However, others kept with BSD-based systems. Somewhere I think I still have a "4.2 > V" poster, from the same conference; you do need networking and sysV did not have TCP/IP built in.

There were efforts to sort the conflicts out. The IEEE came up with a standard called Posix, listing everything any Unix should have. Also, Sun and AT&T co-operated to produce System V Release 4, a sort of "best of both worlds" hybrid.

Sun's SysVr4 product was called Solaris, replacing the pure BSD SunOS. Today, Open Solaris is free for download http://www.sun.com/software/solaris/index.jsp Definitely the choice if your feel better having a big company behind a product, though on the other hand HP and IBM are heavily involved in Linux, and Sun is a player there too. Worth considering in any case.

      Sun did brilliantly for a while, from startup around 1980 to >$10 billion/year around 2000.
      By 2010, though, they were losing much of their market to ever-improving PCs & were in financial trouble.
      They were bought by database company Oracle and continue as a division of that.

Then there's Linux, also out of academia but by a somewhat different route. In the early 80s most universities had Unix, including the source code, but the Unix license does not let you put Unix source on your slides or in your textbook. If you are teaching an operating systems course, you need code there. So a Dutch prof named Andrew Tanenbaum wrote Minix, basically a 7th Edition clone, that ran on PCs. His textbook, using Minix for all the examples, was very widely used. Minix was not free software, but you could buy the disks from his publisher.

The original PC and AT had 16-bit CPUs. Minix ran on those, or in 16-bit mode on Intel's 80386, and on the 32-bit Mac, but not in 32-bit mode on the 386. Tanenbaum showed little interest in fixing that; it would run just fine on a 386 in 16-bit mode, all you need in a teaching tool. Why make major changes to the code, especially if they mean you have to revise the book?

Nobody could distribute a 386 Minix; the publisher's copyright prevented that. What you could distribute were patch files that let anyone with a copy of the 16-bit version (presumably duly licensed) convert it to the 386 bit version. This was complicated and inconvenient in a bunch of ways.

Then a student doing a course based on Tanenbaum's book wrote a standalone 386 kernel that used the Minix file system and utilities. He announced it on the comp.os.minix newsgroup in 1991. Some of the reactions were along the lines of "Go away, kid. We're trying to do serious work here, getting these blasted patches to install", but other people reacted much better, in fact pitched in and started improving it. The kid was named Linus, so he called his kernel Linux.

Meanwhile, the Free Software Foundation had been developing a system called GNU (GNU's Not Unix), designed to be Unix-like and Posix-compliant but entirely free. Free in the sense of "free speech" not "free beer"; the issue is the user's freedom to modify, not cost. Their kernel project was bogged down in complexity, nowhere near ready, but they had a nice collection of other tools. These were designed for portability to more-or-less any 32-bit system, but most would not work on 16-bit systems.

Linux was a free 32-bit system. Add the GNU stuff (much of which the BSDs also use), some other things like the X Window system developed at MIT, and some borrowed BSD stuff. Presto; you've got a complete system.

Various organisations build Linux distributions, neatly packaged systems with all the above and maybe some of their own add-ons. Each has a somewhat different method, combination of features and target market. To some extent, they all co-operate and quite a few use code developed by other distros.

Debian, Gentoo and Slackware are distros that seem to be more BSD-like, aiming at something small, clean and solid that you can add to as needed rather than a big complex system with everything you might need. Most experts seem to prefer a BSD, Solaris or one of these.

Other distros aim more at plug-and-play completeness. Red Hat, whose current system is called Fedora, appear to be biggest in the US. The German company, SuSe (recently bought by American Novell) have a big piece of the market in Europe. Mandriva are an almagamation of European Mandrake and Conectiva, the main vendor in Latin America. The Japanese distro Turbolinux sells all over Asia. There's even at least one Chinese distro, Red Flag. http://www.redflag-linux.com/eindex.html

Then there's Ubuntu http://www.ubuntu.com/, a relatively new distribution based on Debian. It uses the Debian package management system so adding more-or-less anything you need is straightforward. There are three variants using different window managers, so here comes a digression to explain what a Window manager in X is.

X is a distributed Window system; the X server runs on your workstation, controls the keyboard and mouse, and provides display services to client programs. Each window can have a different client and the clients can be anywhere. You can be at your desktop but running your word processor on some other machine, compiling code on another and running a simulation on a third; all can display on your desktop machine.   

The X documentation says "We provide mechanism, not policy." None of the choices about how to display each window -- borders, buttons, etc. -- are hardwired into the X server. Most systems use a Window manager, a program that accepts requests from client programs, adds all the extra details and passes them on to the X server. There are several dozen different Window managers available, including ones that emulate Windows or the Mac quite well. A catalog is at http://xwinman.org/

Beyond that, there are a dozen or so more ambitious systems available, more-or-less complete desktop environments for X each with all the accessories -- a calendar program, an email handler, MP3 player and so on -- plus a programmer's interface so people can build more.

The GNU project have a desktop environment called Gnome, large and complex but popular; the normal version of Unbuntu uses that. Kubuntu uses KDE, somewhat smaller but still a rich and complex system, also quite popular.

Neither of those runs well on slower or smaller machines. For those, Ubuntu provide Xubuntu which uses XFCE, a much smaller and lighter window manager built with stripped-down Gnome code and using the Gnome programming interfaces so most or all Gnome add-ons can be used with it.

I have quite a powerful PC, but Xubuntu is a good compromise for me. On good hardware it is fast enough. though not nearly as quick as just picking a lightweight Window manager and dispensing with all the overhead of a desktop environment. That's what most hackers would do, but I want the convenience.

    2014: There is now also Lubuntu, lightweight Ubuntu, using a different Window manager. Looks good but I have not tried it.
« Last Edit: June 30, 2014, 06:34:57 AM by Pashley »
Who put a stop payment on my reality check?

Re: Throwing the Windows out with the viruses
« Reply #1 on: August 07, 2008, 02:08:00 PM »
Great post Pashley!

I've just bought a new Dell AMD 64 Athlon X2 lappie and got it loaded with Ubuntu "Hardy Heron". It's fast, stable, virus-free!

Everyone (especially in China) should at least have a look at Ubuntu (which includes Kubuntu, Xubuntu, Edubuntu and others)  - it's designed to work "out of the box" and is surprisingly "Window's like". And it's FREE.

It's also great with multiple languages. At the log-in screen you choose the language. This means you can have a Chinese option - so partners, work-mates or Chinese learners can easily use it in Chinese - and then switch back to English by logging out the user and logging back in and choosing a different language. Dead easy!

Any program you want is easily downloaded - for FREE - and is registered and updated. There's lots of information and support available on the Ubuntu forum http://ubuntuforums.org/

In case you really need Windoze programs you can usually run individual applications using a program called Wine. You can also install a virtual machine inside Ubuntu that runs the complete Windoze OS. I've got XP inside Ubuntu just for running Dreamweaver and 天天 music player. They are the only two programs I use that I don't have a good, FREE Linux alternative program for.

Just for fun and your own education, visit the Ubuntu site http://www.ubuntu.com/ and check it out - download and try the "Live CD" - you'll be surprised!

P.S. -  A handy little trick - I've got Ubuntu set up on a portable, bootable hard drive, so I can plug it into any computer - say, the virus ridden Chinese-language XP machine in the school office, reboot and be using my own English-language Ubuntu system off their computer, virus free. When I'm finished I unplug the drive, reboot the computer and they are back in their own special hell without any signs I was there.

Another P.S. - I love plugging in other peoples usb drives and portable media and seeing the collections of virii they have collected, that are just sitting there, unable to do anything on my Ubuntu system.
You have to care for it to matter.
http://www.haerbinger.com - All About Harbin

*

Spaghetti

  • *
  • 823
  • Goo Goo Muck
Re: Throwing the Windows out with the viruses
« Reply #2 on: August 08, 2008, 05:20:28 PM »
Has anyone tried Linspire? I am curious if it's worth the time investment. I don't want to add learning code just to run an o. s. on my list of things I need to do in this lifetime. afafafafaf
« Last Edit: August 08, 2008, 05:30:01 PM by Spaghetti »
"Most young people were getting jobs in big companies, becoming company men. I wanted to be an individual."
Haruki Murakami

Re: Throwing the Windows out with the viruses
« Reply #3 on: August 09, 2008, 03:50:01 AM »
Linspire looks like Ubuntu with a price tag. Why buy what you can get for free?

I think that there's not really any need to learn "code" to use Ubunutu. Everything is pretty much GUI driven. Try the live CD, see how it works on your system. If it works, great! If it all looks too difficult, give it a miss.
You have to care for it to matter.
http://www.haerbinger.com - All About Harbin

*

Spaghetti

  • *
  • 823
  • Goo Goo Muck
Re: Throwing the Windows out with the viruses
« Reply #4 on: August 09, 2008, 06:46:44 AM »
Linspire used to be free, but I guess that was a while ago. A concern I have about ubunutu is trying to find all of the drivers for hardware. I am considering it.
« Last Edit: August 09, 2008, 02:12:13 PM by Spaghetti »
"Most young people were getting jobs in big companies, becoming company men. I wanted to be an individual."
Haruki Murakami

*

Stil

  • *
  • 4785
    • ChangshaNotes
Re: Throwing the Windows out with the viruses
« Reply #5 on: August 09, 2008, 07:02:23 AM »
Finding the drivers is really not much of an issue anymore. Ubuntu is way ahead of what it was a couple of years ago.

there is also a huge online following that make it simple to find answers to most questions.

Using the LiveCD does not effect your system at all. So it is certainly worth trying. It will cost you 1 blank CD.

*

Spaghetti

  • *
  • 823
  • Goo Goo Muck
Re: Throwing the Windows out with the viruses
« Reply #6 on: August 09, 2008, 02:06:43 PM »
Next payday I will look into that. I actually have a legal, English version of Windows XP with me, but I have to rely on a crack to use it since it's already registered with my computer back in America. On general principal I refuse to pony up for another “license.” My hard earned cash paid for it once and I'm using it on my own computers. I'm not distributing it. However, Microscam doesn't care. I've been in China long enough that I will invest into putting together a home theater p. c. and if I can put it together without having to use Windows as the base operating system then I would be incredibly happy. Non Dave, you mentioned that you have a projection set up. Would you care to share the specs on that? How much would a reliable, lower-end video projection set up set me back in RMB?
"Most young people were getting jobs in big companies, becoming company men. I wanted to be an individual."
Haruki Murakami

Re: Throwing the Windows out with the viruses
« Reply #7 on: August 09, 2008, 02:47:40 PM »
Hey Spag, check out http://www.htpcnews.com/ for lots of good info on HTPC's (Home Entertainment PC's).

I'm also in the process of putting one together. Ubuntu has a (Free) distribution called Mythbuntu that provides everything needed for that - as well as lots of other options.

My projector is a home entertainment model (which means it has a tv tuner) and has a lamp that is user replaceable and rated for about 10,000 hours, so it can handle lots of every day use. 2000 lumens and SVGA. It's ceiling mounted and has a 100" remote control screen to project onto.

Info on the projector, a Dreamland 852, at http://dataprojectorsonline.com/

A package deal with projector, spare lamp, ceiling mount and 100"screen starts at under 6000RMB.

PM me for info on how to get a better price. Cost would depend on which model & which options you want with it and where it has to be shipped to.


You have to care for it to matter.
http://www.haerbinger.com - All About Harbin

*

Spaghetti

  • *
  • 823
  • Goo Goo Muck
Re: Throwing the Windows out with the viruses
« Reply #8 on: August 09, 2008, 04:34:34 PM »
Thank you Non Dave. I'll take a look into it. I don't think a ceiling mount and a mounted screen are possible for me at this time. I don't own the apartment, and I'm looking for something I might be able to lug around on a whim. I will look into the matter and the ubuntu operating system as well.
"Most young people were getting jobs in big companies, becoming company men. I wanted to be an individual."
Haruki Murakami

*

Pashley

  • *
  • 1659
    • My page at Citizendium
Re: Throwing the Windows out with the viruses
« Reply #9 on: October 24, 2008, 11:31:18 PM »
Everyone (especially in China) should at least have a look at Ubuntu (which includes Kubuntu, Xubuntu, Edubuntu and others)  - it's designed to work "out of the box" and is surprisingly "Window's like". And it's FREE.

Edubuntu in particular might be of interest to teachers. It is designed for classroom use, with a server and a bunch of diskless PCs for the students.

Most PCs can be set to boot from the network rather than from disk. The Edubuntu server includes everything you need for the other end of that, the machine they boot from.

Even quite an old PC can handle X; all it has to do is manage mouse, keyboard & display. All the applications run elsewhere. An 800 MHz machine is certainly enough; I know people using 200 fairly happily.

The server does not have to do any display so it can run more applications than one would think without bogging down. With big classes or heavy applications, though, you'll need a fairly powerful server and in particular lots of RAM. Before using Edubuntu for any serious purpose, I'd suggest maxing out server RAM. You cannot tell how much you will need, so just put in as much as the machine can take; RAM's cheap.
Who put a stop payment on my reality check?

*

Foscolo

  • *
  • 525
  • Boom boom!
    • ELTpublishing
Re: Throwing the Windows out with the viruses
« Reply #10 on: October 25, 2008, 01:57:41 AM »
I investigated most of the options, and then downloaded the Ubuntu installation file a few months ago. Since then I've been trying to summon up the cojones to make the switch, due to the small risk of having problems getting everything up and running properly.

A now here's a  risk free, hassle-free alternative: dave's idea of the portable bootable hard-drive loaded with Ubuntu is a stroke of genius. Many thanks for that.

A small point - that Ubuntu file is big, as you'd expect for an operating system. Around 700MB (a full CD's worth), if I remember correctly. You need a reasonably good broadband connection for that to be a realistic download.
« Last Edit: October 25, 2008, 02:09:25 AM by Foscolo »
Free stuff for teaching English with jokes: ESLjokes.net.

*

Pashley

  • *
  • 1659
    • My page at Citizendium
Re: Throwing the Windows out with the viruses
« Reply #11 on: October 25, 2008, 04:20:10 AM »
I investigated most of the options, and then downloaded the Ubuntu installation file a few months ago. Since then I've been trying to summon up the cojones to make the switch, due to the small risk of having problems getting everything up and running properly.

A now here's a  risk free, hassle-free alternative: dave's idea of the portable bootable hard-drive loaded with Ubuntu is a stroke of genius. Many thanks for that.

The Ubuntu forums have much info on doing that, but I found this site better: http://www.pendrivelinux.com/ I installed Xubuntu, both 7.something and 8.04, using their instructions and it went without a hitch. Space used was about 1.5 gigs.

Not all PCs will boot from USB, but most recent ones will.

Ubuntu provide a "live CD" version, too. Just put that in, boot from it and you have a running Linux system. Not particularly useful since you cannot save files, but really handy for discovering whether you like Ubuntu, testing whether your sound card works with it, etc.

For some versions, the "live CD" was a different CD than the install CD. On others, you could just use the install CD for that (just don't click "install" on someone else's system!). Not sure which for current version.
Who put a stop payment on my reality check?

*

Pashley

  • *
  • 1659
    • My page at Citizendium
Re: Throwing the Windows out with the viruses
« Reply #12 on: August 27, 2009, 11:17:50 PM »
The Free Software Foundation now have a site about what's wrong with Windows 7.

http://windows7sins.org/
Who put a stop payment on my reality check?

*

JShep

  • *
  • 144
    • The States - An Informative and Satirical Guide to the United States of America
Re: Throwing the Windows out with the viruses
« Reply #13 on: September 24, 2009, 08:23:39 AM »
Beautiful post and great lesson in OS development.

The GNU scene has been around for awhile and the "hackers" that make these things possible will be happy to entertain anyone interested in using the software they've designed.

Open source is about truth in software development. I can only pray that these designs remain open.

*

Pashley

  • *
  • 1659
    • My page at Citizendium
Re: Throwing the Windows out with the viruses
« Reply #14 on: October 21, 2009, 04:15:46 PM »
To me, the obvious solution is to get rid of Windows. One way is just get a Mac; I'd say almost anyone who is buying a new computer anyway should consider that.

But running a Microsoft-free PC is also quite possible. ...

An article on IBM's "Microsoft-free PC" program http://blog.internetnews.com/skerner/2009/10/ibm-and-ubuntu-roll-linux-for.html
Who put a stop payment on my reality check?