Monday, January 16, 2017

Tìm hiểu về Swap trong Linux

Đăng bởi   vào   Bình luận

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 Linuxinux 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, nhất là với những máy dùng ổ cứng thường không dùng SSD, do đó không nên thường xuyên sử dụng Swap sẽ làm giảm hiệu năng hệ thố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á 60% 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 10%.
    swappiness = 60: swap được sử dụng khi RAM còn 60%.
    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 70%
B3: Khởi động lại máy
B4: Tận hưởng