For this article, I am assuming that you are comfortable getting around Linux in general and Ubuntu in particular, and are familar with the ins and outs of disk partitioning. I will be describing the steps that I took to make this happen, but not going into too much detail for each individual step. See the bottom of this post for some useful links if you’d like to read up on the topic first. Note that it is very possible to lose your partitions when doing this sort of work so proceed carefully and do not blame me if something goes awry.
Working with files between two Linux machines or two Windows machines over the network is pretty easy — in either case, you can share files on one machine and easily access them from the other. In fact, in either case you can mount a remote share and make it appear as part of the local file system, so any application can use the files just as easily as if they were local. This is done via SFTP over SSH (or a number of other methods) on Linux, and via Windows’s native file sharing (SMB) on Windows.
In fact, you can even mount a Windows share on Linux pretty easily using Samba, and use Samba to create shares that the Windows machines can access.
Now, a cool thing about SFTP over SSH is that it typically works even if the machines aren’t on the same LAN. You can access files on a machine across the Internet, and still mount the share so that applications can access the files as if they were local. This doesn’t always work with SMB, as lots of ISPs block the ports required, and even if you can get a connection over the Internet, performance is usually poor.
Alright, this is actually a pretty simple problem, but only once you know which configuration files to look at.
I recently replaced the machine that powers this very web site with a better one. This was my first migration since switching to Ubuntu Server last winter. I essentially took the hard drive out of the old machine and plopped it in the new one, booted it up, and hoped for the best. Since Linux is not as picky as Windows about being moved to a new set of hardware, I figured it would work out fine.
Sure enough, Ubuntu booted right up on the new machine without so much as a complaint. However, network connectivity was gone. The old machine was using a PCI Ethernet card, while the new machine had an on-board controller that I hoped to use. Anyway, I took the PCI card from the old machine and put it in the new machine, and then the network connectivity was back.
Why wouldn’t Ubuntu just start using the on-board controller, though?
I have a home server that sits in my closet running Ubuntu 9.04. I regularly access it using NX. About a week ago, I arrived back from an extended trip, and noticed that a security update to the kernel had been installed and it was waiting for me to approve a reboot. After I rebooted, I logged back in, and… my GNOME theme was all messed up.