Hệ thống tệp nén chỉ đọc (Read-Only File System) là một hệ thống tệp được nén và người dùng chỉ có quyền đọc (read) dữ liệu từ các tệp và thư mục, không có quyền ghi (write) hoặc chỉnh sửa.
Ưu điểm :
Bảo mật: Bằng cách giảm quyền ghi, hệ thống tập tin chỉ đọc có thể giảm nguy cơ bị tấn công từ phía người dùng bất hợp pháp hoặc malware.
Tính ổn định: Trong một số hệ thống như hệ điều hành nhúng (embedded systems) hoặc các hệ thống nhỏ gọn, việc sử dụng hệ thống tập tin chỉ đọc có thể giúp đảm bảo tính ổn định của hệ thống.
Tính Không Thay Đổi: Trong môi trường nơi dữ liệu không nên thay đổi, như trong các ứng dụng chạy trên thiết bị nhúng, việc sử dụng hệ thống tập tin chỉ đọc giúp bảo vệ dữ liệu khỏi sự sửa đổi không mong muốn.
Live CDs và USB Bootable: Trong các hệ thống live CDs hoặc USB bootable, hệ thống tập tin chỉ đọc được sử dụng để giữ cho hệ điều hành chạy từ phương tiện truyền thông mà không cần phải ghi dữ liệu trở lại chúng.
Phân Vùng Firmware: Trong một số trường hợp, các phân vùng firmware trên các thiết bị nhúng hoặc thiết bị IoT có thể được thiết lập là chỉ đọc để bảo vệ khỏi việc thay đổi không mong muốn.
Hệ Thống Tập Tin Nén Chỉ Đọc Trên Router /AP/Camera :
Trên các thiết bị nhúng như router/AP, vì bộ nhớ dung lượng tương đối nhỏ và cũng để đảm bảo độ ổn định cao tránh các lỗi khi tập tin hệ thống bị sửa đổi nên thường sẽ dùng hệ thống tập tin nén chỉ đọc.
Thông thường 1 hệ thống sẽ bao gồm Uboot, Kernel + Rootfs ở dạng nén chỉ đọc, phân vùng UserData ở dạng cho phép đọc - ghi (Read-Write), sau giải nén dữ liệu Kernel + Rootfs sẽ nằm ở 1 hệ thống tập tin tạm thời trên RAM gọi là RAMFS. Quá trình khởi động là :
+ Khi Uboot khởi động nó sẽ nạp giải nén bootfs (kernel) vào RAM để khởi chạy.
+ Sau khi Kernel khởi chạy nó sẽ tìm các thành phần như hệ thống tập tin gốc rootfs và tiến hành giải nén vào RAM.
+ Các cấu hình tiến trình hoặc phần mềm cài thêm sẽ được đặt trong phân vùng Read-Write (phân vùng dữ liệu người dùng UserData), phân vùng này sẽ không bị mất dữ liệu khi tắt điện. Tuy nhiên nó sẽ bị mất dữ liệu khi tiến hành Reset Factory.
Một số hệ thống tập tin nén chỉ đọc :
+ SquashFS:
SquashFS là một hệ thống tệp nén chỉ đọc được sử dụng rộng rãi trong các hệ thống Linux nhúng và trong các ứng dụng như các hệ thống Live CD. Nó cung cấp khả năng nén cao và đọc hiệu quả.
+ UBIFS (UBI File System):
UBIFS là một hệ thống tệp chỉ đọc được thiết kế cho các thiết bị lưu trữ NAND flash. Nó được sử dụng trong Linux và thường được dùng trong các hệ thống nhúng.
+ ROMFS:
ROMFS (Read-Only File System) là một hệ thống tệp chỉ đọc đơn giản thường được sử dụng trong các hệ thống nhúng. Nó không hỗ trợ việc ghi dữ liệu.
+ JFFS2 (Journalling Flash File System 2):
JFFS2 là một hệ thống tệp chịu ghi được thiết kế đặc biệt cho lưu trữ flash. Mặc dù nó có thể hỗ trợ việc ghi, nhưng nó cũng có thể được cấu hình để chạy trong chế độ chỉ đọc.
+ CramFS:
CramFS là một hệ thống tệp nén chỉ đọc được sử dụng trong các hệ thống nhúng. Nó nén dữ liệu hiệu quả và chỉ hỗ trợ quyền đọc.
Chú ý : Nên đặc biệt lưu ý tránh làm gián đoạn trong quá trình update firmware cho thiết bị như bị mất điện, đặc biệt trên các thiết bị không có phân vùng dự phòng. Vì thông thường các tập tin chỉ được lưu tạm thời trên RAM, khi RAM mất điện sẽ mất dữ liệu khiến cho quá trình Update không thể tiếp tục, tập tin hệ thống bị lỗi sẽ không thể khởi động.