Tôi dùng trang USB storage của OpenWrt khi cần gắn HDD, SSD hoặc flash drive để lưu dữ liệu, chạy Samba/NAS hoặc làm nơi chứa file. Nếu mục tiêu là mở rộng overlay để cài thêm package, đây không phải toàn bộ quy trình extroot; tôi tách hai mục tiêu này ngay từ đầu.[25]
Cảnh báo: Bước format sẽ xóa dữ liệu của partition. Trước khi chạy
mkfs.*, kiểm tra đúng/dev/sda1hoặc thiết bị tương ứng và có backup riêng.[25]
1. Cài và kiểm tra USB driver
Làm mới danh sách package, cài driver storage và thêm UAS nếu thiết bị cần:[25]
| |
Cắm USB rồi kiểm tra:[25]
| |
Một output hợp lệ có thể có root_hub với driver xhci-mtk/ehci và một dòng Class=Mass Storage dùng usb-storage hoặc usb-storage-uas. Tôi cần thấy driver name, không có lỗi ở chuỗi USB; nếu không, quay lại phần cài driver hoặc reboot rồi thử lại.[25]
2. Xác nhận disk và partition
Giữ USB đang cắm và xem block device:[25]
| |
Output cần có một disk như /dev/sda hoặc /dev/sdb, cùng partition nếu disk đã được chia sẵn:[25]
| |
Cài công cụ để xem UUID/filesystem:[25]
| |
Ví dụ block info có thể trả về:[25]
| |
Nếu không thấy disk, kiểm tra lại USB driver và reboot. Nếu có nhiều thiết bị, /dev/sdb1, /dev/sdc1... là các partition của disk tiếp theo; không lấy ví dụ /dev/sda1 thay cho output thực tế.[25]
3. Tạo partition mới bằng gdisk
Chỉ làm phần này khi bước trước không có partition như /dev/sda1:[25]
| |
Trong giao diện tương tác của gdisk:[25]
- Gõ
nđể tạo partition.[25] - Giữ các giá trị mặc định được gợi ý cho number, starting sector, size và Hex code nếu phù hợp.[25]
- Gõ
wđể ghi thay đổi.[25] - Gõ
Yđể xác nhận.[25] - Ghi lại tên partition mới cho bước format.[25]
Tài liệu khuyến nghị một partition để khớp quy trình kế tiếp; lệnh ? trong gdisk mở trợ giúp.[25]
4. Cài filesystem và format
Driver filesystem phải được cài kể cả khi partition đã format từ trước. Với EXT4 trên HDD USB:[25]
| |
Với exFAT:[25]
| |
Với F2FS trên SSD hoặc thumb drive:[25]
| |
/dev/sda1 chỉ là ví dụ. Tôi thay bằng partition đã xác định và kiểm tra backup trước khi format. Với NTFS, dùng driver/quy trình NTFS phù hợp thay vì chạy mkfs.ext4 lên partition đang chứa dữ liệu.[25]
5. Tạo automount bằng fstab
Sinh entry từ block device, bật mount và tùy chọn kiểm tra filesystem khi boot:[25]
| |
Reboot để kiểm tra rồi xem cấu hình:[25]
| |
Tôi cần thấy enabled='1', một target kiểu /mnt/sda1 và UUID đúng. Kiểm tra điểm mount:[25]
| |
Một output xác nhận có thể chứa:[25]
| |
6. Tùy chọn spindown cho NAS
Phương án A: hdparm
hdparm ghi timer theo lệnh SATA vào chính ổ đĩa; nhiều adapter USB2 cũ không hỗ trợ, trong khi một số USB3 SATA có thể hỗ trợ. Cài và thử timer 10 phút:[25]
| |
Nếu lệnh lỗi, adapter/drive có thể không hỗ trợ lệnh spindown này. Giá trị 0 tắt timeout; 1–240 là bội số 5 giây, từ 5 giây đến 20 phút; 241–251 là đơn vị 30 phút, từ 30 phút đến 5,5 giờ.[25]
Nếu muốn áp dụng lại khi boot, tài liệu đưa ví dụ trong /etc/rc.local:[25]
| |
Phương án B: hd-idle với LuCI
hd-idle chạy như service riêng của OpenWrt và phát lệnh spindown khi bộ đếm idle về 0. Cài bản có giao diện LuCI:[25]
| |
Vào Services → HDD Idle để bật và cấu hình. Nếu chỉ muốn CLI:[25]
| |
Sau đó sửa /etc/config/hd-idle, bật và chạy service:[25]
| |
Các tùy chọn chính của hd-idle là disk (mặc định sda), enabled (mặc định 0), idle_time_unit (mặc định minutes) và idle_time_interval (mặc định 10). Tôi thay sda bằng identifier đúng của ổ, không dùng /dev/sda2 của ví dụ nếu layout thực tế khác.[25]
Kiểm tra cuối và giới hạn
Sau khi mount, thử đọc/ghi một file không quan trọng và kiểm tra log nếu disk biến mất sau reboot. USB bus, filesystem, loại ổ, nguồn cấp và adapter đều ảnh hưởng kết quả; page này cấu hình storage chứ không chứng minh mọi adapter đều hỗ trợ UAS hoặc spindown.[25]
Nguồn
Tài liệu gốc: [Using storage devices]1, đăng/cập nhật 2025-09-30.[25]
[25] https://openwrt.org/docs/guide-user/storage/usb-drives — OpenWrt Wiki: Using storage devices
https://openwrt.org/docs/guide-user/storage/usb-drives — Using storage devices. ↩︎


Góp Ý / Bình Luận / Đánh giá