Find online courses made by experts from around the world.
Take your courses with you and learn anywhere, anytime.
Learn and practice real-world skills and achieve your goals.
This course is designed for the IT professional or computer hobbyist who wants to quickly get their first Linux server up and running. It is four hours of console screen capture with highlights, voiceover explanation, and on-screen description of commands and concepts.
The course assumes some knowledge of computer hardware and operating systems such as files, directories, and disk partitions. If you've been curious about Linux but have been frustrated by the "read the docs and learn" mentality, this course will walk you through installation, configuring a web and file server, setting up redundant disks, and a number of other administrative tasks.
The end product will be an Ubuntu Linux installation suitable for home or small office server.
Not for you? No problem.
30 day money back guarantee.
Learn on the go.
Desktop, iOS and Android.
Certificate of completion.
|Section 1: First Steps|
This video covers installing and doing the initial configuration of an Ubuntu 12.04 Server inside a virtual machine. It is a step-by-step guide to the basic, console-based installation for the server. If you don't want or have a spare computer, some virtualization software is an excellent answer. I used VMWare Workstation for the demonstrations, but I suggest using VirtualBox instead. VirtualBox is free and available for Windows, Mac OSX, and Linux.
Download the installation image for Ubuntu here:
Download VirtualBox here:
|With your install complete and the server booted for the first time, take a bit to familiarize yourself with the basic interface in Ubuntu Server. The command-line interface, or CLI, is where the real work gets accomplished. It can, however, be intimidating. Lecture 2, "Basic Commands", walks you through a few commands, how to get help when you need it, and how to string multiple commands together to accomplish tasks.
Most operating systems have users and groups. Users and groups are used to separate file and directory ownership, to control access via passwords, and to let multiple people use the system at the same time. This segment explains how users and groups are used and managed. It also explores the theory of "superusers" like the root account. Additionally, I cover how services like a web server are configured to run more securely as a special user.
|Section 2: Getting Your Server Ready|
Servers are not much good without a network connection. This lecture explores how to configure an IP address for Ubuntu and make sure it works. It also works, briefly, with determining netmasks and routing. Finally, I will install an SSH server so that you can administer the machine remotely. This is the first introduction of the Debian/Ubuntu package manager, "apt-get"; apt-get is covered thoroughly in the next lecture.
|Introduced in Lecture 5, "apt-get" is a unified software management system for Ubuntu. This lecture focuses on using apt-get and related utilities to add and remove software packages.
|The first of the Really Long Lectures, "Storage" teaches you the available options for Linux storage (hard disk) systems. I cover, in depth, hard drive failure protection via software RAID. In addition, this lecture introduces Logical Volume Management. "LVM" is a method to create dynamic, expandable storage so that you do not have to plan ahead too carefully.
In the end, you will be able to configure software RAID, both RAID1 mirroring and RAID5 or RAID6 parity arrays. Additionally, you will know how to future-proof your storage system via LVM, how to format file systems, and how Linux deals with storage devices like drives and partitions.
|Section 3: Providing Services|
The "LAMP stack" is arguably what drove Linux adoption for Internet services well into the early 2000's. "LAMP" stands for Linux, Apache, MySQL, and PHP. In software development, a "stack" is a set of technologies that are engineered to work together and power an underlying product. Apache is a free and open-source web server. MySQL is a free and open-source relational database engine. PHP is a programming language that is most often used to build dynamic web pages. When you run a PHP site, with a MySQL database backend, using the Apache webserver, on Ubuntu...you are using the LAMP stack.
This lecture walks through very basic installation and configuration of all three services. Ubuntu's default installation of all three is solid and will work with no tweaking. Of the three, MySQL is by far the most customizable and the most likely to take an entire career to understand. Default installations, however, will work wonderfully for any home or small office.
The beauty of the "stack" concept, though, is that you can swap pieces in and out with often little effort. Just because your server runs "LAMP" doesn't mean that it can't also run Python, PostgreSQL, or any number of other services. This lecture, though, will get you started down the most common path.
Another of the most common use-cases for local servers is file sharing between Windows workstations. Ubuntu makes an excellent file sharing platform. This lecture will walk you through installing a software package called "Samba" that allows Windows (and everything else) to use "Windows File Sharing" to connect to the server.
The Domain Name System (DNS) is used for host-to-IP-address resolution. DNS should be one of the core services that you can provide for a local network. The first part of this lecture will walk you through setting up a DNS server for the other hosts on your local network.
The second half installs a DHCP (Dynamic Host Configuration Protocol) server. DHCP is the protocol that assigns IP addresses to devices when they start. Normally, routers handle IP assignment. You gain some control of your network when you move DHCP onto your Linux host. One big advantage is dynamic DNS.
I explain how to set both of those services up and confirm that they are working with a Windows workstation. You will also be most of the way to knowing how to configure a public-facing DNS server.
|Section 4: Becoming a Good Sysadmin|
It happens to everybody: you typed the wrong command and now everything is gone. One step in preventing that eventual data loss is backups. Luckily, there are a few commands already built into the system that let you get backups done easily. This short lecture explores using the common "tar" command to create compressed backups.
|Based on feedback from beta testers of this course, I created a lengthy Q & A section. These are basically a series of recipes for handling specific tasks in Linux. Some of the topics covered include
I started working at a Linux based internet service provider in 1998 (before I could drive). Through the years I've worked in various positions as a Linux system administrator, a network administrator, a network engineer, a systems engineer, and a DBA (concentrating on MySQL and MongoDB).
I've been lucky enough to teach many people through my career. Some have gone on to become professional system administrators, some are software engineers or coders, and some are networking people. All have said that my teaching style is effective and approachable, so I've tried to capture that here.