Tìm hiểu về inode trong Linux filesystem


Mình thấy các câu hỏi và vấn đề trong 4rum còn thiên về cách cài đặt phần mềm, gỡ rối,…, chưa chú trọng tìm hiểu về hệ thống tệp tin trong linux, những thành phần của hệ thống. Vì vậy mình xin đóng góp bài viêt này, mong nội dung của diễn đàn thêm phong phú.
Đây là bài dịch ra tiếng việt của mình. Bài gốc của nó ở http://www.cyberciti.biz/tips/understanding-unixlinux-filesystem-inodes.html
Inode (index node) là một khái niệm cơ bản trong Linux filesystem. Mỗi đối tượng của filesystem dược đại diện bởi một inode. Vậy những đối tượng đó là gì? Chúng ta hãy tìm hiểu một vài thứ đơn giản sau đây. Tất cả các file đều có những thuộc tính sau đây:

Loại file
Permissions
Chủ sở hữu
Nhóm
Kích thước file
Thời gian truy cập, thay đổi, sửa đổi file
Thời gian file bị xóa
Số lượng liên kết
Thuộc tính mở rộng
Danh sách truy cập file

Tất cả những thông tin trên được lưu trong inode. Một cách ngắn gọn, Inode xác định file và thuộc tính của nó (như đã kể trên). Mỗi Inode được xác định bởi 1 con số duy nhất trong hệ thống tệp tin. Inode cũng biết đến như một chỉ số. Vậy INODE là:

inode là một cấu trúc dữ liệu trong hệ thống tệp truyền thống của các họ Unix ví dụ như UFS hoặc EXT3. Inode lưu trữ thông tin về 1 tệp thông thường, thư mục, hay những đối tượng khác của hệ thống tệp tin.

LÀM THẾ NÀO ĐỂ XEM INODE CỦA MỘT FILE?

Bạn có thể xem inode của file với câu lệnh “ls -i”, ví dụ:

$ ls -i /etc/passwd

output: 567700 /etc/passwd

Bạn cũng có thể dùng lệnh “stat” để xem inode và nhiều thuộc tính của file:

$ stat /etc/passwd

Output:

File: `/etc/passwd’
Size: 1789 Blocks: 8 IO Block: 4096 regular file
Device: 802h/2050d Inode: 567700 Links: 1
Access: (0644/-rw-r–r–) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2011-11-10 22:45:47.484095607 +0700
Modify: 2011-11-09 22:26:02.297309872 +0700
Change: 2011-11-09 22:26:02.321309871 +0700

ỨNG DỤNG CỦA INODE:

Người quản trị hệ thống UNIX/LINUX thường sử dụng con số inode để xác định một file trong nhiều câu lệnh. Chúng ta hãy cùng thực hành những câu lệnh sau đây để tìm hiểu về một ứng dụng của inode.

$ cd /tmp

$ touch \”la*

$ ls -l

Bây giờ hãy thử xóa file “la* . Bạn không thể, để xóa những file được tạo với ký tự điều khiển hoặc những ký tự không thể nhập từ bàn phím, những ký tự đặc biệt như ?,* ^ … bạn phảisử dụng inode để xóa file đó.
Trình độ tiếng anh còn kém, mong mọi người góp ý. hihi, mình sẽ tiếp tục cập nhật những bài viết về Linux filesystem

Nguồn : http://forum.ubuntu-vn.org/viewtopic.php?f=86&t=17794

Bình luận về bài viết này