The hardlink allows a user to create a reference to existing data without consuming additional space as a true copy would. Hardlinks work by directly referencing the "inode" (bytes that define the file) instance on the drive. Comparatively, symbolic links work by referencing the file that is already linked to the inode. The symbolic link would stop working if the original file were deleted, but the hardlink would keep the inode alive. As long as a hardlink exists, the inode -- and the file it represents -- will continue to exist after the original or another hardlink were deleted.
In Linux, there are three main tools to generate hardlinks: link, ln, and cp . While these three programs create the same hardlinks, there are speed and usage differences. For example, cp can recursively create hardlinks while also copy directory structure and link (using strace) uses significantly less system calls.