forbidden to overwrite file existed
add check for destination file existed