Questions tagged [hfs+]

HFS Plus or HFS+ is a file system developed by Apple to replace the Hierarchical File System (HFS) as the primary file system used in Macs.

HFS Plus or HFS+ is a file system developed by Apple to replace the Hierarchical File System (HFS) as the primary file system used in Macs. HFS Plus is also referred to as Mac OS Extended (or, erroneously, “HFS Extended”), where its predecessor, HFS, is also referred to as Mac OS Standard (or, erroneously, as “HFS Standard”).

HFS+ supports much larger files than HFS (block addresses are 32-bit length instead of 16-bit) and uses Unicode (UTF-16 encoding) to name files, folders, and other filesystem objects. HFS+ also permits filenames up to 255 UTF-16 characters in length, and n-forked files similar to NTFS.

Apple has continued active development of HFS+: it has been the default filesystem of all OS X Macs. Features added over time include journaling, folder hard-linking, compression, and encryption.

47 questions
19
votes
10 answers

Check if file system is case-insensitive in Python

Is there a simple way to check in Python if a file system is case insensitive? I'm thinking in particular of file systems like HFS+ (OSX) and NTFS (Windows), where you can access the same file as foo, Foo or FOO, even though the file case is…
Lorin Hochstein
  • 57,372
  • 31
  • 105
  • 141
14
votes
1 answer

External HDD on bash on ubuntu on windows

How do I access an external hard drive through bash-on-Ubuntu-on-windows. It doesn't seem to appear in either /media, /mnt or /dev, which seem the common places that people say to look for them in Ubuntu systems. Note: the hard drive is HFS+…
J.Warren
  • 728
  • 1
  • 4
  • 14
9
votes
6 answers

In python on OSX with HFS+ how can I get the correct case of an existing filename?

I am storing data about files that exist on a OSX HFS+ filesystem. I later want to iterate over the stored data and figure out if each file still exists. For my purposes, I care about filename case sensitivity, so if the case of a filename has…
Keith
  • 924
  • 6
  • 14
8
votes
1 answer

How to convert path to Mac OS X path, the almost-NFD normal form?

Macs normally operate on the HFS+ file system which normalizes paths. That is, if you save a file with accented é in it (u'\xe9') for example, and then do a os.listdir you will see that the filename got converted to u'e\u0301'. This is normal…
Heikki Toivonen
  • 30,964
  • 11
  • 42
  • 44
8
votes
3 answers

How to store a hash in extended file attributes on OS X with Java?

Preface I am working on a platform in-depended media database written in java where the media files are identified by a file hash. The user shall be able to move the files around, so I do NOT want to rely on any file path. Once imported, I store the…
IsNull
  • 676
  • 6
  • 10
7
votes
2 answers

How to programmatically get the "last opened" date like displayed in Finder

I want to display the "Last opened" date in my App just like in the Finder preview or info panel. However I realized that this is NOT the same as the last access date that I would get with NSDate* lastAccessDate = [fileUrl…
codingFriend1
  • 6,487
  • 6
  • 45
  • 67
6
votes
3 answers

OS X - how to calculate normalized file name

I need to create a mapping between file names generated on Windows and OS X. I know that OS X "converts all file names to decomposed Unicode" however, "most volume formats do not follow the exact specification for these normal forms" So, it does…
ribram
  • 2,392
  • 1
  • 18
  • 20
5
votes
3 answers

Get all filesystem tags

Since OSX Mavericks supports file tags. Is there any API to access these programmatically? How can I get a list of all system tags? And manipulate them? I tried already: NSFileManager class File System Programming Guide File Metadata Search…
SystematicFrank
  • 16,555
  • 7
  • 56
  • 102
4
votes
1 answer

Netatalk on RPi, resulted in hfs+ drive read-only on RPi and not mounting on macOS

Background I was trying to use netatalk to create Time Capsule using an Raspberry Pi 3, following the tutorial here. Some version info: netatalk 3.1.12 macOS 10.14.5 Raspberian 4.19.50-v7+ Issues and findings After reaching the last part of the…
Marco Leong
  • 565
  • 4
  • 11
4
votes
2 answers

How can I receive notifications of filesystem changes in OS X?

In Windows, I can use the FindNextChangeNotification API to watch a file or folder for changes. For example, I can watch a folder and get notified when a file is added or removed. Is there a similar API on OS X?
Gregory Higley
  • 15,923
  • 9
  • 67
  • 96
3
votes
1 answer

Handling archives with resource forks on non-HFS file-systems

I'm working on a website that is supposed to store compressed archive files for downloading, for different platforms (Mac and Windows). Unfortunately, the Mac version of the download uses "resource forks", which I understand is a vendor-specific…
Christoph Burschka
  • 4,467
  • 3
  • 16
  • 31
3
votes
3 answers

What are the APIs for working with HFS+ named forks?

I know that resource forks are deprecated in Mac OS X. It's not clear whether the less well known and little used named forks are also deprecated. HFS+ actually supports an arbitrary number of arbitrary length forks for any file. (Mac's named forks…
hippietrail
  • 15,848
  • 18
  • 99
  • 158
3
votes
3 answers

How should git behave when two links to same file are different?

I observed the following behavior while working with the perl code base (on branch maint-5.004): bash-3.2$ git status | grep modified # modified: configure bash-3.2$ git reset --hard HEAD is now at 9a4fb7e copy over bleads…
William Pursell
  • 204,365
  • 48
  • 270
  • 300
3
votes
1 answer

Non-ASCII characters in Java class names on HFS+ filesystem

According to the JLS, it is possible to "mangle" package names containing non-ASCII characters in case host filesystem doesn't support Unicode. For instance, package é becomes @00e9, and papierMâché becomes papierM@00e2ch@00e9 when projected to the…
Bass
  • 4,977
  • 2
  • 36
  • 82
3
votes
1 answer

git on mac osx: how to push filename cases to origin?

I have changed the case of some directories in my git repository. Then I pushed them and noticed the cases where not updated. Then I found this question: git mv and only change case of directory I have followed the advice to use: git add -A git…
bodokaiser
  • 15,122
  • 22
  • 97
  • 140
1
2 3 4