Do you have an external hard drive that you cannot write to on your Mac? While most external storage media's default formatting and other setups should make them both readable and writable on most Mac systems, there may be times when this is not the case.
The first detail to check is if the drive is formatted to the popular NTFS format used in Windows systems. Often commercially available drives will be formatted to FAT32 and therefore be fully compatible with both Windows and OS X; however, many popular drives (especially high-capacity ones) may be formatted to NTFS by default.
Unfortunately even though there are third-party drivers and workarounds to allow OS X to write to NTFS drives, these features are not supported by default, so such drives will only be mounted read-only.
To check if a drive is NTFS-formatted, open Disk Utility and select it from the sidebar, and you should see its format listed among other details at the bottom of the Disk Utility window.
To get around this, you can simply use Disk Utility to repartition and format the drive to Mac OS X Extended, provided the drive is only going to be used with a Mac, or format it to ExFAT or FAT, both of which are fully supported in OS X.
Permissions not ignored
Being a multiuser operating system, OS X sets up access permissions for all files and folders on the system, including external drives, which are merely accessed as a folder once attached and mounted. Since permissions are set up through account UUID and UID numbers, if the drive is used with different systems, it may have permissions associated with it for accounts that your current system does not recognize, or even odd permissions settings that can prevent access to the files on the disk or to the disk itself.
This may happen even though getting information on files and folders shows you ought to have full access to the drive.
To prevent such errors from happening, OS X includes a setting to ignore permissions on external drives, so all files on the drive should be fully accessible regardless of their permissions settings.
To set this option for external drives, select the drive on your desktop or in the Finder sidebar, and then press Command-I to get information on the drive. In the information window that pops up, go to the Sharing section and click the lock to authenticate. Then check the box to "ignore ownership on this volume," or toggle it off and then on if it's already enabled.
If this setting is enabled and you still do not have access, you can try removing the system's volume information database, which holds this setting for external drives on the system. To do this, choose "Go to Folder" from the Finder's Go menu, and then type in "/var/db" and press Enter to open the hidden system database folder. In here, locate the file called "volinfo.database" and remove it from this folder (you may need to authenticate to do this).
Once this is complete, detach and reattach your external drive, and then try toggling the setting to ignore ownership on the volume.
Note that these permissions settings will only be available on drives with formats that support them, so if you are using a FAT32-formatted drive, the option to ignore permissions will not be available.
Check drive for errors
Formatting errors can also cause a drive to be read-only. While in many cases formatting errors are relatively minor and tolerated by the system, there are times when the system may determine it safest to only mount the drive in a read-only state to prevent corruption to the data on it.
When this happens, you should see a warning when attaching the drive that states it is only being mounted in read-only mode, and in these cases you should first back up all contents on the drive. Then use Disk Utility or another robust disk or volume repair tool like DiskWarrior to check the drive for errors and attempt to fix them.
Sometimes errors can go unnoticed on a drive, so if these tools report the drive is working OK, then consider wiping the drive and repartitioning it. This can be done with Disk Utility by selecting the drive device in the program's sidebar, then going to the Partition tab that appears and choosing "1 Partition" from the drop-down menu. Then click the Options button and choose GUID as the partition type to use, followed by clicking Apply to save these changes.
Generally read-only errors with drives are limited to their formatting, so these steps should help fix the problem, but do keep an eye on the drive; if the problem crops up again, it could be a hardware malfunction in the drive, in which case it would be best to replace it.