Tôi đã thiết lập một ổ đĩa RAM trên Linux chỉ với một dòng lệnh và các ứng dụng của tôi chưa bao giờ chạy nhanh đến thế
Sau khi thiết lập một bản build Linux nhanh, hệ thống của tôi vẫn cảm thấy hơi khác thường. Đây không phải là trường hợp các chương trình bị treo hay các lỗi thông thường mà bạn mong đợi trên một cài đặt mới. Mọi thứ chỉ chậm hơn một chút so với tôi mong muốn. Việc cài đặt dường như kéo dài, và tôi thấy những độ trễ nhỏ trong các tác vụ thường ngày. Điều này hơi khó hiểu vì tôi sử dụng RAM ít và SSD vẫn ổn.
Vì vậy, tôi đã quyết định thay đổi cách hệ thống của mình xử lý các đọc và ghi nhỏ liên tục bằng cách chuyển sang đĩa RAM, điều này yêu cầu một mục fstab duy nhất và chuyển hướng một số thư mục có hoạt động cao. Đây là lần nhanh nhất mà tôi từng thấy một hệ thống chuyển từ chậm sang nhanh.
Nơi mà một ổ đĩa RAM thực sự tạo ra sự khác biệt
Không phải về mọi thứ—mà là về khối lượng công việc đúng đắn
Khi bạn sử dụng đĩa RAM, bạn thực sự đang xử lý một phần bộ nhớ của mình như một ổ lưu trữ. Đây không chỉ là một kỹ thuật để cải thiện tốc độ thô. Nó thực sự giảm đáng kể độ trễ, đặc biệt đối với các quy trình làm việc yêu cầu đọc và ghi các tệp nhỏ thường xuyên.
SSD hiện đại có thể rất nhanh, và với công nghệ cải tiến như SSD NVMe, chúng thậm chí có thể còn tốt hơn. Tuy nhiên, bạn vẫn có thể gặp phải một số độ trễ khi chúng phải xử lý hàng nghìn thao tác nhỏ. Đây chính là tình huống mà ổ RAM có thể tạo ra sự khác biệt, và việc di chuyển bất kỳ loại tệp nào được liệt kê dưới đây có thể mang lại hiệu quả lớn nhất:
- Bộ nhớ đệm trình duyệt (sự cải thiện đáng chú ý nhất)
- Thư mục biên dịch và xây dựng
- Dữ liệu ứng dụng tạm thời hoặc nhiều dấu vết
Tôi tránh đưa các tệp tin liên tục quan trọng và dữ liệu media lớn hoặc nặng vào ổ đĩa RAM của mình. Đây là quy tắc chung: các hệ thống thực hiện công việc I/O lặp đi lặp lại nhỏ sẽ hoạt động tốt trên ổ đĩa RAM.
Loại khối lượng công việc | Mức lợi ích |
|---|---|
Bộ nhớ đệm trình duyệt | Rất cao |
|
Biên dịch/xây dựng | Cao |
Tệp tạm/thô | Cao |
Lưu trữ tệp lớn | None |
Cài đặt một dòng hoạt động ngay
Mục fstab chính xác và mỗi phần của nó có chức năng gì
Cài đặt đĩa RAM trên hệ thống Linux Mint của tôi yêu cầu dòng đơn này trong /etc/fstab:
tmpfs /mnt/ramdisk tmpfs defaults,noatime,nosuid,nodev,size=2G 0 0Bạn có thể mở và chỉnh sửa tập tin fstab bằng cách chạy lệnh này trên terminal Linux của bạn: sudo nano /etc/fstab
Với điều này, bạn đã sẵn sàng, và đây là những phần của mã này thực sự quan trọng:
- tmpfs: Nói với Linux sử dụng hệ thống tệp dựa trên RAM
- /mnt/ramdisk: Nơi mà nó sẽ được gắn
- noatime: Ngăn chặn các thao tác ghi không cần thiết
- size=2G: Giới hạn bao nhiêu RAM nó có thể sử dụng
Trên đĩa RAM, các lần cập nhật atime tạo ra các ghi metadata khi đọc; noatime vô hiệu hóa các cập nhật đó, giảm tải ghi không cần thiết.
Kích thước bạn sử dụng thực tế hơn là lý thuyết. Trên hệ thống này, tôi có 16GB RAM, vì vậy tôi có thể an toàn phân bổ từ 1 đến 4GB. Cuối cùng, bạn muốn phân bổ đủ để nó hữu ích, nhưng không quá nhiều khiến các ứng dụng đang chạy khó hoạt động.
Trước khi khởi động lại hệ thống của bạn, hãy kiểm tra đĩa RAM bằng cách chạy lệnh này:
sudo mount -aSau đó sử dụng lệnh này để xác nhận rằng nó đang hoạt động:
df -h | grep ramdiskBây giờ hệ thống tệp của bạn nên nhanh và sẵn sàng để sử dụng, mặc dù hiện tại không có gì đang sử dụng nó.
Bước thực sự tạo ra sự khác biệt
Tạo liên kết tượng trưng cho thư mục cache của ứng dụng của bạn
Một ổ đĩa RAM đã gắn không làm gì cho đến khi các ứng dụng bắt đầu ghi vào nó. Bạn phải hướng các thư mục cụ thể đến nó. Cách tốt nhất để thực hiện điều này là sử dụng liên kết tượng trưng (symlink), và đây là một quy trình hai bước:
- Di chuyển thư mục cache hiện có sang đĩa RAM của bạn
- Tạo một liên kết biểu tượng trỏ trở lại vị trí gốc
Ví dụ, đối với Chrome, hai bước sẽ là chạy các lệnh dưới đây:
mv ~/.cache/google-chrome /mnt/ramdisk/Default/Cache /mnt/ramdisk/chrome-cache
ln -s /mnt/ramdisk/chrome-cache ~/.cache/google-chrome/Default/CacheTrong khi những lệnh này tương đương với Firefox:
mv ~/.cache/mozilla /mnt/ramdisk/
ln -s /mnt/ramdisk/mozilla ~/.cache/mozillaSau khi chạy các lệnh này, mọi đọc/ghi cache của Chrome và Firefox bây giờ sẽ diễn ra trong RAM và không phải trên ổ đĩa truyền thống của bạn. Nhưng vì các ổ đĩa RAM sẽ bị xóa khi khởi động lại, bạn phải lưu ý những điều sau:
- Các thư mục bộ nhớ đệm sẽ cần được tạo lại
- Liên kết tượng trưng vẫn phải trỏ đến một vị trí hợp lệ
Đây là một nhiệm vụ lặp đi lặp lại mà bạn có thể tự động hóa trên Linux. Tôi đặc biệt thích sử dụng một tập lệnh khởi động nhỏ, nhưng một công cụ như profile-sync-daemon có thể là cách xử lý các hồ sơ trình duyệt trong RAM tinh tế hơn.
Một số thứ trở nên ngay lập tức — những thứ khác thì hoàn toàn không di chuyển
Một khi tôi thực hiện thay đổi này, trình duyệt của tôi cảm thấy nhanh hơn ngay lập tức. Và điều này không chỉ là tốc độ khởi động mà còn mọi thứ khác, bao gồm khôi phục các tab, tải các trang đã lưu trong bộ nhớ đệm và chuyển đổi giữa các phiên làm việc. Tôi đã đo thời gian một vài nhiệm vụ để xem sự khác biệt có rõ ràng hay không:
Nhiệm vụ | Trước | Sau |
|---|---|---|
Khởi chạy trình duyệt | ~3-4 giây | |
Khôi phục tab | ~2 giây | Gần như tức thì |
Cài đặt gói | Ghi chậm hơn | Kết thúc nhanh hơn |
Quy trình xây dựng | Tạm dừng I/O | Chạy mượt hơn |
Miễn là điều gì đó dựa nhiều vào bộ nhớ đệm hoặc ghi tạm thời, tôi đã thấy những cải thiện thực sự. Tôi thậm chí còn thấy tốc độ cài đặt được cải thiện vì các thao tác metadata và tập tin nhỏ được thực hiện hiệu quả hơn. Quá trình xây dựng cũng trơn tru và ổn định hơn, mặc dù không nhất thiết là nhanh hơn. Tôi đã ghi nhận ít khoảng dừng và thời gian chờ giữa các bước hơn.
Tuy nhiên, trước khi bạn chuyển sang ổ đĩa RAM, bạn nên biết rằng nó đánh đổi khả năng lưu trữ bền vững lấy tốc độ, vì vậy một sự cố hoặc tắt máy sẽ xóa dữ liệu. Tôi khuyên nên bắt đầu với dung lượng nhỏ (1-2GB). Ngoài ra, tránh đưa vào bất cứ thứ gì bạn không thể mất. Một ổ đĩa RAM được cấu hình tốt là một cách thực tế để cải thiện hiệu suất trên thiết bị của bạn.







