This is a cool thread, I like the idea of migration stories, positive ones.... . I dug this thread up from
www.desktoplinux.com , where I posted it on Jul 01, 2002 16:54:35 , when I had been using linux for a week or so....
I've learned so much since.
------------------------------
Hello. My name is Darren, and I just recently migrated from windows to linux. I wish to relate my story, that it may help those who are planning the move themselves. All of us newbies know that the documentation assumes a certain degree of previous know-how, and we all know we don't have it. Of course we have some understanding of what we're getting ourselves in for, and that the "linux philosophy" includes trying to figure out problems yourself, but it can get really frustrating when you have to read a how-to, just to understand the concepts presented in the how-to of what you are really trying to figure out. Welcome to linux.
Anyway, frustrations aside, here's a narrative describing my migration, with all the highs and lows intact. Read it to know what you're in for. I will spill a few secrets that aren't in the documentation. Else, just read it to share a humorous account of one man's journey to save his soul.
I wanted to try Linux for both philosophical and practical reasons. I was sick of windows crashing on me three times a day. I was sick of "illegal operations". I was sick of giving Bill my money, and not really having a choice because he pays off computer manufacturers to pre-load his software. Have you noticed that it is nearly impossible to buy a computer from a retailer or online without windows on it? I don't like people telling me what I have to use, and that's the main philosophical reason for using linux instead.
My practical reasons are that I am a web developer. I create websites that use php and Mysql, and so for local development I needed to install Apache. Apache, and open-source software in general, is usually developed for linux. Sure, there are windows ports and whatnot, but you'll find that the documentation favors linux installations. In the future I want to set up my own web server, so I figured I had better learn how to use linux. Whatever your reasons for wanting to try linux, after you've made the decision, your next step is to pick a distribution.
Choosing the distribution seems to be the most confusing task for a new linux convert. Scour the linux forums and you will find many questions about which distro is the best for newbies. Generally, the suggestions are Redhat and Mandrake. I decided to opt for Redhat. I visited all the distro websites, and found that Redhat had the best documentation. I suggest you do the same, that is, visit the websites, and pick a distro whose docs are easy to access and understand, as that is half the battle. Read the docs, and if you feel comfortable, it's time to get the installation media.
I have high-speed cable access to the internet, so I decided to download the disk images. I found a nice quiet mirror, and it took about three hours per disk. If you don't have a fast internet connection you may want to buy the box set. The main benefit of doing this is that you will probably get telephone support, which may be invaluable in the months ahead. If you are strapped for cash, you may also be able to purchase "burned" copies of the disks for a considerable discount, of course you won't have the support. Another option is to join a linux users group in your area. Go to the meetings, make some friends, and maybe you can talk someone into lending, or burning you copies of the disks.
If you do decide to download as I did, you will need either two or three disk images depending on the distro. If your computer doesn't support booting from cdrom you may need to make a boot diskette using rawrite.exe, a program for DOS, that is usually contained in the dosutils folder of the FTP server that you get the disk images from. Note that almost every Intel-style computer built in the last five or so years is able to boot from a cdrom, however, you may have to enable this in your bios. One mistake that I made was burning the images as data. This will not work. The first time I tried to install I was told that the disk "did not appear to have the installation media" on it. It took me an hour of scouring documentation until I found my answer. If your burning software has a wizard, disable it. Look through the menus and find one that says "burn as image" or "burn ISO" or something to that effect. Burn your disks, and label them 1,2, and 3. If you need the boot diskette, make it. Now with these tools you are ready to install.
Here's something they don't tell you in the docs: go into your bios, and disable PnP (plug and play) devices. I neglected this, and when linux scanned my hardware it missed my ethernet card. Of course this meant I could not get online. Another afternoon of reading cryptic how-to's and I found that I needed to disable PnP devices. Of course it neglected to mention how, but since I had been snooping around in my bios settings recently I remembered an entry which allowed you to disable PnP devices. I rebooted linux, it found and configured my ethernet card, and I was good to go.
I'm getting ahead of myself though. I told you already about my first attempt to install, so after re-burning the images I attempted a second time. The Redhat install wizard fired up and I was on my way. It is very intuitive and easy to understand. After some initial questions about language and where the install media is (you did read the docs about linux drive naming conventions, didn't you?) it will ask you how you want to partition your drive. If you don't have a clue about partitioning you may want to use autopartition, which will set you up with some sensible defaults. I partitioned manually using disk druid, which was very intuitive. I should note here that I bought and installed a second hard drive just for linux, and if you choose to keep windows, this may be the easiest route to go. A note on that: even if you hate windows and never want to look at it again I recommend keeping it for now. Remember my trouble with the ethernet card? If I had wiped out windows I would not have been able to get back online to find the answers I needed.
So partitioning: The first partition I made was a 50MB boot partition, with the mount point of /boot. Next I made a swap partition of 256MB. They say your swap should be 2X your physical ram. I have since found that I don't use anywhere near 256MB of swap space (the most I have used at one time is 50MB) so if hard disk space is at a premium you can most likely get away with less. I have a brand new 40GB drive though, so I felt I had space to burn.
Next comes your root partition. I set this partition to use all available space, with the mount point of /. You need at least this partition or your install will not work. I also decided to make a partition and mount it as /home. The theory behind this is that if you need to reinstall or upgrade, and all your personal files are on the /home partition, they can be left untouched. Try doing that with windows. I also set this partition to use all available space, and the two partitions happily shared the bulk of the hard drive, with 18936MB each. Make sure you copy your partition table to paper before clicking "next", as you may need it. If you have two hard drives, make darn sure you're partitioning the right one.
Next you are asked to create the root password, and add users. Create a user for yourself at this time, as you may not be able to easily do it after your install, and you don't want to be tooling around your brand-new unfamiliar linux system as root.
Around this time it also asks if you want to use a boot loader. I went with LiLo, and at this point I want to have a little aside: Stipulate that I went through the rest of the install, made a boot diskette when prompted, and then rebooted. At this point during install attempt number two, disaster struck. LiLo did not work as it should. I am sure it was something I did wrong when configuring it, but the point is it didn't work. Neither OS would boot, all I got was a frozen black screen after running the bios. I tried rebooting again with the diskette. No dice. I was told that "boot media was corrupt". Bummer. I should mention here, that you should do yourself a favor and buy a new box of disks. I made a boot diskette on an old floppy, and even though I reformatted it, it was no good. I have since learned that boot images don't like occupying used floppies.
So I tried using my windows boot disk. It booted into DOS, and I had a prompt. I tried to cd to C:, but DOS told me it was an invalid drive name. Huh? After checking with fdisk (DOS not linux) I was told that drive C: was not a DOS drive. LiLo had written boot info to the first cylinder, and DOS could not see past it. I tried the old standby /MBR to restore the master boot record. No dice. I decided to reinstall windows from scratch. I had all my files backed up, but this was still a MAJOR inconvenience. Make sure your files are backed up, because this could happen to you. I have since learned that I could have saved my files anyway, because you are able to mount DOS partitions from linux. If you find yourself in this situation, try to get linux working, then you can recover the files from your windows partition.
So by now, I'm wondering if this is really worth all the hassle. Nothing was working for me, and I had to reinstall windows no less. Regardless, I decided to give it another shot. This time I decided to nix the boot loader, and just use a floppy to boot. Keeping in mind that it is now install attempt number three, I resume my narrative where I broke off.
Eventually you get to the point in the install wizard where you pick the packages you want to install. If you are from windows like me, the majority of these package names will be meaningless. When you choose your install type (workstation, server, notebook, or custom) it creates default package selections for you. Usually this will be fine. I have a big hard drive though, so I decided to install the works, and see what everything did. It clocked in at an hour and a half for a 3GB install. That's a lot of software.
Redhat then gives you a progress meter, and short descriptions of everything it installs. You also get some humorous ads/timewasters on the bottom of your screen, including a very funny take on the old "let's all go to the lobby" bit from the movie theaters. You also get three completely different explanations of how Redhat got it's name, and some shameless self-promotion. Go watch some TV or something if you want, allthough keep in mind it will eventually prompt you to put in the second and third CDs. After it is done you will be asked about your videocard and monitor, and then asked how you want to boot up: either KDE, Gnome, or plain text. I chose KDE.
I then made a new boot diskette, using a brand-new disk. Redhat told me install was successful, and to reboot. This was the moment of truth, If it worked-joy, if not-I would probably throw the linux disks in the trash. Thankfully it worked. KDE ran a wizard to set some preferences, then you're dumped to the desktop to do what you will. You may want to choose "windows" as a theme. I didn't, and it took a while to figure out the mouse actions (ie: single instead of double click to execute a program or open files). I ended up opening two of everything for the first bit.
You could probably spend weeks on end just customizing everything. I have not found anything that cannot be changed. You can choose from a menu of pre-done themes and styles, or you can create and save your own. There is a lot of serious eye candy here. If thats not your thing, you can make it totally plain-jane.
A lot of newbies feel apprehension about using a shell, but you can do almost anything without ever looking at a shell. There is a GUI for doing almost any task. However, I reccomend arming yourself with a good book and giving yourself a crash course. Do not do this as root. I used "Running Linux" by O'Reilley, and allthough it is a few years out of date, it has good background on anything you may need to do with your new linux system. You will find that doing certain tasks is a lot easier with the command line, so go at your own pace, but don't be afraid of it. I especially like the feature in "Konquerer" that allows you to graphically browse files, and the shell console follows you right along. Very neat.
Some tasks seem to be harder to figure out than they should be. For instance, I wanted to browse a CDrom, simple task right? It seems that drives other than the hard drives need to be manually mounted, and actually you can set them up to be auto-mounted, but that's another story. So I searched the docs, and finally found my answer. Type this at the prompt:
mount -t iso9660 /dev/cdrom /mnt/cdrom
of course the syntax may be different on your system, but basically it means "mount my cd rom which is of the iso9660 filesystem at /mnt/cdrom" you can then browse the CD navigating to of course "mnt/cdrom". You will also have to do this to access your floppy drive, and to access files on your windows drive if you have one. When you are done you type:
umount /mnt/cdrom
Make sure you navigate away from the cdrom or you will get a "disk in use" error. Get a book so you have a reference to the different filesystems, and the thousand other shell commands you will eventually be using.
I am not sure how much I like RPM packages yet. They are really easy to install, but they do not give you (or I just haven't discovered how) much flexibility of where or how you install. As I mentioned, I am a web developer, and Redhat installed my Apache, MySQL, and php software in seemingly random places. You can find missing software with the "locate" command, but be warned because you might get way more results than you anticipated, as this command returns every file and directory on your system with the same letter combination. If you know how to use regular expressions you can use them at the command line and filter your search a lot better.
I decided I wanted to install Apache, MySQl and php manually, first, because I wanted to make an exercise of it, and second, they were all around six months out of date, and being the techno junky that I am . . .
It was easy to remove the packages using the GUI Kpackage manager. A note: Keep your eyes out for dependencies. Linux and linux software uses a lot of shared libraries, so something may not work if you remove something else. Installing software from source is not so intuitive. Usually it involves three steps: ./configure, make, and make install. After a few bungled attempts I managed to get the newest versions of Apache, MySQL, and php to co-operate, and I installed them to a directory that made more sense to me. When you attempt this, always read the README or INSTALL files that come with software, as they will have the most up-to-date instructions that you will need.
I guess that's my story for now. My computer doesn't crash anymore, I have installed software from source code, I slink around the shell console using arcane commands, and I even tried recompiling the kernel to trash all the unneeded device drivers contained within, and I was successful, except that I trashed a few drivers I did need, C'est la Vie. My point is that I am a linux newbie, and I've only been at this a week. It has been very fun, and very rewarding. Linux forces you to really think about how computers work, where as windows tries to hide it from you.
I haven't figured everything out yet, for instance, I haven't been able to print anything but random nonsense, but I'm trying, and as I try I learn, and as I learn I realize what I was missing before, control over my computer, rather than the inverse. I am happy to say that I haven't booted into windows since I got my linux system online, because really, there hasn't been a point.
Thanks for your time,
Darren Kirby