How to get started?

I'm a former Windows user. Unfortunately, I'm not yet a Linux user. I just set up my Linode with Ubuntu 7.10.

I'd like to set it up as a web server with some blogging software and be able to remote desktop into my Linode to manage it. How do I get started with that?

So far I've been reading the man pages. Haven't gotten very far because even simple stuff like "info info" (mentioned at end of first man page) doesn't work. Not sure why.

typing vncserver gives me a command not found.

In fact, I don't even have any idea how to set up my users or do the basic admin tasks I need to do before installing any apps. So far I've only logged in as root. I'm assuming I need to create a new user first… used adduser, but not sure how to assign permissions, etc.

Thanks for any help.

13 Replies

@Mountain:

In fact, I don't even have any idea how to set up my users or do the basic admin tasks I need to do before installing any apps. So far I've only logged in as root. I'm assuming I need to create a new user first… used adduser, but not sure how to assign permissions, etc.

You might want to start at https://help.ubuntu.com/ . It tells you how to add software etc. Also useful is the Linux Documentation Project

http://www.tldp.org

Welcome to Linode, and to Linux!

If I were you, I wouldn't plan on using the Linode for permanent services for a while. The best way to learn is by experimentation, and a $20 Linode is a fantastic way to do that, because you can wipe a drive and start with a fresh image in a couple of minutes.

If you slap a permanent blog online now, you'll be stuck with some really poor decisions.

With luck, things will "click" pretty quickly, and then everything will get easier and easier to learn. A lot of it is that a Linux server is just a different mindset from a Windows workstation: for example, using "remote desktop" is something that's possible, but a server machine really shouldn't ever even have a desktop. SSH (and PuTTY) are your friends.

Here's my dilemma. I have to launch a new website running a blog/CMS application (such as WordPress mu) in about two weeks. I can take a week to get the webserver and applications set up. (The next week will be about customizing the website.)

I could easily do what I need to do using Windows 2003 server. I don't want to do it in Windows because then I'll be even more stuck in the Windows world. I am ready to move to Linux now!

I'm willing to invest a substantial amount of time over the next few days to get up to speed on Ubuntu server.

I'm also thinking that I might blog about my transition from Windows to Linux and document what I learn for the benefit of others who want to do the same. (My blog already has some good articles about open source.)

The problem is that I have already spent my first day+ getting nowhere. I need a more efficient learning approach.

I started here:

http://www.linode.com/support/

and I spent time here:

https://help.ubuntu.com/7.04/ and many other places, but I didn't find anything that addressed my questions - I want to dive right in and set up a web server. But I need to beginner's tutorial for doing that.

Any suggestions? Anyone here want to collaborate with me on this process with the end result being some blog articles (or other documentation that benefits the community)?

@Xan:

SSH (and PuTTY) are your friends.

For the moment I'm using TeraTerm running on my Windows desktop. Is that a good choice?

This has been bugging me since yesterday:

The info command is not recognized. So "info info" simply results in "Command not found."

Man info results in "no manual entry for info"

This is Ubuntu 7.10. Thanks.

@Mountain:

For the moment I'm using TeraTerm running on my Windows desktop. Is that a good choice?

As long as you're sure you're connecting with SSH and not Telnet. (I doubt Caker would configure Ubuntu to have Telnet enabled by default anyway.)

Just FYI (you probably know this) you can transfer files securely over SSH as well, with a program like WinSCP. Basically, there's really no reason to ever use Telnet or FTP these days.

@Xan:

@Mountain:

For the moment I'm using TeraTerm running on my Windows desktop. Is that a good choice?

As long as you're sure you're connecting with SSH and not Telnet.

Just FYI (you probably know this) you can transfer files securely over SSH as well, with a program like WinSCP.

Thank you. I'll install WinSCP too. TeraTerm makes it easy to see that I'm connecting via SSH.

This may be stuff you've already learned, but things that would be helpful for you to know are:

1. How to edit text files. Your web server will be configured through a text file, as will lots of other things on your system.

I'm not sure what comes on ubuntu server – it might be nano. I use an editor called vim, but it's not very intuitive, and if you have go to live in a couple of weeks, learning vim is probably not a good use of time.

2. How to install software using the package manager. In general, you make things work with "apt-get install {whatever}"

So to get the info help browser on your system, you'd say, "apt-get install info"

Another command, "apt-cache search {whatever}" is really helpful as well.

3. You're going to need to understand users, groups, and permissions. And you're going to need to understand how to do things as root, using sudo.

4. It's also really helpful to know some things about using the shell -- in particular, how to pipe the output of one command to another, and how to use grep and more.

So, for example, I just ran "apt-cache search info" to find the name of the info package (which turned out to be info). I got way too many hits, though, and they scrolled by on the screen.

apt-cache search info | more

Would have let me page through the output a screen at a time. Instead of that, though, I used:

apt-cache search info | grep ^info

Which displayed lines from the output that began with "info". The ^ symbol at the beginning of "^info" said anchor it to the beginning of the line.

--

To a certain extent, using linux vs. using windows to do things like web serving is a little bit like the difference between making music with a piano and making it with a cd player.

You can do a lot of stuff, and you're really better off knowing the piano, but you do have to learn it, and it takes time.

Learning linux isn't nearly as hard as learning to play the piano, but it does take time. Most of what I do on my linux box isn't very intuitive -- there's no gui helping you find the next step. But once you know how to do it, it's a lot quicker, and easier.

Linux desktops aren't like that any more -- there are icons, and everything works easily, and it's all pretty great. I mean, I think you could install an ubuntu desktop on a physical computer in your home, and be off and running more or less immediately,

But getting wordpress up involves getting MySQL running, and getting Apache running, and getting PHP running inside of Apache, and configuring things, and figuring out how the MySQL permission system works, and all of that.

None of it is conceptually difficult, or stuff that the average person can't learn. But it is a bunch of stuff that you do have to learn, and it does take time to pick it up.

@astrashe3:

So to get the info help browser on your system, you'd say, "apt-get install info"

Thank you. It seems simple, but I have spent two days reading docs and I never saw it mentioned that I needed to install the info help browser.

@astrashe3:

3. You're going to need to understand users, groups, and permissions. And you're going to need to understand how to do things as root, using sudo.

Do you have any recommended links for me about users, groups and permissions?

I'll get myself up to speed on the text editors and the shell.

@astrashe3:

But getting wordpress up involves getting MySQL running, and getting Apache running, and getting PHP running inside of Apache, and configuring things, and figuring out how the MySQL permission system works, and all of that.

None of it is conceptually difficult, or stuff that the average person can't learn. But it is a bunch of stuff that you do have to learn, and it does take time to pick it up.

BTW, I don't mind paying for a bit of help if anyone wants to help out a newbie and earn a few bucks for helping me set up a web server and helping me make decisions I can live with.

I'd like to install WordPress mu (multi user) and Ruby on Rails. I'm leaning toward lighttpd, but that's obviously not based on my experience ;)

While I am a big lighttpd fan, and run it on my linode with Wordpress and a few Django (a python web app system, similar to Rails)) apps, and at home with various local monitoring and admin tools, if you're in a hurry to get stuff up and running, I'd say stick with Apache. Why? Because pretty much all the various web tools are primarily supported under Apache, and all the main example configs will assume Apache, and most of the people who will try to help will be familiar with Apache.

Don't get me wrong: lighttpd works fine, and there are certainly examples out there, and knowledgeable people. But having to do a lot of config translation and adaption will not speed you on your way.

(Totally unrelated point: the spell checker for this forum ought to recognize "linode", don't you think? :-))

Thank you for the insights regarding lighttpd. I took your advice. Right now, my top priority is to "speed on my way."

@Mountain:

The info command is not recognized. So "info info" simply results in "Command not found."

Man info results in "no manual entry for info"

you might want to try running:

apt-get install info

Hi,

I'm also a relative newbie, moving from Windows. and slowly learning about the ins and outs of Linux. I have to say I don't regret switching. There may be a little more learning in the early stages of Linux, but you end up knowing a lot more about how your server is strung together, and if problems arise, you're more likely to understand what's causing them. The end result feels a lot less like voodoo than Windows (you know, you do a little dance, sacrifice a few animals, reboot, and pray it will work).

Sorry for coming late to the conversation. You've already had a lot of good advice. I have just one or two extra suggestions.

First, have a look at this tutorial:

http://www.howtoforge.com/perfectsetupubuntu704

Personally I'm using Centos, but there are versions for most of the main distros. I'd skip the last part about setting up ISPConfig. I tried it for a bit and hated it. This is a good way to get all the software you need for a reliable web server.

If you already have your server set up, it's still worth going through to make sure you haven't missed anything.

Second, for your blog site, I'd have a serious look at Drupal. It's not quite as good as something like Wordpress for a simple Blog site, but if you want to add different things to it later there are a vast amount of modules for almost anything you'll want to do with it.

http://www.drupal.org

Thirdly, I'd recommend you get your site working on your Linode now. However, then buy a second Linode, and rebuild everything so that you're really happy with the setup. If you want to, you could try out different distros and see if you like them better. When you're happy, it should be an easy matter to transfer your site to the better server. You could then rebuild the first one and try out more configuration changes on it. If you want to try anything new, it's good to have a server that's not got your live site on it first.

If you find you really don't need a second server, you can always cancel it, but it's always good to have a spare standing by in case anything goes wrong with the live one.

Finally, the support community at Linode really is excellent. The same level of help in the Windows world would not come cheap.

Reply

Please enter an answer
Tips:

You can mention users to notify them: @username

You can use Markdown to format your question. For more examples see the Markdown Cheatsheet.

> I’m a blockquote.

I’m a blockquote.

[I'm a link] (https://www.google.com)

I'm a link

**I am bold** I am bold

*I am italicized* I am italicized

Community Code of Conduct