ລາຍການຫົວເລື່ອງ
CentOSວິທີການເພີ່ມ / ເອົາໄຟລ໌ swap SWAP ຫນ່ວຍຄວາມຈໍາ virtual ດ້ວຍຕົນເອງແລະການແບ່ງປັນ?
ການແບ່ງສ່ວນແລກປ່ຽນແມ່ນຫຍັງ? SWAP ແມ່ນພື້ນທີ່ swap, ແລະບົດບາດຂອງພື້ນທີ່ SWAP ແມ່ນເວລາLinuxໃນເວລາທີ່ຄວາມຊົງຈໍາທາງດ້ານຮ່າງກາຍຂອງລະບົບບໍ່ພຽງພໍ, ສ່ວນຫນຶ່ງຂອງຄວາມຊົງຈໍາທາງດ້ານຮ່າງກາຍຈະຖືກປ່ອຍອອກມາເພື່ອເສີມຄວາມຊົງຈໍາທາງດ້ານຮ່າງກາຍທີ່ບໍ່ພຽງພໍ, ດັ່ງນັ້ນການດໍາເນີນການໃນປະຈຸບັນ.ຊອບແວການນໍາໃຊ້ໂຄງການ.
ຜົນປະໂຫຍດຂອງການນໍາໃຊ້ Swap ສໍາລັບການແບ່ງປັນ swap
ການປັບການຕັ້ງຄ່າການເພີ່ມປະສິດທິພາບ SWAP ແມ່ນມີຄວາມສຳຄັນຫຼາຍສຳລັບການປະຕິບັດໜ້າທີ່ຂອງເຊີບເວີເວັບ. ຖ້າໜ່ວຍຄວາມຈຳທາງກາຍະພາບບໍ່ພຽງພໍ, ທ່ານສາມາດປະຫຍັດຄ່າໃຊ້ຈ່າຍໃນການອັບເກຣດລະບົບ LINUX ໄດ້ຢ່າງມີປະສິດທິພາບໂດຍການຕັ້ງພາທິຊັນ SWAP ໜ່ວຍຄວາມຈຳ virtual.
ສິ່ງທີ່ຄວນເປັນຂະຫນາດຂອງການແບ່ງປັນ swap?
ກໍານົດຂະຫນາດຂອງການແບ່ງປັນ SWAP swap ຕາມຂະຫນາດຂອງຫນ່ວຍຄວາມຈໍາຂອງລະບົບຕົວຈິງແລະຊອບແວທີ່ໃຊ້.
ຄໍາແນະນໍາສໍາລັບ CentOS ແລະ RHEL6 ແມ່ນດັ່ງຕໍ່ໄປນີ້.
- RAM 4GB ຕ້ອງການພື້ນທີ່ແລກປ່ຽນຢ່າງໜ້ອຍ 2GB
- RAM 4GB ຫາ 16GB ຕ້ອງການພື້ນທີ່ແລກປ່ຽນຢ່າງໜ້ອຍ 4GB
- RAM 16GB ຫາ 64GB ຕ້ອງການພື້ນທີ່ແລກປ່ຽນຢ່າງໜ້ອຍ 8GB
- RAM 64GB ຫາ 256GB ຕ້ອງການພື້ນທີ່ແລກປ່ຽນຢ່າງໜ້ອຍ 16GB
ເບິ່ງຄວາມຊົງຈໍາໃນປະຈຸບັນແລະຂະຫນາດ swap space (ຫນ່ວຍບໍລິການເລີ່ມຕົ້ນແມ່ນ k, -m ຫນ່ວຍແມ່ນ M):
free -m
ຜົນການຄົ້ນຫາທີ່ສະແດງມີດັ່ງນີ້ (ຕົວຢ່າງ):
ທັງໝົດທີ່ໃຊ້ແລ້ວ buffers ທີ່ໃຊ້ຮ່ວມກັນຟຣີຖືກເກັບໄວ້
Mem: 498 347 151 0 101 137
-/+ buffers/cache: 108 390
ສະຫຼັບ: 0 0 0
ຖ້າ Swap ແມ່ນ 0, ມັນຫມາຍຄວາມວ່າບໍ່, ແລະທ່ານຈໍາເປັນຕ້ອງເພີ່ມ SWAP swap partition ດ້ວຍຕົນເອງ.
(ໝາຍເຫດ: VPS ກັບສະຖາປັດຕະຍະກຳ OPENVZ ບໍ່ຮອງຮັບການເພີ່ມ SWAP swap partition ດ້ວຍຕົນເອງ)
ມີ 2 ປະເພດຂອງການເພີ່ມ SWAP swap space:
- 1. ເພີ່ມພາທິຊັນ SWAP swap.
- 2. ເພີ່ມໄຟລ໌ swap SWAP.
ມັນແນະນໍາໃຫ້ເພີ່ມ SWAP swap partition; ຖ້າບໍ່ມີພື້ນທີ່ຫວ່າງຫຼາຍ, ໃຫ້ເພີ່ມໄຟລ໌ swap.
ເບິ່ງຂໍ້ມູນ SWAP (ລວມທັງໄຟລ໌ swap SWAP ແລະລາຍລະອຽດການແບ່ງສ່ວນ):
swapon -s
ຫຼື
cat /proc/swaps
(ຖ້າບໍ່ມີຄ່າ SWAP ສະແດງ, ມັນຫມາຍຄວາມວ່າພື້ນທີ່ SWAP ບໍ່ໄດ້ຖືກເພີ່ມ)
ນີ້ແມ່ນຕົວຢ່າງຂອງວິທີການສ້າງໄຟລ໌ SWAP:
1. ສ້າງການແລກປ່ຽນ 1GB
dd if=/dev/zero of=/home/swap bs=1k count=1024k
mkswap /swapfile
swapon /swapfile
echo "/home/swap swap swap default 0 0" | sudo tee -a /etc/fstab
sudo sysctl -w vm.swappiness=10
echo vm.swappiness = 10 | sudo tee -a /etc/sysctl.conf
2. ສ້າງການແລກປ່ຽນ 2GB
dd if=/dev/zero of=/home/swap bs=1k count=2048k
mkswap /home/swap
swapon /home/swap
echo "/home/swap swap swap default 0 0" | sudo tee -a /etc/fstab
sudo sysctl -w vm.swappiness=10
echo vm.swappiness = 10 | sudo tee -a /etc/sysctl.conf
(ຈົບ)
ຕໍ່ໄປນີ້ແມ່ນການອ້າງອີງລາຍລະອຽດເພີ່ມເຕີມ:
1. ໃຊ້ຄໍາສັ່ງ dd ເພື່ອສ້າງໄຟລ໌ swap
ຄວາມຈຳ 1G
dd if=/dev/zero of=/home/swap bs=1024 count=1024000
ຄວາມຈຳ 2G:
dd if=/dev/zero of=/home/swap bs=1k count=2048k
ດ້ວຍວິທີນີ້, ໄຟລ໌ /home/swap ຖືກສ້າງຂື້ນ, ຂະຫນາດຂອງ 1024000 ແມ່ນ 1G, ແລະຂະຫນາດຂອງ 2048k ແມ່ນ 2G.
2. ສ້າງໄຟລ໌ໃນຮູບແບບ swap:
mkswap /home/swap
3. ໃຊ້ຄໍາສັ່ງ swapon ເພື່ອ mount partition ໄຟລ໌ກັບ swap partition
/sbin/swapon /home/swap
ລອງເບິ່ງດ້ວຍຄໍາສັ່ງ free -m ແລະພົບວ່າມີໄຟລ໌ swap ແລ້ວ.
free -m
ແຕ່ຫຼັງຈາກ restart ລະບົບ, ໄຟລ໌ swap ກາຍເປັນ 0 ອີກເທື່ອຫນຶ່ງ.
4. ເພື່ອປ້ອງກັນບໍ່ໃຫ້ໄຟລ໌ swap ກາຍເປັນ 0 ຫຼັງຈາກ restart, ແກ້ໄຂໄຟລ໌ /etc/fstab.
ໃນຕອນທ້າຍ (ແຖວສຸດທ້າຍ) ຂອງໄຟລ໌ /etc/fstab ເພີ່ມ:
/home/swap swap swap default 0 0
(ສະນັ້ນເຖິງແມ່ນວ່າລະບົບຈະເລີ່ມຕົ້ນໃຫມ່, ໄຟລ໌ swap ຍັງມີຄຸນຄ່າ)
ຫຼືໂດຍກົງໃຊ້ຄໍາສັ່ງຕໍ່ໄປນີ້ເພື່ອເພີ່ມຄໍາສັ່ງ restart ອັດຕະໂນມັດ mount configuration:
echo "/home/swap swap swap default 0 0
" | sudo tee -a /etc/fstab
ພາຍໃຕ້ສະຖານະການໃດ VPS ໃຊ້ພື້ນທີ່ແລກປ່ຽນ SWAP?
ມັນບໍ່ແມ່ນຫຼັງຈາກຄວາມຊົງຈໍາທາງກາຍະພາບທັງຫມົດຖືກບໍລິໂພກກ່ອນທີ່ຈະໃຊ້ SWAP swap space, ແຕ່ມັນຖືກກໍານົດໂດຍຄ່າພາລາມິເຕີຂອງ swappiness.
[ຮາກ@ ~]#cat /proc/sys/vm/swappiness
60
(ຄ່າເລີ່ມຕົ້ນຂອງຄ່ານີ້ແມ່ນ 60)
- swappiness=0 ຫມາຍເຖິງການນໍາໃຊ້ສູງສຸດຂອງຫນ່ວຍຄວາມຈໍາທາງດ້ານຮ່າງກາຍ, ແລະຫຼັງຈາກນັ້ນພື້ນທີ່ສໍາລັບການແລກປ່ຽນ SWAP.
- swappiness=100 ຊີ້ໃຫ້ເຫັນວ່າພື້ນທີ່ swap ຖືກໃຊ້ຢ່າງຫ້າວຫັນ, ແລະຂໍ້ມູນໃນຫນ່ວຍຄວາມຈໍາຈະຖືກໂອນໄປຫາພື້ນທີ່ swap ໃນລັກສະນະທີ່ທັນເວລາ.
ວິທີການກໍານົດພາລາມິເຕີ swappiness?
ການດັດແກ້ຊົ່ວຄາວ:
[ຮາກ@ ~]#sysctl vm.swappiness=10
vm.swappiness = 10
[ຮາກ@ ~]#
cat /proc/sys/vm/swappiness
10
(ການດັດແກ້ຊົ່ວຄາວນີ້ມີຜົນ, ແຕ່ຖ້າລະບົບຖືກເປີດໃຫມ່, ມັນຈະກັບຄືນສູ່ຄ່າເລີ່ມຕົ້ນຂອງ 60).
ການດັດແກ້ຖາວອນ:
ເພີ່ມພາລາມິເຕີຕໍ່ໄປນີ້ໃສ່ໄຟລ໌ /etc/sysctl.conf:
vm.swappiness=10
(ບັນທຶກ, ມັນຈະມີຜົນຫຼັງຈາກ restart)
ຫຼືໃສ່ຄໍາສັ່ງໂດຍກົງ:
echo vm.swappiness = 10 | sudo tee -a /etc/sysctl.conf
ລຶບໄຟລ໌ swap SWAP
1. ຢຸດການແບ່ງປັນ swap ກ່ອນ
/sbin/swapoff /home/swap
2. ລຶບໄຟລ໌ການແບ່ງປັນ swap
rm -rf /home/swap
3. ລົບຄໍາສັ່ງການຕັ້ງຄ່າ mount ອັດຕະໂນມັດ
vi /etc/fstab
ເອົາເສັ້ນນີ້ອອກ:
/home/swap swap swap default 0 0
(ນີ້ຈະລຶບໄຟລ໌ swap ທີ່ເພີ່ມດ້ວຍຕົນເອງ)
ໝາຍ ເຫດ:
- 1. ພຽງແຕ່ຜູ້ໃຊ້ຮາກສາມາດຖືກນໍາໃຊ້ເພື່ອເພີ່ມຫຼືລຶບການດໍາເນີນງານ swap.
- 2. ເບິ່ງຄືວ່າການແບ່ງປັນ swap ການຈັດສັນໃນເວລາທີ່ການຕິດຕັ້ງລະບົບ VPS ບໍ່ສາມາດຖືກລົບ.
- 3. ການແບ່ງປັນ swap ໂດຍທົ່ວໄປແມ່ນສອງເທົ່າຂອງຂະຫນາດຂອງຫນ່ວຍຄວາມຈໍາ.
ຫວັງ Chen Weiliang Blog ( https://www.chenweiliang.com/ ). , ເພື່ອຊ່ວຍເຈົ້າ.
ຍິນດີຕ້ອນຮັບແບ່ງປັນການເຊື່ອມຕໍ່ຂອງບົດຄວາມນີ້:https://www.chenweiliang.com/cwl-158.html
ຍິນດີຕ້ອນຮັບສູ່ຊ່ອງ Telegram ຂອງບລັອກຂອງ Chen Weiliang ເພື່ອຮັບອັບເດດຫຼ້າສຸດ!
📚ຄູ່ມືນີ້ມີຄຸນຄ່າອັນມະຫາສານ, 🌟ນີ້ເປັນໂອກາດທີ່ຫາຍາກ, ຢ່າພາດມັນ! ⏰⌛💨
Share and like ຖ້າມັກ!
ການແບ່ງປັນແລະການຖືກໃຈຂອງທ່ານແມ່ນການຊຸກຍູ້ຢ່າງຕໍ່ເນື່ອງຂອງພວກເຮົາ!