Các lệnh 'ln' và 'rm' đã hoạt động chính xác như thế này trong mọi hệ thống tệp UNIX kể từ đầu những năm 1970. Mac OSX, BSD và Linux đều kế thừa thiết kế ban đầu này.
Chính nó, một tập tin UNIX không có tên, chỉ có một số inode hoặc inum. Nhưng bạn chỉ có thể truy cập nó thông qua một mục trong tệp "thư mục" đặc biệt có liên kết tên với inum trong câu hỏi; bạn không thể chỉ định inum trực tiếp.
Một thư mục tự nó là một tệp, vì vậy bạn cũng phải truy cập nó qua thư mục (khác), v.v., thông qua một loạt các tên thư mục được phân định bằng dấu gạch chéo (/) được gọi là "tên đường dẫn". Một đường dẫn bắt đầu trong "thư mục làm việc hiện tại" của quy trình trừ khi tên bắt đầu bằng "/", trong trường hợp đó, nó bắt đầu bằng thư mục gốc của hệ thống tệp. Ví dụ, nếu tên đường dẫn không chứa ký tự "/", thì nó được dự kiến là một mục trong thư mục hiện tại.
Một tệp không phải thư mục có thể có bất kỳ số lượng tên đường dẫn, được gọi là "liên kết cứng" và nó sẽ tiếp tục tồn tại cho đến khi tất cả các tên đường dẫn của nó đã bị xóa và quá trình cuối cùng đã đóng tệp. Sau đó, tập tin thực sự bị xóa và không gian của nó được đánh dấu là có sẵn để sử dụng lại. Nghĩa là, bạn có thể tạo () hoặc mở () tệp liên kết đơn và sau đó hủy liên kết () để nó không còn xuất hiện trong không gian tên hệ thống tệp, nhưng tệp sẽ tiếp tục tồn tại cho đến khi bạn đóng tệp. Điều này hữu ích cho các tệp cào tạm thời không được đọc bởi bất kỳ chương trình nào khác.
Mặc dù các thư mục có số inode, hầu hết các hệ thống tệp không cho phép liên kết cứng đến chúng; chúng chỉ có thể xuất hiện trong một thư mục khác. (Một ngoại lệ khác thường là hệ thống tệp Mac OSX HFS +; điều này cho phép sao lưu Time Machine hoạt động.) Bạn vẫn có thể tạo "liên kết mềm" cho các thư mục (hoặc bất kỳ tệp nào khác). Một liên kết mềm giống như một mục nhập thư mục ngoại trừ việc nó chứa một tên đường dẫn khác chứ không phải là một inum.
Mỗi tệp UNIX có quyền sở hữu, nhóm và quyền truy cập. Điều đó là cần thiết nhưng không đủ để họ cho phép bạn mở tệp; bạn cũng phải có ít nhất quyền thực thi cho mọi thư mục trong tên đường dẫn bạn sử dụng để tham chiếu đến nó. Đó là lý do tại sao không có cách chuẩn để mở tệp UNIX bằng số inode của nó; điều đó sẽ bỏ qua một cơ chế bảo mật quan trọng, được sử dụng rộng rãi.
Nhưng điều này không giải thích được tại sao không thể có một cách tiêu chuẩn để người dùng root (đặc quyền) mở tệp bằng số inode, vì dù sao việc kiểm tra quyền cũng bị bỏ qua. Điều này sẽ rất hữu ích cho các chức năng quản lý hệ thống nhất định như sao lưu. Theo hiểu biết của tôi, các cơ chế như vậy tồn tại, nhưng tất cả chúng đều dành riêng cho hệ thống tệp; không có cách chung nào để làm điều đó cho bất kỳ hệ thống tập tin UNIX nào.