Trong bài này mình sẽ giải thích khái niệm về các file Ext2, Ext3 & Ext4 trong Linux, đây là hệ thống file hệ thống (file system) của Linux nên bạn phải hiểu để sử dụng cho đúng.
Qua bài này bạn cũng sẽ biết cách chuyển đổi định dang các file này. Tuy nhiên, cần phải lưu ý rằng bạn nên tạo một bản backup cho an toàn nhé, bởi những file hệ thống này rất quan trọng, nếu có sai sót gì thì ta có thể phục hồi nó được qua bản backup.
Hệ thống file Linux được chia thành hai phân đoạn được gọi là User Data và Metadata. Trong bài viết này, ta sẽ khám phá cách tạo và chuyển đổi các file hệ thống trên Linux, cũng như tìm hiểu sự khác biệt các file hệ thống Ext2, Ext3 và Ext4.
Ext2 - File hệ thống mở rộng thứ hai
File ext2 được giới thiệu vào năm 1993 và Ext2 được phát triển bởi Remy Card. Đây là file hệ thống mặc định đầu tiên trong một số bản phân phối Linux như RedHat và Debian.
Bài viết này được đăng tại [free tuts .net]
File Ext3 được giới thiệu vào năm 2001, được tích hợp và Kernel 2.4.15 với tính năng ghi nhật ký, nhằm cải thiện độ tin cậy và loại bỏ nhu cầu kiểm tra hệ thống file sau khi tắt máy đột ngột.
Ext4 là file mở rông nâng cấp từ Ext3 được mong đợi rất cao.
Để kiểm tra loại file hệ thống của bạn đang ở định dạng nào thì sử dụng đoạn code dưới đây, chạy trên terminal với quyền root.
1 2 3 |
# df -hT | awk '{print $1,$2,$NF}' | grep "^/dev" /dev/sda3 ext3 / /dev/sda1 ext3 /boot |
Ta có thể sử dụng hai lệnh fdisk hoặc parted để tạo file hệ thống, nhưng tốt nhất bạn nên sử dụng lệnh mke2fs để chỉ định rõ thể loại cần tạo.
Các ví dụ dưới đây là mình tạo file có tên là hdXX, bạn có thể thay thế nó bằng cái tên khác theo ý riêng của mình.
Tạo file Ext21 | # mke2fs /dev/hdXX |
1 2 3 |
# mke2fs –j /dev/hdXX OR # mkfs.ext3 /dev/hdXX |
Tùy chọn -j sử dụng để ghi nhật ký.
Tạo file Ext41 2 3 |
# mke2fs -t ext4 /dev/hdXX OR # mkfs.ext4 /dev/hdXX |
Tùy chọn -t chỉ định loại file.
Như mình đã nói ở đầu, bạn nên copy ra một bản backup trước khi chuyển đổi, tránh trường hợp bị lỗi thì ta có file backup để phục hồi.
Để chuyển đổi giữa các định dạng file thì bạn sử dụng các đoạn code dưới đây (đổi tên file hdXX thành tên file trong máy tính của bạn).
Để thay đổi file Ext2 thành Ext3 và bật tính năng nhật ký, hãy sử dụng lệnh.
1 | # tune2fs -j /dev/hdXX |
Để chuyển đổi từ file Ext2 cũ sang file Ext4 với tính năng ghi nhật ký mới nhất. Chạy lệnh sau.
1 | # tune2fs -O dir_index,has_journal,uninit_bg /dev/hdXX |
Tiếp theo, thực hiện kiểm tra toàn bộ hệ thống tệp bằng lệnh e2fsck để khắc phục và sửa chữa file sau khi chuyển.
1 | # e2fsck -pf /dev/hdXX |
Tùy chọn -p tự động sửa chữa file hệ thống.
Tùy chọn -f buộc phải kiểm tra file hệ thống ngay cả khi nó có vẻ sạch sẽ.
Để bật các tính năng của Ext4 trên file Ext3 thì hãy sử dụng lệnh.
1 | # tune2fs -O extents,uninit_bg,dir_index /dev/hdX |
Tương tự, bạn phải chạy lệnh sau để fix lỗi file sau khi chuyển.
1 | # e2fsck -pf /dev/hdXX |
Cảnh báo: Bạn nên chạy những lệnh trên ở một server test nhé, đừng chạy trên server chính, trừ khi bạn là một quản trị viên chuyên nghiệp.