Thứ Bảy, 6 tháng 10, 2012

Định nghĩa Filesystem

  • Bài viết nhỏ này mình xin chia sẻ một chút về filesystem. Nhắc đến Linux chắc hẳn bạn đã từng nghe qua thuật ngữ “filesystem”. Vậy Filesystem là gì? Từ filesystem có 2 nghĩa: nó có thể là một đĩa (disk) hoặc là một mạng(network) phụ thuộc vào cấu trúc dữ liệu được dùng để lưu trữ các file. Nó có thể là một hệ thống phân cấp các thư mục và files trên một đĩa(hierachy). Theo nghĩa thứ hai, thì các thư mục và files được sắp xếp một cách logic mà ta có thể sử dụng các thao tác command trên Linux để xem được nó, ví dụ sử dụng câu lệnh ls (mình xin phân tích câu lệnh này ở bài sau).  Nếu một người nói “I have two filesystems” có nghĩa là người đó có hai phân vùng(partition) để họ lưu dữ liệu trên đó hoặc là họ sử dụng “extended filesystem” (nó là ext2fs hoặc là ext2).
  • Sự khác nhau giữa disk hay partition và filesystem được chứa trong nó thực sự quan trọng. Hầu hết các chương trình làm việc trên một filesystem nào đó, do đó chương trình sẽ không làm việc trên một partition mà không chứa filesystem đó(hoặc có chứa nhưng mà sai kiểu filesystem).
  • Sức mạnh của  Linux nằm ở việc nó cung cấp một số lượng rộng rãi các filesystem, không chỉ ở ext2 filesystem(filesystem của Linux) mà nó còn cung cấp nhiều filesystem của các HĐH khác như Windows, MAC và các HĐH khác nữa. Lợi điểm của sự “phóng khoáng” trên là ta có thể đọc các dữ liệu (media) hay là đĩa cứng(hard disk ) từ các máy tính sử dụng HĐH khác.
  • Sau đây mình xin liệt kê một vài hệ thống filesystem từ đời cổ đến thời hiện đại :d
  1. Minix: cổ nhất, được cho là đáng tin cậy nhất, nhưng nó giới hạn một vài features(thỉnh thoảng một vài nhãn (stamps) bị mất hay là tên file tối đa chỉ là 30 kí tự), về dung lượng (tối đa là 64M cho một filesystem).
  2. Xia: một phiên bản chỉnh sửa của Minix, giới hạn tên file và kích thước của filesystem được nâng lên, nó không phổ biến nhưng những báo cáo cho thấy nó làm việc rất tốt(chả hiểu tại sao không phổ biến nhể???)
  3. Ext3: là hệ thống filesystem có tất cả các đặc trưng của ext2, nó cải thiện hơn ở việc journaling(bản ghi) được thêm vào, vì thế nó cải thiện đc performance hoặc recovery time khi hệ thông bị phá hủy. Nó phổ biến hơn ext2
  4. Ext2: Nó có những đặc tính tự nhiên của Linux filesystems. Nó thiết kế để dễ dàng nâng cấp, vì thế ta hoàn toàn có thể có new versions mà không cần mà không cần tạo lại toàn bộ filesystem.
  5. Ext: là phiên bản cũ hơn ext2 nó không có cơ chế cho phép dễ dàng nâng cấp. Rất khó trong việc cài đặt new versions.
  6. Reiserfs: một filesystem nhiều “sức mạnh”. Bản ghi được sử dụng hạn chế mức thấp việc mất dữ liệu. Bản ghi những công việc đã thực thi. Nó cho phép filesystem tự cấu trúc lại một cách dễ dàng sau những đe dọa, ví dụ như tắt máy không thích hợp.
  7. Xfs: đươc thiết kế bởi Silicon Graphics làm việc như một filesystem 64 bit, nó được thiết kế nhằm duy trì performance cao với một lượng lớn files và filesystems
  • Thêm vào đó, nó còn supports thêm nhiều filesystem bên ngoài khác, tạo ra việc dễ dàng cho việc trao đổi files với các hệ điều hành khác nhau. Các hệ thống filesystem ngoại này làm việc cũng giống như các hệ thống tự nhiên trong Linux. Ví dụ
  1. Msdos: tương thích vơi MS-DOS (và OS/2 và Windows NT) FAT filesystems
  2. Umsdos: là một mở rộng của msdos filesystem với tên file dài hơn, nhiều người sở hữu, nhiều quyền hạn, nhiều liên kết và các files thiết bị. Nó cho phép một msdos filesystem thông thường được sử dụng như một filesystem Linux duy nhất mà không cần phân vùng cho Linux.
  3. Vfat: mở rộng của FAT được biết đến với cái tên FAT32. Nó cung cấp một kích thước đĩa lớn hơn FAT. Hầu hết các đĩa MS windows là vfat
  4. Iso9660: là CD-ROM filesystem chuẩn, ROCK RIDGE là một mở rộng cho phép tên file dài hơn được cung cấp một cách tự động
  5. Nfs: là một filesystem mạng cho phép chia sẻ một filesystem nào đó giữa các máy tính để dễ dàng truy cập đến tất cả các file đó
  6. Smbfs: là filesystem mạng cho phép chia sẻ một filesystem nào đó với một MS Windows. Nó tương thích với các giao thức chia sẻ file Windows.
  7. Hpfs: là OS/2 filesystem.
  8. Sysv: hệ thống V/386, Xenix file systems.
  9. NTFS: một Microsoft filesystem nâng cao cung cấp một cơ chế truy cập file nhanh hơn.

Không có nhận xét nào:

Đăng nhận xét