Newbie

Swap là gì

swap

swap

Swap là khái niệm bộ nhớ ảo được sử dụng trên hệ điều hành Linux. Khi một máy cài Linux hoạt động, nếu hết RAM hệ thống sẽ tự động sử dụng một phần ổ cứng để làm bộ nhớ cho các ứng dụng hoạt động.

Do sử dụng ổ cứng có tốc độ chậm hơn RAM đó là lẽ hiển nhiên, nếu nhanh hơn người ta đã dùng ổ cứng làm RAM rồi chứ không phải bỏ ra số tiền lớn để mua RAM làm gì (Giá RAM > Giá ổ cứng)

Lời khuyên tốt nhất của mình là nếu máy bạn RAM >6GB thì bạn chả cần xài Swap làm gì

Cách cấu hình swap cho máy chạy Linux
B1: Kiểm tra
Mở Terminal và gõ lệnh cat /proc/sys/vm/swappiness
Quan sát giá trị trả về (Giá trị này gọi là swappiness)

Nếu swappiness là 60 thì có nghĩa là khi RAM của các bạn vượt quá 40% thì bộ nhớ swap bắt đầu được kích hoạt

swappiness = 0: swap chỉ được dùng khi RAM được sử dụng hết.
swappiness = 10: swap được sử dụng khi RAM còn 90%.
swappiness = 60: swap được sử dụng khi RAM còn 40%.
swappiness = 100: swap được ưu tiên như là RAM.

B2: Tinh chỉnh
Với những máy 6GB RAM trở lên thì nếu các bạn để giá trị swap mặc định (60) Thì khi các bạn dùng hết từ 3-4 GB RAM thì sẽ thấy hiệu năng hệ thống giảm rõ rệt, do đó mình khuyên các bạn nên chỉnh swappiness về 0 để tận dụng hết hiệu năng của hệ thống, còn các bạn RAM thấp hơn muốn chỉnh swap lên cao hơn thì cũng được

– Các bạn gõ lệnh sudo leafpad /etc/sysctl.conf
Nếu báo lỗi thì các bạn có thể thử gõ các lệnh sau
sudo gedit etc/sysctl.conf
sudo nano etc/sysctl.conf
sudo vim etc/sysctl.conf
Còn nếu vẫn lỗi thì các bạn gõ lệnh apt-get install leafpad rồi tiếp tục thực hiện

Các bạn thêm dòng vm.swappiness=giá trị swappiness bạn mong muốn vào cuối file sau đó lưu lại (Nếu đã có dòng này, các bạn chỉ việc sửa lại)
Ví dụ nếu bạn để vm.swappiness=0 thì có nghĩa là Linux gần như chỉ xài swap khi RAM thật hết
Còn bạn để vm.swappiness=70 thì có nghĩa là Linux sẽ xài Swap khi RAM thật hết 100%-70%=30%
B3: Khởi động lại máy
B4: Tận hưởng

Nếu áp dụng cách này xong mà máy vẫn chậm bạn có thể tham khảo bài Làm thế nào để dọn RAM trên Linux?

Hits: 1656