Файловые системы Unix используют подсчет ссылок и двухслойную архитектуру для поиска файлов.
Имя файла относится к тому, что называется inode , для информационного узла или индексного узла.Inode хранит (указатель на) содержимое файла, а также некоторые метаданные, такие как тип файла (обычный, каталог, устройство и т. Д.) И кто ему принадлежит.
Несколько имен файлов могут ссылаться на одно и то жеинод;тогда они называются жесткими ссылками .Кроме того, дескриптор файла (fd) ссылается на индекс.Fd - это тип объекта, который процесс получает при открытии файла.
Файл в файловой системе Unix исчезает только при отсутствии последней ссылки на него, поэтому, когда больше нет имен (жестких ссылок)или ФД ссылается на него.Таким образом, rm
фактически не удаляет файл;он удаляет ссылку на файл.
Эта настройка файловой системы может показаться запутанной и иногда создает проблемы (особенно с NFS), но имеет то преимущество, что блокировка не нужна длямного приложений.Многие программы Unix также используют ситуацию в своих интересах, открывая временный файл и удаляя его сразу после.Как только они заканчиваются, даже если они терпят крах, временный файл исчезает.