ln Command: Tutorial & Examples

Creating links between files

The ln command is used to create links between files and directories. It creates both hard links and symbolic (or soft) links. A hard link is a mirror copy of the original file, pointing to the same inode as the original. Changes made to the original file or the hard link are reflected in both. A symbolic link, on the other hand, is a separate file that points to the location of the original file. If the original file is deleted, the symbolic link becomes a broken link.

Usage of ln Command

The basic syntax of the ln command is as follows:

ln [option] source target
  • source is the original file or directory.
  • target is the link to be created.
  • option is used to specify the type of link (hard or soft) to be created.

Creating Hard Links

To create a hard link, simply use the ln command followed by the source and target. Here's an example:

ln file1.txt link1

In this case, link1 is a hard link to file1.txt. Any changes made to link1 will be reflected in file1.txt and vice versa.

Creating Symbolic Links

To create a symbolic link, the -s option is used with the ln command. For instance:

ln -s file1.txt link1

This will create a symbolic link named link1 that points to file1.txt. If file1.txt is deleted or moved, link1 will become a broken link.

Common Problems & Solutions

One of the common problems that the ln command can solve is the issue of file duplication. Instead of having multiple copies of the same file in different directories, you can simply create links to the original file. This not only saves disk space but also ensures consistency of data.

Another common problem is the file not found error. This can occur when a file has been moved or deleted, and a program is still trying to access it through a symbolic link. The solution is to update the symbolic link to point to the new location of the file or to create a new hard link.


In conclusion, the ln command is a powerful tool in the Linux filesystem. It is invaluable in situations where you need to create shortcuts to files or directories or when you want to keep multiple copies of a file in sync. Mastering the ln command is, therefore, a significant step towards becoming a proficient Linux user.

Except where otherwise noted, content on this site is licensed under a CC BY-SA 4.0 license CC BY SA