Storage glossary · JSON corpus · llms.txt · hesela.com

unlink · shipping · also unlink()

Unlink

Unlink is the removal of a directory entry that names a file, without invalidating the file's other hard links or existing open references.

Linux unlink() removes a name; if that was the last hard link, existing open references can keep the file usable after its pathname disappears. Reclamation depends on releasing the remaining references, not merely removing one pathname. A symbolic-link argument removes the symbolic link itself, not its target. Plain unlink() does not remove directories; unlinkat() with AT_REMOVEDIR requests directory removal instead. Namespace removal is not secure erasure or proof of crash-persistent deletion.

Relations

related
inode, hard-link, atomic-rename, open-file-description, directory-fsync

Advantages

Limitations

Citations

  1. Linux man-pages 6.19: open(2) (accessed 2026-10-15)
  2. Linux man-pages 6.19: fsync(2) (accessed 2026-10-15)
  3. Hesela: The name changes; existing readers do not (accessed 2026-10-15)

JSON: /data/terms/unlink.json