macOS Error -43 (FNFErr) — File Not Found
Error -43 (FNFErr, or File Not Found Error) is a classic Macintosh error code indicating that the system or application could not locate the requested file. Unlike simple “file not found” messages, this error can appear in Finder, Terminal, AppleScript, and third-party applications, and it sometimes occurs even when the file appears to exist. It is common with broken aliases, corrupted Spotlight indexes, and files locked by macOS Gatekeeper quarantine.
Common Causes
- File was moved, renamed, or deleted
- Broken alias pointing to a non-existent target
- Spotlight index is corrupted or incomplete
- File has quarantine attribute from downloading from the internet
- Path contains special characters or Unicode that the application cannot resolve
- Finder preferences are corrupted
- File on a network share that is no longer accessible
How to Fix Error -43
1. Reset Finder Preferences
Corrupted Finder preferences can cause persistent file-not-found errors:
# Quit Finder
killall Finder
# Remove Finder preferences
defaults delete com.apple.finder
# Restart Finder
killall Finder
This resets Finder to default settings. Your files are not deleted.
2. Clear the File Quarantine Attribute
Files downloaded from the internet have a quarantine flag that can trigger error -43:
# Check if a file has the quarantine attribute
ls -l@ /path/to/file
# Remove the quarantine attribute
xattr -d com.apple.quarantine /path/to/file
# Remove quarantine recursively for a folder
xattr -rd com.apple.quarantine /path/to/folder
3. Check the File Path for Special Characters
macOS can struggle with paths containing spaces, Unicode, or special characters:
# List the exact filename (use quotes around paths with spaces)
ls -la "/path/to/folder with spaces/file name"
# Use the escape character for special characters
ls -la /path/to/file\ with\ spaces
# Use Tab completion to avoid path errors
ls /path/to/fi<Tab>
4. Rebuild the Spotlight Index
Spotlight is responsible for locating files on macOS. A corrupted index can cause error -43:
# Trigger a full Spotlight reindex of your drive
sudo mdutil -E /
# Verify Spotlight is enabled
mdutil -s /
# If Spotlight is off, turn it back on
sudo mdutil -i on /
The reindex process runs in the background and may take 30 minutes to several hours depending on disk size.
5. Use Terminal Commands to Locate the File
The find command searches the filesystem independently of Spotlight:
# Search for a file by name (case-insensitive)
find / -iname "filename.txt" 2>/dev/null
# Search only in your home directory
find ~ -iname "filename.txt" 2>/dev/null
# Search by file extension
find ~/Documents -name "*.pdf" 2>/dev/null
# Search by modification time (files modified in last 7 days)
find ~ -mtime -7 -type f 2>/dev/null
6. Fix Broken Aliases
If error -43 occurs when opening an alias:
# Check where the alias points
file /path/to/alias
# Remove the broken alias
rm /path/to/broken/alias
# Create a new symbolic link to the correct target
ln -s /correct/target/path /path/to/new/link
7. Verify the File Actually Exists
Use the stat command to check a file’s metadata:
# Check if a file exists and view its details
stat /path/to/file
# Check if a file exists without outputting anything
test -f /path/to/file && echo "Exists" || echo "Not found"
8. Check Permissions
Even if the file exists, permission issues can present as error -43:
# View file permissions and ownership
ls -la /path/to/file
# Change ownership to your user
sudo chown $(whoami) /path/to/file
# Make the file readable
chmod u+rw /path/to/file
9. Check the File Vault Status
If FileVault encryption is active and the disk is not fully unlocked:
# Check FileVault status
fdesetup status
# If FileVault is in progress, wait for it to complete before accessing files
10. Restart in Safe Mode
Safe mode clears caches and rebuilds system indexes:
- Shut down your Mac
- Press and hold the power button until “Loading startup options” appears
- Select your startup disk
- Hold the Shift key and click “Continue in Safe Mode”
- Once logged in, restart normally
AppleScript Context
If you encounter error -43 in AppleScript, the file reference may be invalid:
-- Wrong: hardcoded path with no check
set filePath to "/Users/username/Documents/file.txt"
-- Right: check if the file exists first
set filePath to POSIX file "/Users/username/Documents/file.txt" as alias
Handle the error explicitly:
try
set myFile to POSIX file "/path/to/file" as alias
on error number -43
display dialog "File not found. Please check the path."
end try
Related Error Codes
- macOS error -36 (ioErr) — Input/Output Error
- macOS error -50 (paramErr) — Parameter Error
- Linux ENOENT (errno 2) — No Such File or Directory