A hard link is a mirror copy of the original file, sharing the same inode and data blocks. Changes to either the link or the original file are reflected in both places because they point to the same data. Deleting one does not affect the other as they’re independent entities.
On the contrary, a symbolic link (symlink) is a separate file that points to another file by storing its path. If the original file changes, the symlink reflects those changes. However, if the original file is deleted, the symlink becomes broken as it still points to the now non-existent file’s location.
In Bash scripting, you create hard links using ‘ln’ command without any options and symlinks with ‘ln -s’. Hard links cannot span different filesystems or reference directories, while symlinks can.