ค้นหาเว็บไซต์

วิธีสร้างไฟล์ Swap Linux


ในบทความนี้ เราจะอธิบายพื้นที่สว็อป และเรียนรู้วิธีสร้างพื้นที่สว็อปโดยใช้ไฟล์สว็อปใน Linux นี่เป็นสิ่งสำคัญในกรณีที่เราไม่มีพาร์ติชั่นสว็อปที่สร้างบนฮาร์ดดิสก์

พื้นที่สว็อป/พาร์ติชั่นคือพื้นที่บนดิสก์ที่สร้างขึ้นเพื่อใช้โดยระบบปฏิบัติการเมื่อหน่วยความจำถูกใช้จนเต็ม สามารถใช้เป็นหน่วยความจำเสมือนสำหรับระบบ อาจเป็นพาร์ติชันหรือไฟล์บนดิสก์ก็ได้

เมื่อเคอร์เนลมีหน่วยความจำไม่เพียงพอ เคอร์เนลสามารถย้ายกระบวนการที่ไม่ได้ใช้งาน/ไม่ได้ใช้งานไปยังการสลับเพื่อสร้างพื้นที่สำหรับกระบวนการที่ใช้งานอยู่ในหน่วยความจำการทำงาน นี่คือการจัดการหน่วยความจำที่เกี่ยวข้องกับการสลับส่วนของหน่วยความจำไปและกลับจากหน่วยความจำเสมือน

แนะนำให้อ่าน: 8 คำสั่งที่เป็นประโยชน์ในการตรวจสอบการใช้พื้นที่สว็อปใน Linux

ด้วยเหตุนี้ ด้านล่างนี้คือขั้นตอนที่เราสามารถปฏิบัติตามเพื่อสร้างพื้นที่สว็อปโดยใช้ไฟล์

วิธีสร้างและเปิดใช้งาน Swap ใน Linux

1. ในตัวอย่างนี้ เราจะสร้างไฟล์สลับขนาด 2GB โดยใช้คำสั่ง dd ดังต่อไปนี้ โปรดทราบว่า bs=1024 หมายถึงการอ่านและเขียนได้สูงสุด 1024 ไบต์ต่อครั้ง และขนาด count=(1024 x 2048)MB ของไฟล์ .

dd if=/dev/zero of=/mnt/swapfile bs=1024 count=2097152

หรือใช้ คำสั่ง fallocate ดังต่อไปนี้

fallocate --length 2GiB /mnt/swapfile

จากนั้นตั้งค่าการอนุญาตที่เหมาะสมในไฟล์ ทำให้ผู้ใช้ root เท่านั้นสามารถอ่านได้ดังนี้

chmod 600 /mnt/swapfile

2. ตอนนี้ตั้งค่าไฟล์สำหรับพื้นที่สว็อปด้วย คำสั่ง mkwap

mkswap /mnt/swapfile

3. ถัดไป เปิดใช้งานไฟล์สลับและเพิ่มลงในระบบเป็นไฟล์สลับ

swapon /mnt/swapfile

4. หลังจากนั้น ให้เปิดใช้งานไฟล์สลับเพื่อติดตั้งในเวลาบูต แก้ไขไฟล์ /etc/fstab และเพิ่มบรรทัดต่อไปนี้ลงไป

/mnt/swapfile swap swap defaults 0 0

ในบรรทัดด้านบน แต่ละฟิลด์หมายถึง:

  • /mnt/swapfile – ชื่ออุปกรณ์/ไฟล์
  • สลับ – กำหนดจุดเชื่อมต่ออุปกรณ์
  • swap – ระบุประเภทระบบไฟล์
  • ค่าเริ่มต้น – อธิบายตัวเลือกการเมานต์
  • 0 – ระบุตัวเลือกที่จะใช้โดยโปรแกรมดัมพ์
  • 0 – ระบุตัวเลือกคำสั่ง fsck

6. หากต้องการกำหนดความถี่ที่เคอร์เนลสามารถใช้ไฟล์สลับได้ ให้เปิดไฟล์ /etc/sysctl.conf และเพิ่มบรรทัดด้านล่าง

โปรดทราบว่าค่าเริ่มต้นของความถี่ในการใช้พื้นที่สว็อปคือ 60 (ค่าสูงสุดคือ 100) ยิ่งตัวเลขสูงเท่าใด การใช้พื้นที่สว็อปโดยเคอร์เนลก็จะยิ่งบ่อยมากขึ้นเท่านั้น เมื่อตั้งค่าเป็น 0 ไฟล์สลับจะถูกใช้เฉพาะเมื่อระบบปฏิบัติการใช้หน่วยความจำอย่างเต็มที่เท่านั้น

vm.swappiness=10

6. ตอนนี้ตรวจสอบว่าไฟล์ swap ถูกสร้างขึ้นโดยใช้ คำสั่ง swapon

swapon  -s
OR
free
OR
cat  /proc/swaps

เราสามารถเลือกรีบูทระบบเพื่อให้เกิดการเปลี่ยนแปลงข้างต้นได้โดยใช้คำสั่งต่อไปนี้

reboot

อย่าลืมอ่านคำแนะนำการจัดการหน่วยความจำ Linux ที่เป็นประโยชน์เหล่านี้ด้วย:

  1. วิธีล้างแคชหน่วยความจำ RAM, บัฟเฟอร์และ Swap Space บน Linux
  2. 10 คำสั่ง 'ฟรี' เพื่อตรวจสอบการใช้หน่วยความจำใน Linux
  3. Smem – รายงานการใช้หน่วยความจำต่อกระบวนการและพื้นฐานต่อผู้ใช้ใน Linux
  4. ค้นหากระบวนการทำงานอันดับต้นๆ ตามหน่วยความจำและการใช้งาน CPU สูงสุดใน Linux

แค่นั้นแหละ! หากคุณมีปัญหาใดๆ ให้ใช้แบบฟอร์มคำติชมด้านล่างเพื่อส่งคำถามหรือแนวคิดเพิ่มเติมที่สำคัญเกี่ยวกับหัวข้อนี้ถึงเรา