Tôi đang cố gắng thiết lập Linux để trì hoãn việc ghi càng nhiều càng tốt (phút). Đối với những người thắc mắc tại sao: đây là âm mưu của Chia.Nó được thực hiện rất nhiều trong SSD/NVMe, nếu hệ thống gặp sự cố, bạn vẫn phải khởi động lại từ đầu.
Giảm thiểu việc ghi vào đĩa thực sự làm tăng tuổi thọ cho đĩa.
Điều đó nói rằng tôi đã thiết lập một hệ thống thử nghiệm (20.04.1-Ubuntu LTS trong VM Hyper V - Windows 10).
Tôi thiết lập các cờ "bẩn" của mình là:
Sudo sysctl -a | bẩn thỉu
vm.dirty_background_bytes = 0
vm.dirty_background_ratio = 75
vm.dirty_bytes = 0
vm.dirty_expire_centisecs = 120000
vm.dirty_ratio = 80
vm.dirty_writeback_centisecs = 180000
vm.dirtytime_expire_seconds = 43200
Điều đó mang lại cho tôi khoảng 3GB bộ nhớ cache (Tôi đang sử dụng 4GB ram cho máy ảo này).
Tôi đang theo dõi những điều này hướng dẫn để kiểm tra, đã thay đổi thành cái này (vì vậy nó là ngẫu nhiên và 1GB)
dd if=/dev/random of=testfile.txt bs=1 triệu đếm=1000
Và sử dụng
mèo /proc/meminfo | grep Bẩn thỉu
mèo /proc/vmstat | egrep "bẩn | ghi lại"
Để xem liệu số lượng trang bẩn có tăng lên hay không.
Số lượng trang bẩn tăng như mong đợi cho đến khi đ kết thúc. Khi nó kết thúc, số lượng trang bẩn gần như ngay lập tức về 0 và Windows bắt đầu ghi dữ liệu (Tôi đang theo dõi phía Windows bằng cách sử dụng Trình giám sát tài nguyên để xem khi nào việc ghi thực sự vào đĩa).
Vậy ... có phải vì Linux xóa tệp ngay khi nó bị đóng bởi dd không? có lẽ đó là dd đang xả nước? Tôi đã mong đợi tệp vẫn còn trong các trang bẩn vì nó nhỏ hơn dung lượng có sẵn cho tệp đó (hệ thống kiểm tra này không làm gì khác).
Bất kỳ ý tưởng? Cảm ơn.