Computer >> Hướng Dẫn Máy Tính >  >> Hệ Thống >> Linux

Linux Inodes Hoạt Động Như Thế Nào?

Linux Inodes Hoạt Động Như Thế Nào?

Nếu bạn dùng Linux đủ lâu, bạn đã thấy thuật ngữ "inodes". Nó xuất hiện đôi khi, nhưng không ảnh hưởng công việc bạn đang làm. Ở đây chúng ta giải thích inodes là gì và cách nó hoạt động.

Inodes Là Gì?

Trong thư viện, tất cả sách được tổ chức theo thể loại, tên tác giả hoặc nhóm tuổi độc giả. Nếu muốn tìm thriller của "Bobby Daniels", bạn đi thẳng đến phần thriller và tìm tên tác giả bắt đầu bằng "B". Giống như thư viện, tất cả file trong hệ thống Linux được tổ chức để truy xuất và sử dụng hiệu quả. Inode là thực thể hỗ trợ sắp xếp file trong hệ thống Linux.

Metadata File Là Gì?

Giả sử ta có file "sample.txt" chứa dữ liệu "hello".

Linux Inodes Hoạt Động Như Thế Nào?

File này có dữ liệu và thông tin liên quan như kích thước file, quyền, chủ sở hữu user/group, dấu thời gian tạo/truy cập/sửa đổi, số liên kết, v.v. Tất cả thông tin này gọi chung là metadata file.

Linux Inodes Hoạt Động Như Thế Nào?

Hệ Thống File Là Gì?

Trên thiết bị lưu trữ như ổ cứng, phân vùng được định dạng thành hệ thống file trước khi dùng lưu file. Hệ thống file là người thư ký cho ổ cứng. Chính thức, nó là tập cấu trúc dữ liệu và thuật toán làm việc cùng nhau để lưu file có phương pháp trên phân vùng.

Phân vùng Linux thường định dạng EXT4. Hệ thống file khác như B-Tree File System (BTRFS), Reiser File System, ZFS, v.v. cũng dùng được.

Kết Nối Tất Cả Lại

Inode là cấu trúc dữ liệu trên Ext4 chứa tất cả metadata cho file.

Linux Inodes Hoạt Động Như Thế Nào?

Tất nhiên sẽ có nhiều file trên hệ thống file. Như bạn đoán, mỗi file có inode riêng. Để nhận diện duy nhất inode, mỗi inode được đánh số.

Đánh Số Inode Như Thế Nào?

Số inode trên hệ thống file bắt đầu từ 1. Mười inode đầu dành cho hệ thống. File user lưu metadata từ inode 11. Tất cả inode gọn gàng xếp trong Inode Table (Bảng inode).

Linux Inodes Hoạt Động Như Thế Nào?

Một mục trong Inode Table cỡ 256 byte. Đối với file, Linux thông minh tổ chức tất cả metadata trong 256 byte! Ngoài ra, inode cho file cũng có thông tin về nơi trong hệ thống file dữ liệu file nằm. Nhớ – chỉ metadata file lưu trong inode.

Tổng số inode trong hệ thống file phụ thuộc không gian khả dụng và số file lưu trữ được trên phân vùng.

Inode Được Cấp Phát Và Giải Phóng Như Thế Nào?

Khi user thêm file vào hệ thống file mới định dạng, inode từ 11 cấp phát chứa metadata file.

Có cấu trúc dữ liệu khác gọi "Inode Bitmap" theo dõi trạng thái cấp phát inode. Là tập hợp bit đóng vai trò bản đồ.

Xét tám bit inode bitmap chỉ trạng thái cấp phát inode 11 đến 18 như bảng dưới. Giá trị 1 trong bitmap nghĩa inode đó cấp phát, tức dùng chứa metadata file. Giá trị 0 nghĩa inode hiện không dùng. Ở đây, inode 17 đang dùng.

Linux Inodes Hoạt Động Như Thế Nào?

Trường hợp file có metadata trong inode 17 bị xóa, trạng thái bitmap tương ứng thành 0, chỉ inode rảnh cho file khác.

Linux Inodes Hoạt Động Như Thế Nào?

Cách Xem Số Inode Cho File?

Có hai cách làm.

Cách đầu dùng lệnh ls với cờ –i, theo sau tên file. Trường đầu ra là số inode chứa metadata "sample.txt".

Linux Inodes Hoạt Động Như Thế Nào?

Cùng thông tin lấy được dùng lệnh stat theo sau tên file.

Linux Inodes Hoạt Động Như Thế Nào?

Để xem tổng số inode khả dụng cho phân vùng, lệnh df dùng cờ -i.

Linux Inodes Hoạt Động Như Thế Nào?

Trong phân vùng "/dev/sda4", 404754480 inode khả dụng, trong đó chỉ 359044 inode dùng.

Kết Luận

Bản chất, Inode Table xếp chặt metadata tất cả file vào inode, kèm thông tin vị trí dữ liệu file. Tất cả về Linux inodes chúng ta thảo luận, chỉ là ngọn núi băng. Để biết thêm hoạt động bên trong, xem liên kết này.