Can't Create SymLinks on CF Card
I found this when using tar to unpack an OS image archive. I've been doing this for a while on another CF card and had no problem. But now, when I untar the archive, I keep getting "cannot create symlink" and "operation not permitted."
I bypassed tar and tried creating some of the symlinks by hand and got the same error. The CF card is mounted in /mnt/flash. I umounted the drive, cd'ed back to /mnt/flash and ran the very same tar command again and it created the files and symlinks without any problem.
So I can create the symlinks to that directory when nothing is mounted, but when I have a CF card mounted there, I can't create symlinks (and have other problems with tar).
For example, if the boot directory is there, with the files in it, and vmlinuz is in /mnt/flash/boot, then I do "cd /mnt/flash" and "ln -s boot/vmlinuz ./" I get the same error: Operation not permitted.
But if the drive is NOT mounted and I create (from the archive) /mnt/flash/boot, with the same file structure, and do the same two commands to get in /mnt/flash and create the symlink, it works just fine.
The only difference is that at one point the files exist on a CF card and the other time they're on the virtual hard drive (this is in a VM in Parallels, the guest OS is Squeeze).
I've tried this with another CF card and it works fine. I've even tried it in another mount point and it works. The only time it does NOT work is with this particular CF card. I can unpack files to it and they are there and verified, but I can't create symlinks on the card.
Unfortunately, ln doesn't provide any useful information with the verbose mode (other than listing the files it's working on).
Does anyone have any idea why I can create and save files on this CF card and cannot make symlinks on it?
Thanks for any thoughts on this!