HFS +区分大小写还是不区分大小写-主驱动器分区使用哪种类型?


Answers:


34

使用默认值(不区分大小写),除非您a)都知道自己在做什么,b)绝对必须这样做。有几个程序(Norton Antivirus浮现在脑海中)在区分大小写的文件系统上无法正常运行。

默认情况下,HFS是不区分大小写但保留大小写的(即,它并不关心您为比较目的键入的内容,但会记住您键入的内容)。


8

一个或另一个可以破坏应用程序,但是默认情况下不区分大小写。如果您一直在使用不区分大小写的方式而没有问题,则不能保证向区分大小写的过渡会顺利进行。这是来自Apple支持页面的一个示例:

...不要以区分大小写的方式假定您的第三方软件解决方案可以正常工作。重要说明:区分大小写的名称不会忽略Unicode可忽略字符。这意味着一个目录可以具有使用Unicode比较规则被认为等效的多个名称,但是在区分大小写的HFSX卷上它们被认为是不同的。


1
那么什么是标准?不区分大小写?
伊恩·C

8
不区分大小写是标准的,并且几乎总是更好的选择。
CajunLuke 2011年

7

有充分的理由选择区分大小写的文件系统。如果您对运行的应用程序的质量和安全性感到担心,则可能会对任何早期机制感兴趣,这些机制可能会区分编程不良的应用程序。

一次创建一个名为的文件conf,然后尝试打开具有该名称的文件的应用程序CONF至少编写得不好。这只是普通的不良编程习惯。这种应用程序在其代码长度上充满了具有相同平均概率的漏洞。这是一个危险的应用程序。

这个危险的应用程序很可能在区分大小写的文件系统上崩溃。

这个危险的应用程序不会在不区分大小写的文件系统上崩溃。

(某些应用程序会同时崩溃,但是我们没有动力去解决这些问题。)

因此,区分大小写的文件系统可以被认为是早期检测和阻止编程不良的应用程序的好工具。

另一方面,这种级别的编程质量控制远远不足以确保您没有任何其他漏洞。


1
因此,基本上,您是说作为开发人员/测试人员,应该使用区分大小写的文件系统,而对于单纯用户来说,应该使用不区分大小写的文件系统?
nohillside

→Patrix:我建议每个用户使用区分大小写的文件系统。无需区分用户。更好地应对编写不当的应用程序,这些应用程序是所有安全漏洞的根源。

2
如果用户需要使用期望文件系统不区分大小写的应用程序,这将无济于事(例如,Adobe仍然存在问题)。
nohillside

1
→Patrix:您的态度如何“ Adob​​e仍然存在问题 ”。同时,Adobe有时能够使应用程序编写得井井有条,并且在市场上几乎所有的OS上都可以正常运行(Adobe Reader)。

4

在区分大小写的情况下,有些重要的应用程序将无法正常工作。而且确实没有理由这样做。我假设是因为您问您确实没有理由这样做。除非有特殊原因,否则绝对最好不要这样做,并且不必担心许多应用程序不能正确使用它。


2

使用区分大小写的文件系统的一个很好的原因是使用git存储库。如果不使用它们,将它们同步到存储库会一次又一次地引起问题。

但是我建议对此类应用程序使用HFS +格式的区分大小写的方式添加另一个分区,并将所需的目录链接到该分区。我的系统分区仍然不区分大小写,不是因为我知道原因,而是因为担心。


显然没有什么可担心的。OS X在区分大小写的HFS +上可以正常运行。尽管某些应用程序可能没有。我同意:git是执行此操作的很好理由。
伊恩·C(

这个答案不是很有用,因为它太模糊了。如果您给出可能出问题的具体示例,将会有所改善。我从未在macOS上遇到任何git问题。
克里斯·佩奇

@ChrisPage想到的一个例子:当我在不区分大小写的Mac APFS上克隆linux源代码时,我立即看到更改的文件,其中“更改的内容”是文件命名(大写到小写)。mac上的Git似乎无法协调这一点- git reset --hardgit checkout [file]似乎无法使工作树变得干净。
Thom Nichols


1

Adobe程序因无法在区分大小写的文件系统上工作而臭名昭著。Adobe说:

您不能在使用区分大小写的文件系统的卷(例如HSFX(HFS +)或UFS)上安装Adobe产品。此限制既适用于启动驱动器,也适用于安装了软件的驱动器。

https://helpx.adobe.com/creative-suite/kb/error-case-sensitive-drives-supported.html

Steam也不能安装在区分大小写的文件系统上。

Steam当前不支持区分大小写的文件系统或分区。

https://support.steampowered.com/kb_article.php?ref=8601-RYPX-5789

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.