Sẽ có lúc bạn cần tăng khả năng phản hồi của máy chủ để tránh các vấn đề về bộ nhớ. Sự cố hết bộ nhớ xảy ra khi một ứng dụng chạy trên máy chủ của bạn bắt đầu tiêu thụ một lượng lớn bộ nhớ. Hoán đổi được thiết kế dưới dạng bộ nhớ ảo , sử dụng ổ cứng của bạn để lưu trữ dữ liệu không thể lưu trong RAM. Hướng dẫn này sẽ chỉ cho bạn cách tạo một tệp hoán đổi, hoạt động trong Ubuntu, CentOS và Debian. Hướng dẫn này không dành cho bất kỳ ISO tùy chỉnh nào, nhưng có thể làm theo.
Bước 1: Xác minh rằng trao đổi không tồn tại
Để ngăn chặn bất kỳ vấn đề nào trong hướng dẫn này, bạn sẽ cần chạy các bước sau để xác minh rằng không gian hoán đổi hiện không hoạt động:
free -m
Sau khi chạy lệnh đó, bạn sẽ thấy một cái gì đó tương tự với đầu ra này:
total used free shared buffers cached
Mem: 1840 1614 226 15 36 1340
-/+ buffers/cache: 238 1602
Swap: 0 0 0
Nếu bạn thấy một giá trị 0
trong Swap
phần, thì bạn có thể tiến hành bước 2.
Ngoài ra, bạn có thể chạy lệnh sau để xem có tệp hoán đổi được cấu hình không:
swapon -s
Nếu bạn không thấy bất kỳ đầu ra nào swapon
, thì hãy chuyển sang bước 2.
Bước 2: Tạo tập tin hoán đổi
Bạn sẽ cần phải chọn một vị trí cho tập tin của bạn. Trong hướng dẫn này, nó sẽ được lưu trữ ở thư mục gốc của máy chủ. Chúng tôi sẽ tạo một tệp hoán đổi 2GB bằng cách chạy lệnh sau:
dd if=/dev/zero of=/swapfile count=2048 bs=1M
Các dd
lệnh sẽ sản xuất ra trong một định dạng tương tự như:
2048+0 records in
2048+0 records out
2147483648 bytes (2.1 GB) copied, 10.5356 s, 204 MB/s
Tiếp theo, xác minh rằng tệp được đặt ở thư mục gốc của VPS Vultr của bạn bằng cách chạy:
ls / | grep swapfile
Tiến hành nếu bạn thấy swapfile
tập tin.
Bước 3: Kích hoạt tệp hoán đổi
Các tập tin hoán đổi không được nhận ra tự động. Chúng tôi sẽ cần cho máy chủ biết cách định dạng tệp và kích hoạt nó để có thể sử dụng nó làm tệp hoán đổi hợp lệ. Là một biện pháp bảo mật, cập nhật các quyền hoán đổi để chỉ cho phép R / W cho root và không có người dùng nào khác. Chạy:
chmod 600 /swapfile
Thay đổi quyền có thể được xác minh bằng cách chạy lệnh sau:
ls -lh /swapfile
Bạn sẽ thấy một màn hình hiển thị tập tin:
-rw------- 1 root root 2.0G Oct 2 18:47 /swapfile
Tiếp theo, yêu cầu máy chủ thiết lập tệp hoán đổi bằng cách chạy:
mkswap /swapfile
Sau khi chạy nó, bạn sẽ thấy đầu ra sau:
Setting up swapspace version 1, size = 2097148 KiB
no label, UUID=ff3fc469-9c4b-4913-b653-ec53d6460d0e
Nếu mọi thứ được hiển thị như trên, bây giờ bạn đã sẵn sàng để chuyển sang bước tiếp theo.
Bước 4: Bật trao đổi
Khi tệp của bạn đã sẵn sàng để được sử dụng làm trao đổi, bạn cần kích hoạt nó bằng cách chạy:
swapon /swapfile
Bạn có thể xác minh rằng tệp hoán đổi đang hoạt động bằng cách chạy lại free
lệnh.
free -m
total used free shared buffers cached
Mem: 1840 1754 86 16 23 1519
-/+ buffers/cache: 210 1630
Swap: 2047 0 2047
Nếu Swap
hiển thị một cái gì đó khác 0
, thì bạn đã thiết lập trao đổi thành công.
Bước 5: Kích hoạt tính năng hoán đổi khi khởi động lại
Theo mặc định, máy chủ của bạn sẽ không tự động kích hoạt tệp hoán đổi mới này. Để kích hoạt nó khi khởi động, bạn có thể cập nhật /etc/fstab
tệp. Bất kỳ trình soạn thảo văn bản sẽ đủ. Trong ví dụ này, tôi sẽ sử dụng nano
.
nano /etc/fstab
Thêm dòng sau vào cuối tập tin:
/swapfile none swap sw 0 0
Lưu và đóng khi bạn hoàn thành chỉnh sửa tệp. Chúng ta đã hoàn tất!