I'm installing Linux for the very first time - Hold me!

I’ve downloaded redhat 9 and I’m installing it on a spare machine right now (as a ‘desktop’ installation, to begin with).

This is my very first serious encounter with Linux - what does a dyed-in-the-wool Windows person like me need to know?

First things first, have a look at The Linux Documentation Project for tons and tons of HowTo Documents, Faqs and whatnot. Check your hardware for compatibility! However you say it’s a spare machine, so I suppose it is a bit older - good chances the lot will be supported, then.

if you don’t find info on you hardware, try googling it on the special Search page for Linux.

By all means, get the documentation for the installation procedure from the RedHat website and read it! But I’m sure you already did that. :slight_smile:

If you don’t find yourself comfortable with Red Hat (some don’t - me for example) consider trying other distributions. There’s the excellent Knoppix, that starts from the CD, detects hardware wonderfully and can install itself on the hard drive. There’s also my favourite, Slackware. Installation is text-based, but don’t be put off by that: it’s simple and efficient.

Any problem, just ask.

Progress report:

I am posting this from Mozilla on the Linux machine.

Installation was lengthy (although probably not significantly more so than a Windows install, when you consider that it has also partitioned and formatted the hard drive) - I’m surprised at how easy it was. Very relieved that I didn’t have to touch any command-line stuff or make uninformed decisions about which grsck to fdhmp and whether to klrtf the hgsw (or something like that which tripped me up when I abortively tried installing TurboLinux a year or so ago).

Interesting to note how similar (in terms of actual usage and presentation) is the Gnome Desktop to Windows (but this might be just form following function, I guess.

(Obviously) I have managed to connect the machine to the internet (via the company proxy server, across ethernet.

All seems to be going rather too smoothly at the moment. In the long run, I’ll be wanting to learn how to set up a Linux fileserver that can be accessed by Windows workstations (I think I need something called Samba?) and maybe a mail and proxy server too. Little steps first though.

Day 2:

OK, one of the fundamental conceptual hurdles here, I think (and I think I’m right) is that the GUI is not the operating system.

Am I right in thinking that if I want more than the usual desktop applications and need slightly more advanced such as mail, proxy and file servers, I’ll need to get to grips with the command-line/terminal stuff?

You are correct about the operating system not being the GUI.

However, there are probably GUI programs for any task you want to do, no matter how advanced.

Quite often these will just be an editor for the configuration files of a command-line program, but they’ll probably be easier to understand than the config files.

Having said that, it really helps, just generally, if you know what you’re doing in a shell.

That’s comforting to hear; I really need to find a graphical interface for the mail server functionality; I have a feeling that it is incorporated in Webmin, but I can’t quite work out how to install it (something about a PGP key, which is also terra incognita to me).

Is it my imagination or is it also the case that with a significant portion of Linux freeware, the end user is expected to compile the source code before installing it?

Congrats! You’re getting pretty far for a newbie.

FYI - Here’s an old computer saying: “Unix is very user friendly, it’s just particular about who its friends are.”

You are correct. If you want to do windows file sharing you need Samba. Follow the how-to’s. It’s not that difficult.

The reason for compiling the code is that there are a bizillion different versions of linux out there. If you compile it on your machine then it should run with your particular flavor/version/whatnot. Personally I think the linux community would compete better with windows if they had a simple standard binary distribution format.

Linux has really come a long way since I first started playing with it (back when it fit on floppies) but unfortunately it still requires you to learn a lot of those commands that look like they were named by a cat walking on a keyboard if you really want to get the full benefits of it.

I must also tell you about a conversation I had with my boss:

**Me: **I’ve been taking a look at Linux
**Him: **Waste of time
**Me: **I dunno about that, it’s come quite a long way and I’d say it now represents a serious alternative to Windows, if what I’m hearing is correct.
**Him: **It’ll never catch on
**Me: **Well, you say that, but it does seem to be actually gaining ground
**Him: **Yeah, they said that about Java
**Me: **Ummm… Java is actually in quite wide use, right now
**Him: **Yeah, but not as a replacement for Windows
**Me: ** :confused: Ummm… Java… was never meant to replace Windows :confused:
**Him: **Anyway, it’s like all this other stuff, like dot net; nobody is going to use it, so why bother?
**Me: **Well, for one thing, Linux is essentially free
**Him: **Even that’s not true, you can get a demo or a ‘lite’ version, but you have to pay if you want the full thing
**Me: **No, you don’t - you can download everything you need.
**Him: **No, there’s definitely a cost involved somewhere - you have to pay for some libraries or something
**Me: **Umm… nope… I downloaded and installed the full version of redhat yesterday. Anyway; the other thing is that it is incredibly robust - for something like a print or file server - I’ve heard about installations where the machines run non-stop for years, without ever needing a reboot…

The conversation then tailed off into his derision for the ‘brown bread and sandals brigade’ (some imaginary group of hippy programmers that he feels exists out there).

Have a look at the comp.security.pgp FAQ for a good, compact introduction and some useful concepts.

In all honesty, if you say ‘significant’, the answer is yes. However in 99% of the cases you just have to unpack the archive, enter the directory you get, and type:


./configure
make
make install

You might have to specify some options with additional parameters for the configure command. To get them, just type


./configure --help

Programs that don’t use this mechanism (or similarly simple ones) are usually a bit old or, arguably, by less competent people.

Big caveat: read the included README text file first. If there’s an INSTALL file, read it as well.

Oh, and leave your boss be. If he gets such a dogmatic attitude about anything, I suspect he’s not really worth discussing with anyway. Sprry, just my uninformed opinion.

If you just want to setup a simple web/file/email/etc. server and don’t want to use Linux as a desktop or muck around with config files or the CLI, I highly recommend SME Server, which is open-source server/gateway software based on the Red Hat distro. It’s easy to use (everything is configurable via web browser) and very robust.

On the other hand, if you want a more versatile machine, Redhat 9 is a good distro for beginners. Also, it’s a good idea to pick up a few books on the subject. Anything from O’Reilly is worthwhile and Linux in a Nutshell proved very useful to me in explaining basic concepts.

He is actually like that on a wide range of subjects; evolution (even though he isn’t a creationist, or even remotely religious), database design (“people are moving away from the flaky relational model”) etc. Generally he is pretty light-hearted about it all and doesn’t seem to mind me calling him a stubborn asshole, when it is appropriate.

Thanks for the suggestions; SME server looks like a very close fit for what I want to do, which at the moment basically consists of:

-Add some network file storage
-Replace a not-very-reliable windows-based mail server (running MDaemon) that is also acting as an HTTP proxy(running Jana)

I’ll probably do this on two different machines - Samba on the one and SME (or something) on the other.

I am very grateful for everyone’s encouragement and advice so far; I’m determined to make this work; partly to prove to myself to that I can, but mostly because it seems like the right thing to do in terms of system reliability and security.

The BIG hurdle is getting past the shock of not having self-installing, self-configuring, ready-compiled fully-graphical apps - Windows has made me soft in the head. But I keep telling myself that if it can be understood, I can understand it and if it can be done, I can do it.

SME is perfect for such jobs (although it is also quite scalable). I do occasional tech consulting for a couple of tiny firms, one of which is using a dedicated PC running SME as an internet gateway/router and file server and it has been very stable. It’s had an uptime of a couple of months now and any changes I’ve had to make have been done by remote admin.

Actually, many packages are pre-compiled, especially for Redhat. Look for RPM packages on download sites and use the Redhat Package Manager to install. It operates similar to the Windows install/uninstall manager.

I should mention that I’m no Linux expert. Rather, its a bit of a hobby OS for me but I know there’re plenty of Linux pros here (and a few zealots ;)) that can give more in depth answers than I can.

Good Luck!

Mangetout, I’m also a fairly new Linux ‘attemptee’. I’ve got mine playing my music into my stereo, which at least has made the effort so far worthwhile :wink:

OK, so I’m still a Linux newbie…but I’ve yet to find a single time it’s been that simple. Out of a good two or three dozen different attempts. Am I missing something really obvious? (No Linux mailing list or board has managed to help with a single one of them, btw. And if you want to discover the worst possible Linux users, try joining the Mandrake lists. Dare to suggest anything isn’t perfect, and you become a pariah.) (Oh, and there’s the stupidly obvious problem, that even MS-DOS didn’t have, which is the user is given no indication of where the actual program has installed itself. So they have to know a whole list of command tools to find it. When one line in the top of a readme file could have told them.)

Despite this, I’m still trying, I’ve got my box online (although I haven’t worked out how to get it to connect at startup, nothing I Google helps).

A word on installing software–

There are quite a few ways to install software under Linux. A different way is through the use of .rpm packages. A lot of software is available in .rpm format as well as source tarballs.

First, you download the .rpm (duh). Then, you change to the directory to which you saved the .rpm, use the su command to change to the root user, then do:


rpm -Uvf package.rpm

rpm might complain that you’re missing needed libraries, or there’s a conflict. If you’re missing a library, you can usually find it on Google.In the case of a conflict, updating the conflicting package might help.

Compiling from source uses a lot of the same principles. The configure script will tell you what you’re missing. Just Google and install.

One last thing–you have to execute make install as root, most of the time.

There’s also likely to be an RPM manager program (with GUI) somewhere that will let you install RPMs.

I’d think that most of the time this isn’t necessary, as almost everything will install a launcher script - so if you’ve just installed foo, you would just need to run “foo” from the command line.

Not that I can’t understand that being annoying, of course.

With RPMs, you can find out where they will install to by running


rpm -qlp foo.rpm

Or, if you’ve already installed it:


rpm -ql foo

That will give you a list of all the files it will install.

For source tarballs, they will by default generally install into various directories under /usr/local - “./configure --help” explains this, and how to change that.

Thanks again for the advice folks; I’m going to keep reporting progress back to this thread and hopefully use it to get my very naive newbie questions answered; part of the problem with being a newcomer to this particular scene is that even statements like

Are beyond my current level; I don’t know how to use the su command and I’m not sure where exactly I should go to ‘do’ that particular snippet of command code (I’m assuming that it would be in a terminal window?).

Not that I’m getting at you personally, Tentacle Monster; I’m not - I am truly grateful for any and every contribution - I picked this example to illustrate my own knowledge void.

I think I might do well to invest in a couple of books, including one of the ‘Dummies’ series.

su stands for Switch User.


su

by itself will prompt you for a password. Enter your root password and bam, you’re root. Type exit to get back to your normal, non-root self again.


su username

will prompt you for a password. Enter the user’s password and bam, you’re that user. If you use this command as root, you don’t even have to enter a password.

su, like any other UNIX command, is used from a terminal.

And finally, a bit of geek humor.



C:\> su
Bad command or file name

C:\> GIVE ME ROOT
Bad command or file name

C:\> prompt #

# sweeeeeet....


I don’t get it (waaaah!)

OK, the user is entering Linux command line code at an MS DOS prompt, I got that far…