File systems hệ thống thông tin trong linux

17 213 4
File systems hệ thống thông tin trong linux

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Mục lụcHệ thống tệp tin trên Linux1. Các thành phần của hệ thống tệp tin 2. Các tùy chọn trong File system 3. Tổ chức tệp tin trên Linux 4. Các thành phần trên tệp tin Linux 5. Kiểm tra dung lượng đĩa6. Quyền truy xuất File, thư mục

Mục lục Hệ thống tệp tin Linux Các thành phần hệ thống tệp tin Các tùy chọn File system Tổ chức tệp tin Linux Các thành phần tệp tin Linux Kiểm tra dung lượng đĩa Quyền truy xuất File, thư mục TÀI LIỆU THAM KHẢO HỆ ĐIỀU HÀNH UNIX – LINUX (2004)-NXB GIÁO DỤC LINUX LPI-101 ISE ĐẠI HỌC HÀ NỘI RUNNING LINUX (o’reilly) GIÁO TRÌNH NGUYÊN LÝ HỆ ĐIỀU HÀNH- ĐẠI HỌC CÔNG NGHIỆP HN THE LINUX DEVICE FILE- SYSTEM ( rechard gooch) OPERATING SYSTEM CONCEPTS THÀNH VIÊN VÀ PHÂN CÔNG NHIỆM VỤ THÀNH VIÊN NHIỆM VỤ Bàn Đức Thăng Tìm hiểu nghiên cứu về: Tổ chức tệp tin Phùng Văn Tin Linux thành phần tệp tin Linux Tìm hiểu nghiên cứu về: Kiểm tra dung lượng đĩa quyền truy xuất File, thư mục Lê Đăng Quang Tìm hiểu nghiên cứu về: Các thành phần hệ thống tệp tin tùy chọn File system HỆ THỐNG TỆP TIN TRÊN LINUX Tổng quan: Mỗi hệ điều hành có cách tổ chức lưu trữ liệu riêng Ở mức vật lý, đĩa định dạng từ thành phần sector, track, cylinder Ở mức logic, hệ thống sử dụng cấu trúc riêng, dùng mục hay phân cấp để xác định liệu từ mức logic tới mức vật lý Cách tổ chức gọi hệ thống tập tin (file system) Một hệ thống tập tin thiết bị mà định dạng để lưu trữ tập tin thư mục Hệ thống tập tin Linux bao gồm: đĩa mềm, CD-ROM, partition đĩa cứng Những hệ thống tập tin thường tạo trình cài đặt hệ điều hành Nhưng bạn thay đổi cấu trúc hệ thống tập tin thêm thiết bị hay chỉnh sửa partition tồn Như vậy, việc biết hiểu cấu trúc hệ thống tập tin Linux thật quan trọng Linux có khả hỗ trợ nhiều loại file hệ thống với cơng nghệ tích hợp vào bên kernel Các thành phần hệ thống tệp tin + Superblock + Inode + Storageblock + Loại tập tin Super Block: cấu trúc tạo vị trí bắt đầu hệ thống tập tin Nó lưu trữ thông tin hệ thống tập tin như: Thông tin block-size, free block, thời gian gắn kết(mount) cuối tập tin Inode (256 byte): Lưu thông tin tập tin thư mục tạo hệ thống tập tin Nhưng chúng không lưu tên tập tin thư mục thực Mỗi tập tin tạo phân bổ inode lưu thông tin sau: + Loại tập tin quyền hạn truy cập tập tin + Người sở hữu tập tin + Kích thước tập tin số hard link đến tập tin + Ngày thời gian chỉnh sửa tập tin lần cuối + Vị trí lưu nội dung tập tin hệ thống tập tin Storageblock: Là vùng lưu liệu thực tập tin thư mục Nó chia thành Data Block Dữ liệu lưu trữ vào đĩa data block Mỗi block thường chứa 1024 byte Ngay tập tin có ký tự phải cấp phát block để lưu Khơng có ký tự kết thúc tập tin Loại tập tin Trong linux, tập tin dùng cho việc lưu trữ liệu Nó bao gồm thư mục thiết bị lưu trữ Một tập tin liệu, hay thư mục xem tập tin Khái niệm tập tin mở rộng dùng cho thiết bị máy in, đĩa cứng, nhớ coi tập tin,các tập tin linux chia làm loại chính: + Tập tin chứa liệu bình thường + Thư mục + Tập tin thiết bị Tập tin liệu: Đây tập tin theo định nghĩa truyền thống, liệu lưu trữ thiết bị lưu trữ đĩa cứng, CD-ROM, … Bạn đưa liệu vào tập tin đoạn source chương trình, tập tin văn hay tập tin thực thi dạng mã máy, lệnh Linux tất tập tin tạo người dùng Tập tin thư mục: Thư mục không chứa liệu, mà chứa thông tin tập tin thư mục Thư mục chứa hai trường tập tin tên tập tin inode number Tập tin thiết bị: Chứa file device để đại diện hardware, chứa đựng thông tin tài nguyên hệ thống (vd: /dev; /proc) Các tùy chọn File System: Có nhiều dạng file hệ thống Linux, loại áp dụng với mục đích riêng biệt Điều khơng có nghĩa file hệ thống áp dụng trường hợp khác, mà tùy theo nhu cầu mục đích người sử dụng, đưa phương án phù hợp - Ext - Extended file system: định dạng file hệ thống thiết kế dành riêng cho Linux Có tổng cộng phiên phiên lại có tính bật Phiên Ext phần nâng cấp từ file hệ thống Minix sử dụng thời điểm đó, lại khơng đáp ứng nhiều tính phổ biến ngày Và thời điểm này, khơng nên sử dụng Ext có nhiều hạn chế, khơng cịn hỗ trợ nhiều distribution - Ext2 - The Second Extended File System: thực chất file hệ thống journaling, phát triển để kế thừa thuộc tính file hệ thống cũ, đồng thời hỗ trợ dung lượng ổ cứng lên tới TB Ext2 không sử dụng journal có liệu ghi vào ổ đĩa Do lượng yêu cầu viết xóa liệu thấp, phù hợp với thiết bị lưu trữ bên thẻ nhớ, ổ USB Còn ổ SSD ngày tăng tuổi thọ vòng đời khả hỗ trợ đa dạng hơn, chúng hồn tồn không sử dụng file hệ thống không theo chuẩn journaling - Ext3 Ext2 kèm với journaling Mục đích Ext3 tương thích ngược với Ext2, ổ đĩa, phân vùng dễ dàng chuyển đổi chế độ mà không cần phải format trước Tuy nhiên, vấn đề tồn giới hạn Ext2 nguyên Ext3, ưu điểm Ext3 hoạt động nhanh, ổn định nhiều Không thực phù hợp để làm file hệ thống dành cho máy chủ khơng hỗ trợ tính tạo disk snapshot file khơi phục khó để xóa bỏ sau - Ext4: giống Ext3, lưu giữ ưu điểm tính tương thích ngược với phiên trước Như vậy, dễ dàng kết hợp phân vùng định dạng Ext2, Ext3 Ext4 ổ đĩa Ubuntu để tăng hiệu suất hoạt động Trên thực tế, Ext4 giảm bớt tượng phân mảnh liệu ổ cứng, hỗ trợ file phân vùng có dung lượng lớn Thích hợp với ổ SSD so với Ext3, tốc độ hoạt động nhanh so với phiên Ext trước đó, phù hợp để hoạt động server, lại không Ext3 - BtrFS – thường phát âm Butter Better FS, giai đoạn phát triển Oracle có nhiều tính giống với ReiserFS Đại diện cho B-Tree File System, hỗ trợ tính pool ổ cứng, tạo lưu trữ snapshot, nén liệu mức độ cao, chống phân mảnh liệu nhanh chóng thiết kế riêng biệt dành cho doanh nghiệp có quy mơ lớn Mặc dù BtrFS không hoạt động ổn định số tảng distro định, cuối thay mặc định Ext4 cung cấp chế độ chuyển đổi định dạng nhanh chóng từ Ext3/4 Do vậy, BtrFS phù hợp để hoạt động với server dựa vào hiệu suất làm việc cao, khả tạo snapshot nhanh chóng hỗ trợ nhiều tính đa dạng khác Bên cạnh đó, Oracle cố gắng phát triển tảng công nghệ nhằm thay cho NFS CIFS gọi CRFS với nhiều cải tiến đáng kể mặt hiệu suất tính hỗ trợ Những kiểm tra thực tế BtrFS đứng sau Ext4 áp dụng với thiết bị sử dụng nhớ Flash SSD, server database - ReiserFS: coi bước tiến lớn file hệ thống Linux, lần đầu công bố vào năm 2001 với nhiều tính mà file hệ thống Ext khó đạt Nhưng đến năm 2004, ReiserFS thay Reiser4 với nhiều cải tiến Tuy nhiên, trình nghiên cứu, phát triển Reiser4 “chậm chạp” không hỗ trợ đầy đủ hệ thống kernel Linux Đạt hiệu suất hoạt động cao file nhỏ file log, phù hợp với database server email - XFS phát triển Silicon Graphics từ năm 1994 để hoạt động với hệ điều hành riêng biệt họ, sau chuyển sang Linux năm 2001 Khá tương đồng với Ext4 số mặt đó, chẳng hạn hạn chế tình trạng phân mảnh liệu, khơng cho phép snapshot tự động kết hợp với nhau, hỗ trợ nhiều file dung lượng lớn, thay đổi kích thước file liệu shrink – chia nhỏ phân vùng XFS Với đặc điểm XFS phù hợp với việc áp dụng vào mơ hình server media khả truyền tải file video tốt Tuy nhiên, nhiều phiên distributor yêu cầu phân vùng /boot riêng biệt, hiệu suất hoạt động với file dung lượng nhỏ không so với định dạng file hệ thống khác, khơng thể áp dụng với mơ hình database, email vài loại server có nhiều file log Nếu dùng với máy tính cá nhân, lựa chọn tốt nên so sánh với Ext, hiệu suất hoạt động khơng khả thi, ngồi khơng có trội hiệu năng, quản lý so với Ext3/4 - JFS IBM phát triển lần năm 1990, sau chuyển sang Linux Điểm mạnh dễ nhận thấy JFS tiêu tốn tài nguyên hệ thống, đạt hiệu suất hoạt động tốt với nhiều file dung lượng lớn nhỏ khác Các phân vùng JFS thay đổi kích thước lại khơng thể shrink ReiserFS XFS, nhiên lại có tốc độ kiểm tra ổ đĩa nhanh so với phiên Ext - ZFS giai đoạn phát triển Oracle với nhiều tính tương tự Btrfs ReiserFS Mới xuất năm gần có tin đồn Apple dùng làm file hệ thống mặc định Phụ thuộc vào thỏa thuận điều khoản sử dụng, Sun CDDL ZFS khơng tương thích với hệ thống nhân kernel Linux, nhiên hỗ trợ toàn Linux’s Filesystem in Userspace – FUSE để sử dụng ZFS Người sử dụng gặp khó khăn cài đặt hệ điều hành Linux có u cầu FUSE khơng hỗ trợ distributor - Swap coi thực khơng phải dạng file hệ thống, chế hoạt động khác biệt, sử dụng dạng nhớ ảo khơng có cấu trúc file hệ thống cụ thể Không thể kết hợp đọc liệu được, lại dùng kernel để ghi thay đổi vào ổ cứng Thơng thường, sử dụng hệ thống thiếu hụt nhớ RAM chuyển trạng thái máy tính chế độ Hibernate Journaling gì? Điểm trước tiên cần tìm hiểu Journaling trước nghiên cứu kỹ vấn đề Điều bạn cần nhớ journaling tất loại file hệ thống ngày phải sử dụng journaling theo nhiều dạng khác tảng laptop desktop với Linux Journaling sử dụng ghi liệu lên ổ cứng đóng vai trị đục lỗ để ghi thơng tin vào phân vùng Đồng thời, khắc phục vấn đề xảy ổ cứng gặp lỗi q trình này, khơng có journal hệ điều hành khơng thể biết file liệu có ghi đầy đủ tới ổ cứng hay chưa Chúng ta hiểu nơm na sau: trước tiên file ghi vào journal, đẩy vào bên lớp quản lý liệu, sau journal ghi file vào phân vùng ổ cứng sẵn sàng Và thành công, file xóa bỏ khỏi journal, đẩy ngược bên ngồi q trình hồn tất Nếu xảy lỗi thực file hệ thống kiểm tra lại journal tất thao tác chưa hoàn tất, đồng thời ghi nhớ lại vị trí xảy lỗi Tuy nhiên, nhược điểm việc sử dụng journaling phải “đánh đổi” hiệu suất việc ghi liệu với tính ổn định Bên cạnh đó, cịn có nhiều cơng đoạn khác để ghi liệu vào ổ cứng với journal trình khơng Thay vào có file metadata, inode vị trí file ghi lại trước thực ghi vào ổ cứng Tổ chức tập tin Linux Nếu người dùng sử dụng quen môi trường Window, chuyển sang mơi trường Linux phân vân khó hiểu cấu trúc file system Ở phân biệt hiểu vai trò thư mục cấp độ cao linux Mỗi hệ thống file có cấu trúc giống dựng ngược Gốc đặt bên Như đề cập trên, phân vùng tạo có mount point Công việc thường thi hành trình cài đặt Để hiểu kỹ vấn đề này, quan sát kiến trúc phân cấp hệ thống file Linux đây: Hình 2.1.Tổ chức tệp tin Linux Trong hình trên, gốc kiến trúc phân cấp thư mục gốc “/” Nó gần tương tự “C:\” DOS ngoại trừ việc “C:\” phân vùng đĩa cứng đầu tiên, thư mục gốc “/” Linux ánh xạ phân vùng Các thư mục sở thư mục cấp nằm thư mục gốc “/” Chúng tạo gói thường có tên filesystem Tiến trình khởi động ánh xạ thư mục gốc nhằm giúp đỡ tất thao tác kiểm tra phân vùng, nạp module cho nhân…vv ánh xạ thư mục gốc xong chương trình như: fsck, insmod hay mount sử dụng Để đảm bảo cho q trình khởi động diễn xác, thư mục /dev, /bin, /sbin, /etc /lib bắt buộc phải thư mục “/” ánh xạ phân vùng khác Các thành phần tệp tin Linux 4.1/Root -Mỗi file thư mục root directory -Chỉ có user root có quyền thư mục cấp bên -Còn /Root home directory user root 4.2/bin –User Binary -Chứa file thực thi dạng binary -các lệnh sử dụng thông thường linux sử dụng single-user mode đặ cấu trúc -các câu lệnh sử dụng tất user hệ thống đặt Ví dụ số lệnh ps, ls, ping, grep, cp 4.3/sbin – System Binaries -Giống /bin, bên / sbin chứa đựng file thực thi dạng binary Các lệnh bên /sbin thường sử dụng system administrator dùng cho mục đích trì quản trị hệ thống -Một số lệnh ví dụ iptablas, reboot, ifconfig… 4.4/ect – Configuration Files -Thơng thường /ect chứa file cấu hình cho chương trình hoạt động -Ở /ect thường chứa scripts dùng để start, stop, kiểm tra status cho chương trình -Ví dụ /ect/ resolv.conf (cấu hình dns-server), hay /ect/network dùng để quản lý dịch vụ network 4.5 /dev – Device Files - chứa file device để đại diện hardware - Ví dụ /dev/tty1 hay /dev/sda 4.6 /proc – process information -Chứa đựng thông tin trình xử lý hệ thống - Đây pseudo filesystem chứa đựng thông tin process chạy - Đây virtual filesystem chứa đựng thông tin tài nguyên hệ thống ví dụ: /proc/cpuinfo cung cấp cho ta thơng số kỹ thuật CPU 4.7 /var – Variable files - Chứa đựng file có thay đổi q trình hoạt động hệ điều hành -ví dụ system log đặt vị trí +system log file/var/log +database file /var/lib +email /var/mail +các pint queue /var/spool +lock file /var/lock +các filetamj thời cần cho trình reboot /var/tmp 4.8 /tmp – Temporary Files -Thư mục chứa file tạo hệ thống user -Các file bên thư mục xóa hệ thống reboot 4.9 /usr – User Programs -chứa file binary, library, tài liệu ,source-code cho chương trình -/usr/bin chứa file binary cho chương trình user Nếu user trình thực thi lệnh ban đầu tìm kiếm /bin, nhưu khơng có tiếp tục nhìn vào /usr/bin Ví dụ số lệnh at Awk, cc… -/usr/bin chứa file binary cho system administrator Nếu ta khơng tìm thấy file system binary bên /sbin ta tìm /usr/sbin Ví dụ số lệnh cron, sshd, useradd, userdel -/usr/lib chứa file libraries cho /usr/bin /usr/sbin 4.10 /home –Home Directories -Home diretory chứa đựng thông tin cá nhân user - Ví dụ /home/athena, /home/student 4.11 /boot –Boot Loader Files -Chứa đựng boot loader files cần cho trình boot tùy theo phiên kernel - Các file Kernel intird, vmlinux, grup đặt bên duwois /boot Ví dụ initr.dimg-2.6.32-24-genneric, vmlinuz-2.6.32-24-generic 4.12 /lib – System Libraries - Ví dụ initrd.img-2.6.32-24-generic, vmlinuz-2.6.32-24-geberic -Chứa file liblary hỗ trợ file thực liblary nằm bên /bin /sbin -Tên file liblary thường Id* or lib*.so* Ví dụ Id-2.11.1.so, libncusecs.so.5.7 4.13 /opt – Optional add – on Application -opt đại diện chi optional -Chứa đựng chương trình thêm vào hãng khác 4.14 /mnt – Mount Directory -Chứa thư mục dùng để system admin thực trình mount 4.15 /media – Removable Directory -Chứa thư mục dùng để mount cho thiết bị removable Ví dụ CDROM, Floppy… 4.16 /src – Service Data - srv đại diện cho server, liên quan đến liệu Ví dụ /src/cvs chứa đựng CVS Kiểm tra dung lượng đĩa Sử dụng mount df Cả hai lệnh hoạt động mức thiết bị Hai lệnh mount umount dùng để quản trị hệ thống file gán kết file /etc/mtab Nếu sử dụng mount không tham số, tất hệ thống file gắn kết hệ thống liệt kê hình Kết giống file /etc/mtab Ngồi ra, nhân lưu giữ thơng tin hệ thống file kết nối /proc/mount Để xem thêm thông tin điểm kết nối sử dụng lệnh df Lệnh cho phép hiển thị thêm dung lượng đĩa sử dụng dung lượng cịn trống Đơn vị kích thước để hiển thị 1K Tiện ích sử dụng để hiển thị không gian đĩa sử dụng mức thư mục Vì vậy, du khơng thể hiển thị khoảng trống thừa đĩa 6 Quyền truy xuất File, Thư mục Thay đổi quyền truy xuất chủ sở hữu Quyền truy xuất file, thư mục chủ sở hữu định nghĩa để quy định cách thức truy cập liệu hệ thống Để thay đổi quyền truy cập, sử dụng lệnh chmod Có ba nhóm đối tượng tác động quyền truy cập là: u g o Người dùng sở hữu Nhóm người dùng sở hữu Không thuộc hai đối tượng Tùy chọn hay dùng với chmod, chown chgrp –R cho phép thay đổi thư mục, file bên thư mục định Ngoài cách sử dụng ký tự đại diện cho quyền: read=r, write=w, execute=x, chmod cho phép sử dụng số hệ bát phân để thay đổi quyền theo bảng sau: read write execute user rwx 4+2+1=7 group r-x 4+1=5 other rw4+2=6 Quyền truy xuất chuẩn Các hệ thống UNIX tạo file thư mục với quyền truy xuất chuẩn sau: Files Directories umask 666 -rw-rw-rw- 777 -rwxrwxrwx Là khái niệm thiết lập để định quyền truy xuất mặc định cho file thư mục tạo người dùng umask mặt nạ gồm số hệ bát phân Khi đó, quyền truy xuất mặc định file thư mục người dùng tính theo cơng thức sau: Final Permissions = Standard Permissions (logical AND) (NOT)Umask Quyền truy cập SUID Là quyền truy cập thiết lập root cho phép người dùng bình thường thi hành lệnh root Quyền thiết lập với tên s (nằm vị trí x nhóm u) gán số hệ bát phân 4000 Quyền truy cập SGID Là quyền truy cập cho phép người dùng thuộc nhóm sở hữu thi hành lệnh mà khơng cần dùng newgrp để chuyển nhóm Quyền thiết lập với tên s (nằm vị trí x nhóm g) gán số hệ bát phân 2000 Bit đánh dấu (The sticky bit) Quyền thiết lập với tên t (nằm vị trí x nhóm o) gán số hệ bát phân 1000 Quyền thiết lập để:  Cho phép file thi hành nạp vào nhớ nhanh  Cho phép thư mục cấm người dùng xóa file ... trị hệ thống file gán kết file /etc/mtab Nếu sử dụng mount không tham số, tất hệ thống file gắn kết hệ thống liệt kê hình Kết giống file /etc/mtab Ngoài ra, nhân lưu giữ thông tin hệ thống file. .. việc biết hiểu cấu trúc hệ thống tập tin Linux thật quan trọng Linux có khả hỗ trợ nhiều loại file hệ thống với công nghệ tích hợp vào bên kernel Các thành phần hệ thống tệp tin + Superblock + Inode... byte): Lưu thông tin tập tin thư mục tạo hệ thống tập tin Nhưng chúng không lưu tên tập tin thư mục thực Mỗi tập tin tạo phân bổ inode lưu thông tin sau: + Loại tập tin quyền hạn truy cập tập tin +

Ngày đăng: 27/12/2019, 09:48

Từ khóa liên quan

Mục lục

  • 1. Các thành phần của hệ thống tệp tin

  • 2. Các tùy chọn File System: Có khá nhiều dạng file hệ thống trong Linux, và mỗi loại sẽ được áp dụng với từng mục đích riêng biệt. Điều này không có nghĩa rằng những file hệ thống này không thể được áp dụng trong trường hợp khác, mà tùy theo nhu cầu và mục đích của người sử dụng, chúng ta sẽ đưa ra phương án phù hợp. - Ext - Extended file system: là định dạng file hệ thống đầu tiên được thiết kế dành riêng cho Linux. Có tổng cộng 4 phiên bản và mỗi phiên bản lại có 1 tính năng nổi bật. Phiên bản đầu tiên của Ext là phần nâng cấp từ file hệ thống Minix được sử dụng tại thời điểm đó, nhưng lại không đáp ứng được nhiều tính năng phổ biến ngày nay. Và tại thời điểm này, chúng ta không nên sử dụng Ext vì có nhiều hạn chế, không còn được hỗ trợ trên nhiều distribution. - Ext2 - The Second Extended File System: thực chất không phải là file hệ thống journaling, được phát triển để kế thừa các thuộc tính của file hệ thống cũ, đồng thời hỗ trợ dung lượng ổ cứng lên tới 2 TB. Ext2 không sử dụng journal cho nên sẽ có ít dữ liệu được ghi vào ổ đĩa hơn. Do lượng yêu cầu viết và xóa dữ liệu khá thấp, cho nên rất phù hợp với những thiết bị lưu trữ bên ngoài như thẻ nhớ, ổ USB... Còn đối với những ổ SSD ngày nay đã được tăng tuổi thọ vòng đời cũng như khả năng hỗ trợ đa dạng hơn, và chúng hoàn toàn có thể không sử dụng file hệ thống không theo chuẩn journaling. - Ext3 về căn bản chỉ là Ext2 đi kèm với journaling. Mục đích chính của Ext3 là tương thích ngược với Ext2, và do vậy những ổ đĩa, phân vùng có thể dễ dàng được chuyển đổi giữa 2 chế độ mà không cần phải format như trước kia. Tuy nhiên, vấn đề vẫn còn tồn tại ở đây là những giới hạn của Ext2 vẫn còn nguyên trong Ext3, và ưu điểm của Ext3 là hoạt động nhanh, ổn định hơn rất nhiều. Không thực sự phù hợp để làm file hệ thống dành cho máy chủ bởi vì không hỗ trợ tính năng tạo disk snapshot và file được khôi phục sẽ rất khó để xóa bỏ sau này. - Ext4: cũng giống như Ext3, lưu giữ được những ưu điểm và tính tương thích ngược với phiên bản trước đó. Như vậy, chúng ta có thể dễ dàng kết hợp các phân vùng định dạng Ext2, Ext3 và Ext4 trong cùng 1 ổ đĩa trong Ubuntu để tăng hiệu suất hoạt động. Trên thực tế, Ext4 có thể giảm bớt hiện tượng phân mảnh dữ liệu trong ổ cứng, hỗ trợ các file và phân vùng có dung lượng lớn... Thích hợp với ổ SSD so với Ext3, tốc độ hoạt động nhanh hơn so với 2 phiên bản Ext trước đó, cũng khá phù hợp để hoạt động trên server, nhưng lại không bằng Ext3. - BtrFS – thường phát âm là Butter hoặc Better FS, hiện tại vẫn đang trong giai đoạn phát triển bởi Oracle và có nhiều tính năng giống với ReiserFS. Đại diện cho B-Tree File System, hỗ trợ tính năng pool trên ổ cứng, tạo và lưu trữ snapshot, nén dữ liệu ở mức độ cao, chống phân mảnh dữ liệu nhanh chóng... được thiết kế riêng biệt dành cho các doanh nghiệp có quy mô lớn. Mặc dù BtrFS không hoạt động ổn định trên 1 số nền tảng distro nhất định, nhưng cuối cùng thì nó vẫn là sự thay thế mặc định của Ext4 và cung cấp chế độ chuyển đổi định dạng nhanh chóng từ Ext3/4. Do vậy, BtrFS rất phù hợp để hoạt động với server dựa vào hiệu suất làm việc cao, khả năng tạo snapshot nhanh chóng cũng như hỗ trợ nhiều tính năng đa dạng khác. Bên cạnh đó, Oracle cũng đang cố gắng phát triển 1 nền tảng công nghệ nhằm thay thế cho NFS và CIFS gọi là CRFS với nhiều cải tiến đáng kể về mặt hiệu suất và tính năng hỗ trợ. Những cuộc kiểm tra trên thực tế đã chỉ ra BtrFS đứng sau Ext4 khi áp dụng với các thiết bị sử dụng bộ nhớ Flash như SSD, server database... - ReiserFS: có thể coi là 1 trong những bước tiến lớn nhất của file hệ thống Linux, lần đầu được công bố vào năm 2001 với nhiều tính năng mới mà file hệ thống Ext khó có thể đạt được. Nhưng đến năm 2004, ReiserFS đã được thay thế bởi Reiser4 với nhiều cải tiến hơn nữa. Tuy nhiên, quá trình nghiên cứu, phát triển của Reiser4 khá “chậm chạp” và vẫn không hỗ trợ đầy đủ hệ thống kernel của Linux. Đạt hiệu suất hoạt động rất cao đối với những file nhỏ như file log, phù hợp với database và server email. - XFS được phát triển bởi Silicon Graphics từ năm 1994 để hoạt động với hệ điều hành riêng biệt của họ, và sau đó chuyển sang Linux trong năm 2001. Khá tương đồng với Ext4 về một số mặt nào đó, chẳng hạn như hạn chế được tình trạng phân mảnh dữ liệu, không cho phép các snapshot tự động kết hợp với nhau, hỗ trợ nhiều file dung lượng lớn, có thể thay đổi kích thước file dữ liệu... nhưng không thể shrink – chia nhỏ phân vùng XFS. Với những đặc điểm như vậy thì XFS khá phù hợp với việc áp dụng vào mô hình server media vì khả năng truyền tải file video rất tốt. Tuy nhiên, nhiều phiên bản distributor yêu cầu phân vùng /boot riêng biệt, hiệu suất hoạt động với các file dung lượng nhỏ không bằng được khi so với các định dạng file hệ thống khác, do vậy sẽ không thể áp dụng với mô hình database, email và một vài loại server có nhiều file log. Nếu dùng với máy tính cá nhân, thì đây cũng không phải là sự lựa chọn tốt nên so sánh với Ext, vì hiệu suất hoạt động không khả thi, ngoài ra cũng không có gì nổi trội về hiệu năng, quản lý so với Ext3/4. - JFS được IBM phát triển lần đầu tiên năm 1990, sau đó chuyển sang Linux. Điểm mạnh rất dễ nhận thấy của JFS là tiêu tốn ít tài nguyên hệ thống, đạt hiệu suất hoạt động tốt với nhiều file dung lượng lớn và nhỏ khác nhau. Các phân vùng JFS có thể thay đổi kích thước được nhưng lại không thể shrink như ReiserFS và XFS, tuy nhiên nó lại có tốc độ kiểm tra ổ đĩa nhanh nhất so với các phiên bản Ext. - ZFS hiện tại vẫn đang trong giai đoạn phát triển bởi Oracle với nhiều tính năng tương tự như Btrfs và ReiserFS. Mới xuất hiện trong những năm gần đây vì có tin đồn rằng Apple sẽ dùng nó làm file hệ thống mặc định. Phụ thuộc vào thỏa thuận điều khoản sử dụng, Sun CDDL thì ZFS không tương thích với hệ thống nhân kernel của Linux, tuy nhiên vẫn hỗ trợ toàn bộ Linux’s Filesystem in Userspace – FUSE để có thể sử dụng được ZFS. Người sử dụng có thể gặp khó khăn khi cài đặt hệ điều hành Linux vì có yêu cầu FUSE và có thể không được hỗ trợ bởi distributor. - Swap có thể coi thực sự không phải là 1 dạng file hệ thống, bởi vì cơ chế hoạt động khá khác biệt, được sử dụng dưới 1 dạng bộ nhớ ảo và không có cấu trúc file hệ thống cụ thể. Không thể kết hợp và đọc dữ liệu được, nhưng lại chỉ có thể được dùng bởi kernel để ghi thay đổi vào ổ cứng. Thông thường, nó chỉ được sử dụng khi hệ thống thiếu hụt bộ nhớ RAM hoặc chuyển trạng thái của máy tính về chế độ Hibernate. Journaling là gì? Điểm trước tiên cần tìm hiểu ở đây chính là Journaling trước khi chúng ta nghiên cứu kỹ hơn về vấn đề này. Điều duy nhất các bạn cần nhớ về journaling là tất cả các loại file hệ thống ngày nay đều phải sử dụng journaling theo nhiều dạng khác nhau trên nền tảng laptop hoặc desktop với Linux. Journaling chỉ được sử dụng khi ghi dữ liệu lên ổ cứng và đóng vai trò như những chiếc đục lỗ để ghi thông tin vào phân vùng. Đồng thời, nó cũng khắc phục vấn đề xảy ra khi ổ cứng gặp lỗi trong quá trình này, nếu không có journal thì hệ điều hành sẽ không thể biết được file dữ liệu có được ghi đầy đủ tới ổ cứng hay chưa. Chúng ta có thể hiểu nôm na như sau: trước tiên file sẽ được ghi vào journal, đẩy vào bên trong lớp quản lý dữ liệu, sau đó journal sẽ ghi file đó vào phân vùng ổ cứng khi đã sẵn sàng. Và khi thành công, file sẽ được xóa bỏ khỏi journal, đẩy ngược ra bên ngoài và quá trình hoàn tất. Nếu xảy ra lỗi trong khi thực hiện thì file hệ thống có thể kiểm tra lại journal và tất cả các thao tác chưa được hoàn tất, đồng thời ghi nhớ lại đúng vị trí xảy ra lỗi đó. Tuy nhiên, nhược điểm của việc sử dụng journaling là phải “đánh đổi” hiệu suất trong việc ghi dữ liệu với tính ổn định. Bên cạnh đó, còn có nhiều công đoạn khác để ghi dữ liệu vào ổ cứng nhưng với journal thì quá trình không thực sự là như vậy. Thay vào đó thì chỉ có file metadata, inode hoặc vị trí của file được ghi lại trước khi thực sự ghi vào ổ cứng.

  • 3. Tổ chức tập tin trên Linux

  • 4 Các thành phần trong tệp tin Linux

  • 5 Kiểm tra dung lượng đĩa

  • 6. Quyền truy xuất File, Thư mục

Tài liệu cùng người dùng

Tài liệu liên quan