Hard links vs. Symbolic links

In linux programming, hard links and soft links provide the Linux environment two unique ways to hook up specific files to a different directory that it doesn’t live in.
So, maybe you already know about links and that they can work like shortcuts on the desktop. But why are there two different kinds?
Here are the properties of both kinds and the pro/cons they provide:
Hard Links — Hard links hook a file directly to the ‘inode’ that the original file links to. All files are really just another link from the shell/menu/desktop to the underlying inode structure that creates a computer’s memory.
Pros: Persistent, un-reliant on any specific file to stay alive.
Cons: Only work in the same filesystem.

Symbolic Links — These links are basically links to another file that hooks to the inode of information that actually holds the program. They are not really links directly to the information, thus the name ‘symbolic’, as opposed to ‘hard.’
Pros: Can span multiple filesystems.
Cons: Rely on other files to stay relevant.

That’s the gist! Keep this in your notes, you may need it before you even realize it. Mastering the filesystem is like mastering a city; it’s the little bits of info that end up being the most useful in the end.