Introduction: Using diff and patch

The commands diff and patch form a powerful combination. They are widely used to get differences between original files and updated files in such a way that other people who only have the original files can turn them into the updated files with just a single patch file that contains only the differences. This tutorial explains the basics of how to use these great commands.

Difficulty: Medium (more…)


How To Host Your DNS With Amazon Route 53

Learn how to host your DNS with Amazon Route 53. Are you ready to switch your DNS provider to a more stable, less expensive one? I have news for you– you can switch to Amazon Route 53. Amazon Route 53 allows you to host your DNS at a very low cost of $.50 (fifty cents!) per domain per month! And your first million queries are free! So how do you get started?

If you’re not going to manage your own DNS servers using something like BIND DNS server, then a service in the cloud like Amazon Route 53 is probably one of the best ways to do it. Below are some simple steps to get started hosting your own DNS on Amazon Route 53.


Troubleshooting ./configure, make and make install Tutorial

Sometimes, the typical sequence to compile a program doesn’t work. It starts spitting out all kinds of errors and seems to do everything but compiling that annoying program already. What to do then? This tutorial describes how to get rid of many frequently occuring errors during a typical Linux compiling sequence.

Note: You should only compile software when you really need to do it. Compiling can be dangerous to your Linux installation. If you want to install some software, please look for a precompiled package (like a .rpm or a .deb) first. If you really need to compile, do it with care. (more…)


SSH and SCP: Howto, tips & tricks

This tutorial is about SSH and SCP. You will learn how to connect to a remote host and how to copy between hosts. This tutorial also documents a few important differences between the commands.

Difficulty: Basic

Before we start: in this tutorial, you will come across both SSH and ssh. The difference is this: SSH is the general protocol, and ssh is the linux SSH client command.


SSH is some kind of an abbreviation of Secure SHell. It is a protocol that allows secure connections between computers. In this tutorial, we’ll be dealing with the ssh command on Linux, the OpenSSH version. Most Linux distributions feature the OpenSSH client today, but if you want to be sure, have a look at the SSH manpage on your system. You can do this by typing:



Using Linux vs. Knowing Linux

Learning some Linux is extremely easy; there are hundreds of resources out there that will walk you through some simple install tasks. However, really “knowing” Linux is a tremendously difficult task that requires more commitment. But in reality, that’s the same for all server operating systems on the market. Linux is just harder and more flexible because it’s open, command line, and highly maintained by thousands of awesome open source programmers. Some distributions are community built, but other distributions such as Redhat, Suse, and Ubuntu are maintained at the enterprise level and even make over a billion dollars a year in revenue.

Knowing Linux will really teach you the root level of how all things work, especially the internet. You see, Linux powers 80% of the internet and was the operating system which coined the term “Open Source” many years ago. Companies such as Facebook, Google, foursquare, Oracle, Activision Blizzard (which runs World of Warcraft on Linux) and almost every other startup out there are focused on building technologies that rely on Linux to run.

I’ve received a lot of comments about only teaching command line Linux at the Linux Academy, when well, desktop versions already have a GUI. But, that’s where the power of Linux comes from, its command line. Linux servers will NEVER rely on a GUI interface to be managed, since as soon as you bring a GUI interface into the equation things begin to become unstable, insecure, and run like Windows.

I’ve said for a long time that knowing Linux will help you be a better programmer, IT professional, geek, and you’ll become more valuable to employers But, that’s only if you really learn how the underlying parts of Linux work, what makes it tick, and how to use it on the server via the command line interface.

Cloud computing has changed how we think about servers and technology. Before, if you wanted to learn to run a Linux server, you needed your own box at home. If you wanted to run a website and your own Linux server you needed a dedicated hosting provider or a colocation service. Now, you can fire up a new Linux instance over at RackSpace, Amazon or The Linux Academy. So the real question now, is why aren’t you learning Linux? Why aren’t you hosting your own web apps or web sites? Let’s face it the worst case scenario if you do, is you become smarter and more valuable to an employer and to the community as whole. So why not take on the challenge?


Changing Default Permissions When Uploading To AmazonS3 PHP API

This screencast comes at the request of @alex_weinstein. In this screencast, we will learn how to edit the default permissions that are assigned to an object when uploading to Amazon S3 using the PHP API. This tutorial is an extension of one we did a little while back called Create A jQuery Mobile Picture Uploader To Amazon S3. Amazon S3 default permissions are set to owner/owner, we will change those default permissions to allow anyone to read/download the object from AmazonS3.