73

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?

geoffrey
  • 2,359

6 Answers6

54

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.

Greg
  • 1,194
  • 2
    I have successully worked with linux partition under windows before, maybe ext3 if I am not wrong, you just have to install a 3rd party driver like ex2ifs etc. And I think there are programs/drivers for supporting ext4 too. It is common for me to store windows temp, users, programs etc in a second linux partition under the same physical internal drive. I will never ever use ntfs again! Only the fact that linux partitions are so silent when PC is on... tells a lot! – Melsi Mar 15 '13 at 11:24
21

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.

ish
  • 139,926
  • 16
    By default the data are comitted to disk every 5 seconds on Ext4, so the problem may arise only if you remove drive immediately after writing. – roslav Jan 03 '15 at 10:50
  • 2
    I would also add that you can use tune2fs to reduce the reserved space to zero and allow to use the full drive capacity as it's not a system drive so it's not so important to have some reserved space – barrymac Sep 16 '15 at 18:23
  • 3
    What fs would you recommend if data loss is higher priority than performance? I was under the impression that the journaling in ext4 was more resilient than ext3 and definitely better than ext2 or various FAT formats which don't have journaling. – pavon Aug 03 '19 at 17:32
8

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.

Tom Brossman
  • 13,111
6

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.

D.J.Duff
  • 370
4

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.

chrismou
  • 105
  • What is the file size limit on this? – Tim Aug 17 '14 at 21:38
  • 3
    Terrible answer. Clearly says only used on Ubuntu. And FAT??? Max file size 4GB, probably huge 32k blocks/clusters, no journal... If you like corrupted filesystems and losing every file & folder name at the drop of a hat, then sure, use FAT – Xen2050 May 12 '16 at 18:22
  • As I pointed out, my answer questions more whether you can guarantee you'll only ever use it on a *nix machine. I was in this guys exact position 6 years ago - today, I share my drives amongst several OSs, including Windows. And as I side note - if you're corrupting fat32 filesystems regularly and losing files, you should probably examine your usage because that's not normal. – chrismou May 14 '16 at 11:49
  • aside: although the answer doesn't address the scope of the question, as of 2024, for those times when I need a disk to share across OS (in my case exclusively Linux and MacOS), I recommend formatting to exFAT rather than FAT (or NTFS). It's fine to have different external drives formatted for use-specific goals, and a downside with exFAT (or any portable format) is case-sensitive filenames and permissions, which is an important tradeoff to consider. – michael Jan 28 '24 at 00:09
2

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.

Sources:

shycha
  • 107
Mitch
  • 107,631