GIÁO TRÌNH HỆ ĐIỀU HÀNH UNIX - LINUX - Trang 44

4
3

Inode

Mỗi khi một quá trình khởi tạo một file mới, nhân hệ thống sẽ gán cho nó một inode

chưa sử dụng. Để hiểu rõ hơn về inode, chúng ta xem xét sơ lược mối quan hệ liên quan
giữa file dữ liệu và việc lưu trữ trên vật dẫn ngoài đối với Linux.

Nội dung của file được chứa trong vùng dữ liệu của hệ thống file và được phân chia các

khối dữ liệu (chứa nội dung file) và hình ảnh phân bố nội dung file có trong một inode
tương ứng. Liên kết đến tập hợp các khối dữ liệu này là một inode, chỉ thông qua inode mới
có thể làm việc với dữ liệu tại các khối dữ liệu: Inode chứa dựng thông tin về tập hợp các
khối dữ liệu nội dung file. Có thể quan niệm rằng, tổ hợp gồm inode và tập các khối dữ liệu
như vậy là một file vật lý: inode có thông tin về file vật lý, trong đó có địa chỉ của các khối
nhớ chứa nội dung của file vật lý. Thuật ngữ inode là sự kết hợp của hai từ index với node
và được sử dụng phổ dụng trong Linux.

Các inode được phân biệt nhau theo chỉ số của inode: đó chính là số thứ tự của inode

trong danh sách inode trên hệ thống file. Thông thường, hệ thống dùng 2 bytes để lưu trữ
chỉ số của inode. Với cách lưu trữ chỉ số như thế, không có nhiều hơn 65535 inode trong
một hệ thống file.

Như vậy, một file chỉ có một inode song một file lại có một hoặc một số tên file. Người

dùng tác động thông qua tên file và tên file lại tham chiếu đến inode (tên file và chỉ số
inode là hai trường của một phần tử của một thư mục). Một inode có thể tương ứng với một
hoặc nhiều tên file, mỗi tương ứng như vậy được gọi là một liên kết. Inode được lưu trữ tại
vùng danh sách các inode.

Trong quá trình làm việc, Linux dùng một vùng bộ nhớ, được gọi là bảng inode (trong

một số trường hợp, nó còn được gọi tường minh là bảng sao in-core inode) với chức năng
tương ứng với vùng danh sách các inode có trong hệ thống file, hỗ trợ cho quá trình truy
nhập dữ liệu trong hệ thống file. Nội dung của một in-core inode không chỉ chứa các thông
tin trong inode tương ứng mà còn được bổ sung các thông tin mới giúp cho quá trình xử lý
inode.

Chúng ta xem xét cấu trúc nội tại của một inode để thấy được sự trình bày nội tại của

một file. Inode bao gồm các trường thông tin sau đây:

Kiểu file. Trong Linux phân loại các kiểu file: file thông thường (regular),

thư mục, đặc tả kí tự, đặc tả khối và ống dẫn FIFO (pipes). Linux quy định trường
kiểu file có giá trị 0 tương ứng đó là inode chưa được sử dụng.

Quyền truy nhập file. Trong Linux, file là một tài nguyên chung của hệ

thống vì vậy quyền truy nhập file được đặc biệt quan tâm để tránh những trường hợp
truy nhập không hợp lệ. Đối với một inode, có 3 mức quyền truy nhập liên quan đến
các đối tượng:

mức chủ của file (đối tượng này được ký hiệu là u: từ chữ user),
mức nhóm người dùng của chủ nhân của file (đối tượng này được ký hiệu

g: từ chữ group),

mức người dùng khác (đối tượng này được ký hiệu là a: từ chữ all).

Quyền truy nhập là đọc, ghi, thực hiện hoặc một tổ hợp nào đó từ nhóm gồm 3 quyền

trên. Chú ý rằng, quyền thực hiện đối với một thư mục tương ứng với việc cho phép tìm
một tên file có trong thư mục đó.

Số lượng liên kết đối với inode: Đây chính là số lượng các tên file trên các

thư mục được liên kết với inode này,

Liên Kết Chia Sẽ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.