Bạn có chắc chắn muốn xóa bài viết này không ?
Bạn có chắc chắn muốn xóa bình luận này không ?
Fix lỗi không đủ bộ nhớ
Fix lỗi không đủ bộ nhớ
Vấn đề
Đôi khi do nhu cầu không cao nên chúng ta chỉ mua 1 cái droplet 512MB ram trên DigitalOcean hay tạo 1 image chừng đó bộ nhớ trên AWS. Với giới hạn của memory như vậy, nếu sau đó chúng ta install Python hoặc build Node.js từ source code thì sẽ phát sinh lỗi không đủ bộ nhớ, như "Cannot allocate memory" hay "Out of memory"...
Giải pháp
Để khắc phục vấn đề này thì cách đơn giản nhất là tạo swap. Khi bộ nhớ vật lý được tiêu thụ hết, linux kernel sẽ tự động chuyển sang dùng swap.
Cách làm dưới đây khá đơn giản, áp dụng cho Ubuntu server.
Trên Digital Ocean, truy cập droplet qua CLI và chạy:
free
dd if=/dev/zero of=/var/swap.img bs=1024k count=1000
mkswap /var/swap.img
swapon /var/swap.img
make -f makefile.unix
Với các images trên AWS hoặc docker:
# Create swap file with 1GB of space
sudo fallocate -l 1G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
Sau đó, có thể kiểm tra swap với sudo swapon -s
hoặc free
và cập nhật ftab để hệ thống tự kích hoạt vùng swap khi reboot.
@ndaidong 01-08-2016







