So you’ve signed up for your first Linux server. Whether it’s VPS or dedicated, unless you have some prior Linux or Unix experience, you’re likely to suddenly come up against a seemingly vertical learning curve.
If you’ve only been using computers in the post-Windows ’95 world, the concept of configuring a server with a text-only interface can seem daunting and old fashioned. Thus, there are many control panel systems available to manage your server, such as cPanel and Virtualmin, which can vastly simplifying many of the tasks you’ll need to do.
For this article we are going to concentrate on a basic Linux server, so these details apply whether you have a control panel or not.
First you need to be able to connect to the server to configure it. Secure Shell (SSH) is a Linux tool that allows users to log-in to a server remotely, and use a command line interface exactly as if they were sat at a monitor and keyboard connected to a server.
This is the most common method used for Linux server management. The secure aspect is that all communications between you and the server are encrypted, so anyone snooping on the traffic shouldn’t be able to see what you are doing. All our Linux servers come with the SSH server installed and ready for you to connect.
For Windows users, the most commonly used SSH client is probably PuTTY. It’s a fairly self explanatory tool and also freeware. Another recommended option is SecureCRT, although that will cost you.
For Linux/Mac users the openSSH client is installed by most distros as standard and can be run from terminal by typing “SSH username@server’s.hostname.or.ip.address” for example “SSH email@example.com”. Your host will usually provide you with an initial username and password combination for accessing the server that you would use here. The user named root is the default superuser account in Linux and Unix.
Once connected, you will usually find yourself in your current user’s home directory, this is where a user would normally store their personal files. Linux and Unix have a number ofconventions for their directory structure and I’ll explain a some here:
/ the root of the filesystem, this is the very start of the filesystem containing all the directories.
/home the home directory, this is where your user accounts directories live with all their data, the equivalent to Windows’ ‘Documents and Settings’.
/var this directory usually contains variable files and status files.
/etc this directory usually contains configuration files and scripts for the system
/dev this directory is not really a directory as such, it’s used to show you the devices on your server. These devices, such as hard drives, cd drives, usb devices etc, show as directories and files but can’t be accessed as such without special tools.
/boot this directory contains boot related files
/bin /sbin these directories contain important binary files (programs) for using the system. /bin contains user-level programs and /sbin contains system administration programs.
/lib /lib64 these directories contain library files that are important for use by the programs above.
/root the root user’s home directory, which is separate from the normal user’s home directories.
/proc This stands for processes. This directory is similar to /dev in that it isn’t a real directory as such, but contains information about currently running processes. The files and directories in here are all references to those rather than actual files.