MacOS – What does “@” signify in unix file permissions

macospermission

I have a file with the following permissions on my MacBook Pro:

-rwxr-xr-x@ 1 root wheel 101K Feb 29 17:09 apachectl

What does the @ stand for? I can't execute the file and this is the only thing that's standing out to me. How can I get rid of it?

Just as some background, I copied this from a Time Machine backup.

Best Answer

If the file or directory has extended attributes, you'll see an @ in the permissions field. For extended security information (ACLs), you'll see a +.

From man ls on OS X:

-@      Display extended attribute keys and sizes in long (-l) output.

The xattr program can be used to display and manipulate extended attributes. Take a look at what's there before deciding to go while deleting those attributes, though. Definitely take a quick look at the man page for xattr too.

A quick example from some example PHP compromise code I keep around for reference:

$ ls -@l php-compromise.php 
-rw-r--r--@ 1 user  group  502620 Jul  5  2011 php-compromise.php
    com.apple.FinderInfo        32 
    com.apple.TextEncoding      15