我是否对所有分区(例如/和/ boot)使用ext4? 用于的其他格式是什么?

我正在将ubuntu安装到配备24GB SSD和500GB硬盘的新笔记本电脑上。 我想把/和交换到SSD和/ home到硬盘上。 有什么我不应该使用ext4吗?

我不打算双重启动。 仅限Ubuntu。

交换空间根本不使用文件系统。 对于常规文件系统分区,我的想法是:

  • Ext2fs – 这是主要幸存的非日志Linux本机文件系统,因此它的实用性有限。 我只推荐它在一个小分区(例如一个单独的/boot分区或可能是一个小型USB闪存驱动器)上,这里的日志将比一个优势更有害。
  • Ext3fs – 这是ext2fs加一个日志,它可以减少电源故障或系统崩溃后的磁盘检查时间。 Ext3fs曾经是一个不错的选择,但是现在它已经被ext4fs黯然失色了….
  • Ext4fs – 这是ext3fs以及一些新function,可以提高性能并支持在更大的磁盘上使用。 它可能是目前Linux上最好的通用文件系统; 当然,它是大多数发行版默认支持的版本。
  • ReiserFS – 此文件系统与function中的ext3fs大致相当。 它的主要突出之处在于它特别擅长处理小文件(如几千字节,甚至一千字节以下)。 如果您碰巧存储了大量的小文件,那么它仍然值得考虑。 OTOH,它不是一个“热门”文件系统,因此开发速度很慢,而且ReiserFS缺少ext4fs和此列表中后面的文件系统中的高级function。 一个变体,Reiser4,承诺这样的function,但作为一个实际的内核文件系统实现非常缓慢。 我不会屏住呼吸Reiser4变得可行。
  • XFS – 受大型磁盘(超过几TB)系统管理员的青睐,XFS具有一些中等高级function,并且在处理大型文件方面享有良好声誉。 但是,XFS分区无法缩小,如果您不确定分区的大小,则可能会出现问题。
  • JFS – 在许多方面类似于XFS,JFS从未如此受欢迎。 几年前,它不那么可靠,但我不确定是不是这样。 我想不出今天在仅支持Linux的系统上支持它的任何好理由,尽管可能有一些特殊情况下它会比其他文件系统表现更好。
  • Btrfs – 这是最新的Linux本机文件系统,它包括跨多个磁盘跨文件系统和拍摄快照的高级function。 但它仍然是实验性的,因此不建议在生产环境中使用它。

ph0t0nix提到了ZFS,但那不是真正的Linux原生。 (它是由Sun开发的,并且已经被移植到一些BSD中,但是许可问题阻止了将代码移植到Linux内核中。)Linux有两种ZFS实现,其中一种可以内置到内核中,另一种可以内置到内核中。其中一个是通过FUSE访问的用户空间驱动程序。 但是,内核ZFS驱动程序不是标准Linux内核的一部分,这在我看来是一个很大的缺点; 恕我直言,你的主文件系统的驱动程序应该是内核的标准部分,而不是一个附加包,如果你升级内核可能不起作用。

总的来说,恕我直言,目前最好的通用选项是ext4fs和XFS。 在这两个中,我向ext4fs致敬,因为它更受欢迎,可以缩小。 Ext2fs在小分区上是可以的(比如在1GB左右),如果你存储很多非常小的文件,ReiserFS会很好,如果你需要先进的前沿function并且不介意风险,Btrfs是好的。 我没有碰巧在这些文件系统上使用基准数据,并且这些数据很难解释,因为很多因素会影响性能(磁盘类型,文件大小,系统负载等)。 如果速度或系统负载对您特别重要,您可以尝试查找此类数据。

当然还有非本机文件系统 – NTFS,FAT,HFS +等。您不能将它们用作主Linux安装的文件系统。 (我想你可能会为此目的使用HFS +,但我从未尝试过,Ubuntu安装程序肯定不支持它!)你可以在双启动计算机或可移动设备上使用它们来实现互操作性磁盘。

对于设置,建议您使用ext4。

如果你把/boot作为一个单独的分区,你可以使用ext2。 对于大型文件系统(例如> 16TB我通常使用xfs,因为我在那里遇到了一些ext4问题(调整分区大小时出现问题)。而btrfs仍然不建议用于生产。对于服务器,你可以考虑ZFS,它已被声明几个月前在Linux上稳定。