ข้อได้เปรียบเพียงอย่างเดียวของ swapfile ก็คือมันง่ายต่อการปรับขนาดดังนั้นจึงไม่มีอะไรมากในการเปลี่ยนเว้นแต่คุณจะไม่พอใจกับขนาดพาร์ติชั่นการแลกเปลี่ยนของคุณ
การสลับไฟล์แบบดั้งเดิมนั้นไม่รองรับด้วยเหตุผลหลายประการ swapfile ที่ใช้จะช้าลงก่อน Linux v2.4และอาจยังช้าลงหากคุณสร้าง swapfile บนระบบไฟล์แบบแยกส่วน คุณอาจจะมีโอกาสมากขึ้นที่จะพบบั๊กหน่วยความจำด้วย swapfiles ตัวอย่างเช่น catch-22s ซึ่งคุณไม่สามารถจัดสรรหน่วยความจำเพิ่มเติมได้จนกว่าคุณจะสลับออกไป แต่ระบบไฟล์จำเป็นต้องจัดสรรก่อนที่คุณจะสามารถแลกเปลี่ยนได้ ไม่กี่ปีหลังการจำศีลเพื่อแลกเปลี่ยนเป็นคุณสมบัติใหม่ที่ขัดแย้งกันด้วยเหตุผลที่คล้ายกัน หลายปีที่ผ่านมาเมื่อระบบไฟล์ยังมีข้อผิดพลาดเล็กน้อย (และไม่ได้ทำเจอร์นัลไว้) มันไม่ฉลาดที่จะเขียนระบบไฟล์สำคัญ ๆ จำนวนมากเมื่อคุณสามารถใช้ swapfile แทนได้ ตามค่าเริ่มต้นของประเพณีนั้นพาร์ติชัน swap ได้รับการทดสอบมากกว่า swapfiles สันนิษฐานว่า Canonical คิดว่าปัญหาเหล่านี้ไม่น่ากังวลอีกต่อไป
เหตุผลที่ดีที่สุดที่จะไม่เปลี่ยนไปใช้ swapfile คือ "ทำไมต้องแก้ไขบางสิ่งที่ไม่เสียหาย" หากคุณไม่ได้สำรองข้อมูลพาร์ติชันหลักของคุณและลบโดยไม่ตั้งใจ/home
แทน swapfile ของคุณมันอาจจะเป็นเรื่องยุ่งยากที่จะลองกู้คืนมา
อีกเหตุผลที่ไม่เปลี่ยนเป็น swapfiles คือถ้าคุณใช้btrfs
ซึ่งไม่รองรับ swapfiles (ยกเว้นผ่านไฟล์ลูปแบ็คช้า)
แม้ว่าคุณจะตัดสินใจเลือกใช้ไฟล์ swap แต่ก็ไม่จำเป็นต้องลบพาร์ติชั่น swap เว้นแต่ว่าคุณจะมีพื้นที่ จำกัด คุณสามารถใช้ทั้งสองอย่างในเวลาเดียวกันหากคุณต้องการ ถ้าคุณตัดสินใจที่จะลบพาร์ทิชัน swap เป็นครั้งแรกของการบูตทั้งหมดที่มีอูบุนตู LiveCD try without installing
และไป จากนั้นในการรันเทอร์มินัลgparted
ให้ลบพาร์ติชัน swap และปรับขนาดพาร์ติชั่นที่เหลือ (ทำการสำรองข้อมูลก่อนอาจเป็นความคิดที่ดี)
ตอนนี้ให้รีบูทติดตั้ง Ubuntu ตามปกติของคุณแล้วสร้าง swapfile เนื่องจากข้อดีของ swapfile คือปรับขนาดได้ง่ายคุณอาจต้องการใช้ SwapSpace เพื่อจัดการขนาดของ swapfile ของคุณ:
sudo apt install swapspace
คุณสามารถสร้าง swapfile ด้วยตนเองโดยทำตามคำแนะนำได้ที่: https://www.digitalocean.com/community/tutorials/how-to-add-swap-space-on-ubuntu-16-04
หากต้องการตัดเรื่องสั้นที่มีขนาดยาวคุณสามารถสร้าง swapfile ขนาด 1G ได้โดยวางสิ่งต่อไปนี้ลงในเทอร์มินัล
sudo fallocate -l 1G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
sudo swapon --show
หากได้ผลคุณสามารถทำให้เป็นถาวรได้โดยทำ:
sudo cp /etc/fstab /etc/fstab.bak
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab