Use `sh`  for portability and check user permission

These are trivial changes to `sh`, portability (e.g.: sh, tcsh, etc.) and Some checking on permission before creation of symbolic link,