I have a new 2TB external hard drive I will be using for additional storage and backup. I will only use it on two Ubuntu machines. Is it recommended to format the drive to ext4? Are there any advantages in doing so?
I think the core part of your question that is important is
I will only use it on two Ubuntu machines.
I faced the same dilemma as you and chose EXT4. The primary reasons I chose EXT4 are because 1) EXT4 will preserve my file permissions and 2) EXT4 better manages the storage of the data on it (e.g., it doesn't need to be constantly defragged and "coddled" like NTFS does). EXT4 is a more self-reliant file system than NTFS.
The only negative to using EXT4 is that you won't be able to access the data on it via a Windows machine. But as you said in your question, this won't be a problem because you are only using Ubuntu machines.
IMHO, the only reason to use NTFS is if you need to access the filesystem with Windows. If you don't, NTFS is really an inferior file system.
If you will be using it only on those two machines and plan to be religious about properly unmounting the drive before disconnecting the USB/powering it off, then yes, ext4 is highly recommended.
ext4 will give you improved performance over ext3, particularly when trying to write multiple files at the same time or when creating a large file.
The tradeoff is a slightly higher chance of data loss if the drive is not properly unmounted.
I'd recommend it. ext4 is the default file system for Ubuntu for good reason. As a side benefit, you can use the Disk Utility to encrypt the entire drive with a very strong password. That way if you ever lose the external drive (or if it is stolen), your data can't ever be accessed by a third party.
I use ext4 on all my drives, internal and external. For those drives that need to work with a friends Windows machine, I'll have a small FAT or NTFS partition.
In the time since this question received its answers, Windows support for reading and writing ext4 has improved substantially. See for example the Ext2Fsd project. What I do is create a small extra FAT partition containing a recent version of Ext2Fsd so that I can access the ext4 partition from other Windows computers (permissions allowing).
I should also add that another good reason for preferring ext4 to NTFS is efficiency of linux support for NTFS. In my case, while using rsnapshot to do backups to external media from Ubuntu, moving to ext4 substantially lessened the time taken to recursively unlink directories.
I would say no, simply because, for your own convenience, you may well want to use it on other machines in the future. (specifically Windows).
I was in a similar position to you a couple of years back. Later, I had a requirement to install Windows 7 as a Virtual Machine and wanted to access files on the external drive. Although it was possible by installing extfs on the Windows VM, the settings wouldn't save - so now whenever I need Windows, the first thing I have to do is hunt down the extfs installer, configure, then I can access the drive.
Of course you may be 99.99999% certain you'll never touch Windows (lucky you if that's the case :-) ) but my point is just it's difficult to fully judge future requirements, and so for the sake of losing the few benefits you'd get from Ext4 on an external drive, you're probably best going with fat32 - if just for compatibility reasons.
But, as I mentioned above, it's worth noting you can access Ext3 drives on Windows (not sure about Ext4) - it's just a hassle to get access to them set up on Windows 7. So it is an option, even given what I've said.
The answer depends on your precise requirements.
ext4 has become the default filesystem for several of the popular Linux distributions including Ubuntu, Fedora and openSUSE. ext4 features several improvements over its predecessor, amongst which include support for files upto 16 tebibytes ( 1 tebibytes equals 1,024 gibibyes , with 1gibibyte equal to 1.074 gigabytes) and a maximum volume size of upto 1 Exbibyte. It is backward compatible with ext3 and ext2, making it possible to mount ext3 and ext2 as ext4. This will slightly improve performance, because certain new features of ext4 can also be used with ext3 and ext2, such as the new block allocation algorithm.
XFS is a highly scalable, high-performance file system which was originally designed at Silicon Graphics, Inc. It was created to support extremely large filesystems. XFS supports a maximum file system size of 8 exbibytes minus one (i.e. 263-1 bytes), though this is subject to block limits imposed by the host operating system. 32-bit Linux systems limit both file and file system size to 16 tebibytes.
There is a lot of information out there on this subject, but I would Start Here and try to explore if you want to take this further.
I hope this helps.