In theory, almost anything that both the Linux kernel and GRUB (or whatever boot loader you use) can read is suitable for /boot
. Most distributions default to ext4fs, but I've used ext2fs, ext3fs, and XFS with no problems under Ubuntu. I don't recall offhand if JFS is supported at installation. If so it should work fine, too. ReiserFS, HFS+, and FAT are not supported for /boot
by Ubuntu's installer, but they all work fine if you set them up after the fact. Chances are a few more (NTFS, exFAT, and some others) would work, too, but I've never tried them -- at least, not with GRUB. FAT deserves special mention because, if you're using EFI, the EFI System Partition (ESP) is FAT, and mounting the ESP at /boot
can simplify use of certain boot loaders and boot managers, such as ELILO and gummiboot, which require the kernel to reside on the same partition as the boot loader. Ubuntu uses GRUB 2 by default, so this isn't an issue with Ubuntu if you use the default boot loader, but if you want to experiment it might be worth considering. OTOH, using FAT for /boot
will slightly complicate OS version updates and re-installations.
One complication to changing the filesystem on /boot
(on an already-installed system) is that you may need to completely re-install GRUB. The reason is that its filesystem driver gets built into its binary (stored in the sectors following the MBR, in the BIOS Boot Partition, or in the grubx64.efi
file, depending on the boot mode and partition table type). Thus, if you change the filesystem, that binary must be reconstructed, which is done by grub-install
. This isn't an issue for fresh Ubuntu installations, since the installer will run grub-install
as part of the installation process, so it should work fine as long as the Ubuntu installer itself accepts your choice of filesystem -- which, as I've said, will actually narrow your choices from what GRUB permits.
Best Answer
Assuming you have checked in wikipedia, ubuntu forum, linux forum, linux sites about this very common question, i leave you here with a quick breakdown of the common ones:
POINT 1
You already know that ext4 is the enhanced version of ext3 which is the enhanced version of ext2 which is the enhanced version of.. you guessed it, ext (Extended File System) which was a better implementation of the Minix File system.
I wil just copy paste a lot of stuff found in wikipedia / ubuntu+ linux forums /etc... since it is found easily but has a LOT of reading to be done to find the good points.
Ext - Solved 2 big problems that were found in the Minix System:
Ext2 - Added several things that lacked in Ext:
Ext3 - Added More thing missing from Ext2:
Ext4 - Added a whole bunch of things, including but not limited to:
ReiserFs - Very good File System that showed potential and i tested some years back. you could see as an end user the speed difference between it and Ext3 for example. But after some "problems" the company working on the file system had to make some changes. Sad story really. Anyway the final problem right now is the lack of tools for it.
Reiser4 - Not available easily but is the "Version 2" if you can call it that of ReiserFS. Have not tested yet but some benchmarks show good progress.
BtrFS - The illegitimate child of everyone. This file system has taken the good of Ext3, Ext4, ReiserFs and Reiser4 added some sugar, mixed with chocolate and PRESTO! you have some super mutant ninja System. This is not a stable file system YET but it shows a LOT of potential and has some pretty amazing benchmarks. You can have a look here: http://www.phoronix.com/scan.php?page=article&item=ubuntu_1010_btrfs&num=2 but it still needs a lot of work before it can be called stable. Anyway some of the amazing things that it has, for my case, would be the Online volume growth and shrinking, Online defragmentation, Snapshots...
I am using Etx4 right now since I already tested ReiserFs, Ext3, Ext2 and maybe 2 or 3 more.
For many small files in a partition I recommend Reiser since it worked wonders for me BUT you might get a problem that if it happens to you (It happened to me 2 times. That was enough.) you might loose everything forever. And I mean like FOREVER!.
Ext4 a year ago might have not sounded like fast and steady but right now it is very VERY good for almost any time of work in a desktop.
So my recommendation for your POINT 1 would be stay with Ext4. In the future, you might start looking at Btrfs but for now stay with Ext4. There is also the case of performance. As of December 2012, BtrFS does not yet have a similar performance as Ext4 does. In this case I am talking about cases like Copy/Paste speed, moving files, reading thousands of files, the stuff that end users do from time to time. BtrFS is more oriented towards scalable scenarios where we can play with several HDDs or huge space sizes, resize, snapshot and more. But even with that in mind, the work put in BtrFS is huge, so much so, that there are a couple of Ext4 developers that promote BtrFS for several case scenarios. In the future, the performance of BtrFs and stability will have improved to the point of becoming the default one.
POINT 2
For you POINT 2. I do not recommend it if you want to share files between Windows and ubuntu. For that case use NTFS or FAT32. Windows has some programs that can read Ext2/Ext3 systems but I have had (And 2 more friends had) a couple of problems with them, reading wrong, writing wrong, etc.. So for safety sake, stay with NTFS or FAT32 to be on the safe side.
NOTE: What I mean with this is do the Ubuntu partition with ext4 BUT leave a small partition in FAT32 or NTFS to share files between them both. If you are working on the same PC for both Windows and Ubuntu, then there is no need to make a third partition for them. Just install Windows First leaving space for Ubuntu and then install Ubuntu. Ubuntu will be able to see the files in Windows (But Windows will not be able to see the ones in Ubuntu, but since you are running in the same PC anyway you will not mind anyway). Remember that FAT32 is limited to file sizes of 4.2GB or less. If you try to copy a file bigger than that it will throw an error. This can affect you if you want to store ISO files of DVD/Bluray. For this I would then recommend NTFS.
POINT 3
For you POINT 3 - If you want performance you can add noatime and nodiratime to your fstab for the ext4 partition so you get a small performance boost. This will eliminate the access times for files and directories (I think noatime removes both so there might not be a need for nodiratime) If you want more journal options you can check the GIT for the Linux Kernel where it shows you all options: http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/filesystems/ext4.txt;h=7be02ac5fa36d7f4c07856fe9cf89391e08986f7;hb=HEAD
That will help you since it gives a brief summary for each option.
Hope this helps. Sorry for the long post.