Sharing an external drive between a Mac and a PC under Leopard
There are two ways to share an external drive, i.e. a FireWire® or USB 2.0 drive, between a Mac running Mac OS X 10.5 Leopard® and a PC running Microsoft® Windows®: physically or over a local network.
Physically sharing an external drive
If you have an external drive that you want to share between two locations, such as home and office, and have a PC at one location and a Mac at the other, then the best way to physically share the drive is:
- Format the external drive in Mac OS Extended format: see the Disk Utility Help documents concerning partitioning a disk. Prior to reformatting the external drive, backup any data on it that you wish to save.
- Install Mediafour MacDrive for Windows on the PC. MacDrive for Windows permits Windows computers to use disks in Mac formats.
While it is possible to format the external drive in MS DOS (FAT32) format for use with both Macs and PCs, this has a number of side effects that are best avoided. These are:
- Disk Utility only permits you to format the entire drive in MS DOS format: it does not permit you to partition the drive so that some partitions are in MS DOS format while others are in Mac OS Extended (aka HFS Plus or HFS+) format.
- When you copy or save a file from a Mac to a Windows shared volume or Windows-formatted disk, the Mac creates two files:
- the data fork (xxx), and
- the resource fork (._xxx)
- where xxx is the file name. This is called Apple Double Format and is normal. The resource fork contains metadata about the file that is exclusive to the Mac. This is new with OS X, as documented in "Mac OS X: Apple Double Format Creates File Name With the Prefix '._'."
- Serious problems can arise if you move the file (xxx) separately from its resource fork (._xxx) on the PC and then try to open the file on the Mac.
- If you plan to work with large files, such as digital video, the largest file you can write to a disk in MS DOS format is 4GB. The MS DOS format is also known as FAT32.
- If you connect an MS DOS-formatted disk larger than 128Gb to a Mac running Jaguar, the disk will not show up in Finder. See "Mac OS X 10.2: MS-DOS Disk Does Not Appear in Finder."
Therefore, the best approach is to format the external drive in Mac OS Extended format and use MacDrive for Windows to work with it on the PC.
Sharing an external drive over a local network
If Macs running Leopard and PCs running Windows are on the same local network, the external drive should be formatted for the computer to which it will be directly connected, i.e. Mac OS Extended (Journaled) format if connected to the Mac, NTFS or FAT32 format if connected to the PC. If the external drive will be connected to the PC, NTFS format is preferred if files larger than 4 GB will be written to the drive.
If the external drive will be connected to a PC, share it with Macs using the instructions in the Mac Help document "Setting up a Windows computer to share files with Mac users." Consult Windows help for additional information.
If the external drive will be connected to a Mac, share it with Windows users using the instructions in the Mac Help document "Setting up a Mac computer to share files with Windows users." However, some special handling is required.
Windows users will need an account on the Mac. Unfortunately, this must be either an Admin account or a Standard account with Read/Write permissions enabled for Everyone on the external drive. This is because testing has shown that the following Leopard features do not work as expected:
Sharing-only accounts cannot be set to share files and folders using SMB. Therefore, Windows users cannot be given sharing-only accounts on the Mac.
This appears to be a bug in Leopard.
Standard accounts with Read/Write permissions on the shared drive cannot write to it over SMB unless permissions for Everyone are set to Read/Write.
If you set up the shared external drive in Sharing preferences as follows:
- Add [+] the external drive to Shared Folders.
- Add [+] a Standard account to Users for that shared drive.
- Assign Read/Write permissions to a the Standard account.
- Click Options and enable the Standard account to share files and folders using SMB.
Then log in to that Standard account over the network from a PC running Windows, you cannot write to the external drive despite having Read/Write permissions. Any attempt write to the drive will result in Windows alert stating that you do not have the necessary authorization.
Only by setting permissions for Everyone to Read/Write on the shared external drive can you then write to the shared external drive from the Windows PC while logged in as a standard account on the Mac sharing the drive.
This may also be a bug in Leopard or in the default SMB configuration.
Sharepoints set up as seen in the screen shot only work if you log into a Standard account on the Mac sharing the drive from another Mac on the local network.
This presents some security issues. First, providing a Windows user with an Admin account gives them free reign to do anything, including delete your account or erase the drive. Second, assigning Everyone Read/Write permissions on the shared drive permits anyone to do anything on the drive, including erase it.
That Admin accounts can access the external drive is a continuation of the restrictions in earlier versions of Mac OS X: while only public folders are shared by default, Admin accounts can access any volume.
Unfortunately, the third-party utility Sharepoints is not yet available for Leopard.
Unless these issues are resolved in a future Mac OS X update, one will have to accept the risk these security issues in order to share an external drive on a Mac with PCs on the local network.