Searching...
20/6/12

Thêm mới không gian swap cho Linux

20:56

Có những trường hợp sau khi đã cài đặt xong linux/unix bạn vẫn muốn thêm không gian cho vùng ổ cứng tráo đổi (swap). Chẳng hạn, bạn đang dùng hệ thống 128MB RAM và muốn nâng cấp lên 256MB RAM nhưng phân vùng dành cho swap của bạn chỉ có 256MB. Theo nguyên tắc thiết lập các hệ thống Linux, không gian swap nên gấp đôi tổng dung lượng RAM mà hệ thống của bạn có. Như vậy để đảm bảo vấn đề tối ưu, bạn phải tìm cách nào đó để nâng cấp không gian swap của bạn lên gấp đôi dung lượng RAM hiện có.
Bạn có ba lựa chọn để thực hiện điều này. Thứ nhất là mở rộng thêm không gian cho vùng swap đã có. Thứ hai là thêm một phần vùng swap mới và cuối cùng là tạo ra một file sử dụng làm không gian cho swap. Chúng tôi khuyên bạn nên dùng cách thứ nhất nếu có thể.

1. Mở rộng vùng swap trên Volume swap sẵn có
Để mở rộng vùng swap trên LVM2 volume (chẳng hạn /dev/VolGroup00/LogVol01 là volume bạn muốn mở rộng) thực hiện lần lượt các bước sau:
• Tắt swap trên volume này: 

# swapoff -v /dev/VolGroup00/LogVol01



• Thay đổi LVM2 logical volume này bằng việc tăng thêm 256 MB: 

# lvm lvresize /dev/VolGroup00/LogVol01 -L +256M



• Format lại vùng swap mới: 

# mkswap /dev/VolGroup00/LogVol01
• Chạy volume dành cho swap mới: 
# swapon -va
• Kiểm tra việc thực hiện thành công hay không: 

# cat /proc/swaps
hoặc
# free
2. Tạo thêm một Volume mới cho swap
Để thêm một volume mới cho swap (giả sử /dev/VolGroup00/LogVol02 là volume dùng cho swap mà bạn muốn thêm mới): 
1. Tạo mới LVM2 logical có kích cỡ là 256 MB: 

# lvm lvcreate VolGroup00 -n LogVol02 -L 256M
2. Format vùng swap mới: 

# mkswap /dev/VolGroup00/LogVol02
3. Thêm một mục dành cho swap vào file /etc/fstab: 

/dev/VolGroup00/LogVol02 swap swap defaults 0 0
4. Bật vùng swap mới này: 

# swapon -va
5. Kiểm tra xem việc thực hiện có hiệu quả hay không: 

# cat /proc/swaps
hoặc 
# free



3. Tạo thêm một file dùng cho swap
Để thêm một file dùng cho swap, lần lượt thực hiện các bước sau: 
1. Xác định kích thước file mới bạn sẽ dùng cho swap tính bằng MB rồi nhân với 1024 để ra số block cần thiết. Chẳng hạn bạn cần tạo ra một file 64M thì cần 64 x 1024 = 65536 block. Thực hiện lệnh sau: 

#dd if=/dev/zero of=/swapfile bs=1024 count=65536
2. Chuyển file vừa tạo sang sử dụng cho swap bằng lệnh: 

#mkswap /swapfile
3. Bật sang chế độ sử dụng file swap vừa tạo bằng lệnh: 

#swapon /swapfile
4. Để kích hoạt file này khi máy khởi động hãy thêm dòng sau vào file /etc/fstab: 

/swapfile swap swap defaults 0 0
5. Bạn có thể kiểm tra tính hiệu lực bằng lệnh cat /proc/swaps hoặc free. 

4. Ví dụ
Giả sử bạn cần nâng swap lên thêm 6G. Do server đã dùng hết không gian ổ cứng cho các phân vùng hiện có nên không thể tạo volume hay mở rộng volume có sẳn. Phương án thực hiện là tạo ra các swap file. Hiện tại dung lượng RAM tổng cộng của server là 4G nên sẽ tạo tổng có 8G swap. Hiện có có 2G ở VolGroup00/LogVol01 rồi nên sẽ tạo thêm 6 swap file mỗi file có kích thước 1G nằm trong /swaps/.
Lần lượt thực hiện các lệnh sau với quyền root. Sau mỗi lệnh có thể phải chờ một khoảng thời gian. Hãy kiên nhẫn! 
1. Tạo 6 file swapfile1 -> swapfile6 nằm trong thư mục /swaps/: 

#dd if=/dev/zero of=/swaps/swapfile1 bs=1024 count=1024000
#dd if=/dev/zero of=/swaps/swapfile2 bs=1024 count=1024000
#dd if=/dev/zero of=/swaps/swapfile3 bs=1024 count=1024000
#dd if=/dev/zero of=/swaps/swapfile4 bs=1024 count=1024000
#dd if=/dev/zero of=/swaps/swapfile5 bs=1024 count=1024000
#dd if=/dev/zero of=/swaps/swapfile6 bs=1024 count=1024000



2. Đưa các file vừa tạo về dạng swap: 

#mkswap /swaps/swapfile1
#mkswap /swaps/swapfile2
#mkswap /swaps/swapfile3
#mkswap /swaps/swapfile4
#mkswap /swaps/swapfile5
#mkswap /swaps/swapfile6



3. Bật sang chế độ sử dụng các file swap vừa tạo bằng lệnh: 

#swapon /swaps/swapfile1
#swapon /swaps/swapfile2
#swapon /swaps/swapfile3
#swapon /swaps/swapfile4
#swapon /swaps/swapfile5
#swapon /swaps/swapfile6



4. Để kích hoạt các file này khi máy khởi động hãy thêm các dòng sau vào file /etc/fstab: 

/swaps/swapfile1 swap swap defaults 0 0
/swaps/swapfile2 swap swap defaults 0 0
/swaps/swapfile3 swap swap defaults 0 0
/swaps/swapfile4 swap swap defaults 0 0
/swaps/swapfile5 swap swap defaults 0 0
/swaps/swapfile6 swap swap defaults 0 0



5.Bạn có thể kiểm tra tính hiệu lực bằng lệnh cat /proc/swaps hoặc free. 
6. Reboot lại server và kiểm tra lại.
Chú ý: Có thể thực hiện lần lượt với việc tăng từng 1G hoặc thực hiện tất cả bằng cách tạo một file shell rồi thực thi nó.

0 comments:

Đăng nhận xét