Appendix C. Mac OS X for UNIX Users

C. Mac OS X for UNIX Users


Mac OS X implementation of standard UNIX features 918

This appendix is a brief guide to Mac OS X features and quirks that may be unfamiliar to users who have been using other UNIX or UNIX-like systems. Each entry in Table C-1 describes a difference in behavior and includes cross references to the discussion of the feature in question in the book.

Table C-1. Mac OS X implementation of standard UNIX features

UNIX feature

OS X implementation


The /bin/sh is a copy of bash (/bin/bash); it is not a link to /bin/bash as it is on some other systems (page 269). The original Bourne Shell does not exist under OS X.


Mac OS X uses NetInfo, not /etc/group, to store group information. For more information see "NetInfo" on page 441 and "Files in /etc are not always used" on page 446.


Mac OS X uses NetInfo, not /etc/passwd, to store user accounts. For more information see "NetInfo" on page 441 and "Files in /etc are not always used" endterm="ch11note10.title"/>" on page 446.


OS X supports Access Control Lists, which may not be enabled by default (page 97).

Automatic login

By default non-Server Mac OS X systems log in the first user account when you boot the system. For more information refer to "Graphical Login" on page 20.

Case sensitivity

The default OS X filesystem, HFS+, is not case sensitive. For more information refer to "Case sensitivity" on page 75.

Core files

By default OS X does not save core files (page 501). When core files are saved, they are kept in /cores, not in the working directory.

Developer tools

The Developer Tools package, which includes the gcc compiler, is not installed by default (page 478).

Development APIs

Mac OS X uses three software development APIs: Cocoa, Carbon, and BSD UNIX (page 478).

Dynamic linker

The OS X dynamic linker is dyld, not (page 488).

ELF and a.out binary formats

The primary binary format under OS X is Mach-O, not ELF or a.out (page 485).

File contents

Files may have multiple forks, which some traditional utilitiesespecially under OS X 10.3 and earliermay corrupt or lose when manipulating files. For more information refer to "Extended Attributes" on page 93.

File metadata

OS X stores more data about a file than traditional UNIX systems store. In addition to traditional UNIX permissions (page 87), OS X files have file flags (page 92) and extended attributes (page 93), which comprise resource forks (page 93), file attributes (page 95), and ACLs (page 97).

File permissions

See "File metadata."

Filesystem structure /etc/fstab

Instead of filesystems being mounted according to settings in /etc/fstab, filesystems are automatically mounted in the /Volumes directory (page 86).


Under OS X 10.4 and later, init is replaced by launchd. For more information refer to "The Superserver" on page 456.


The variable used to control the dynamic linker is DYLD_LIBRARY_PATH, not LD_LIBRARY_PATH (page 488).

META key

On an Apple keyboard, the META key is labeled OPTION, not ALT or META. For more information see the "Activating the META key" tip on page 31.

Permissions, file

See "File metadata."

root account

Initially, on a non-Server Mac OS X system, there is no password for the root account, so you cannot log in as root and cannot su to root. As a member of the admin group, you can use sudo to run a command or shell with root privileges (page 431). See page 430 for instructions on how to enable the root account.


Mac OS X has only single-user and multiuser modes, not the multiple runlevels of System V UNIX and Linux (page 436).

System databases

Some system databases, such as passwd and group, are stored by NetInfo (page 441) and not in the /etc directory (page 446). You can work with NetInfo databases using the nidump utility (page 796) and the NetInfo Manager GUI application.

vi editor

When you call the vi editor, OS X 10.3 and later run vim (page 145) because the file /usr/bin/vi is a link to /usr/bin/vim. OS X 10.4 and later run vim in compatible mode (page 153). OS X 10.2 and earlier use nvi (page 145) instead of vi.

X Window System

The X Window System is not the primary windowing environment under OS X. If you do run the X Window System, it runs under the native Aqua graphical interface, not as a stand-alone server (page 10).


Under OS X version 10.4 and later, xinetd is replaced by launchd. For more information refer to "The Superserver" on page 456.

A Practical Guide to UNIX[r] for Mac OS[r] X Users
A Practical Guide to UNIX for Mac OS X Users
ISBN: 0131863339
EAN: 2147483647
Year: 2005
Pages: 234

Similar book on Amazon © 2008-2017.
If you may any questions please contact us: