partisi swap vs swap file

47

Saya sedang membaca perubahan baru dengan Ubuntu 17.04 dan salah satu yang menarik perhatian saya yang bergerak dari model partisi swap khas ke model file swap baru untuk instalasi baru.

Apakah ada manfaat untuk menggunakan ini sebagai lawan dari partisi swap, mungkin terkait dengan atau dalam hal kinerja, penghematan ruang, lebih sesuai dengan perangkat keras saat ini seperti SSD dan NVMe atau yang lainnya?

Pertanyaan terkait lainnya adalah bagaimana saya bisa bermigrasi dari partisi swap ke file swap? Saya menduga menggunakan dd tetapi ingin mengkonfirmasi karena saya tidak tahu tentang skema file swap sampai sekarang.

Dan terakhir, apakah hibernasi akan menjadi masalah dengan file swap?

Tentu saja pertanyaan-pertanyaan ini mungkin terkait dengan kasus-kasus di mana pengguna memiliki banyak RAM dan swap jarang digunakan (saya kira). Jadi hanya untuk mengonfirmasi bahwa informasi ini akan membantu saya dan orang lain dengan keraguan yang sama.

Luis Alvarado
sumber
Tentang pertanyaan terkait: askubuntu.com/questions/903414/… (jika pernah dijawab)
muru
digitalocean.com/community/tutorials/… - Saya tidak bisa mengatakan itu membuat perbedaan, saya benar-benar tidak bisa. Sistem berfungsi dengan baik seperti sebelumnya (swap jarang digunakan).
Berikut cara menambahkan swap pada file . Dalam 17,04 itu adalah file /swapfile. Hibernasi mungkin menjadi masalah.
Takkat
muru @CelticWarrior Takkat terima kasih atas tautan dan informasinya kawan. Memang sangat membantu. Jika memungkinkan Celtic, jika Anda bisa menambahkan jawaban spesifik di sini di AskUbuntu untuk berjaga-jaga. Untuk semua orang, memastikan jawabannya sudah terbaru (bukan 2012, tetapi sebenarnya 2016-2017, ketika seluruh file swap dimulai) akan banyak membantu dan menghindari apa pun yang terjadi selama periode waktu yang telah berubah.
Luis Alvarado
1
Jika Anda memiliki partisi root yang dienkripsi, maka swap file juga dienkripsi - secara otomatis. Tidak perlu melakukan sesuatu yang istimewa. Jadi ini merupakan peningkatan bagi pengguna umum, yang mungkin lupa mengenkripsi swap.
Maris B.

Jawaban:

35

Satu-satunya keuntungan dari swapfile adalah mudah diubah ukurannya, sehingga tidak ada banyak gunanya dalam transisi kecuali Anda tidak puas dengan ukuran partisi swap Anda.

Secara tradisional swapfile tidak disarankan karena sejumlah alasan. Swapfile dulu lebih lambat sebelum Linux v2.4, dan mungkin masih lebih lambat jika Anda membuat swapfile di sistem file yang terfragmentasi. Anda mungkin sedikit lebih mungkin untuk menabrak bug memori dengan swapfiles, misalnya catch-22s di mana Anda tidak dapat mengalokasikan lebih banyak memori sampai Anda menukar beberapa, tetapi sistem file perlu mengalokasikan sebelum Anda dapat bertukar keluar. Beberapa tahun yang lalu berhibernasi dengan swapfile adalah fitur baru yang kontroversial karena alasan yang sama. Bertahun-tahun yang lalu ketika filesystem masih sedikit bermasalah (dan tidak dijurnal) itu tidak bijaksana untuk melakukan sejumlah besar menulis filesystem penting, ketika Anda bisa menggunakan swapfile saja. Sebagai tradisi default, partisi swap telah diuji lebih dari swapfile. Agaknya Canonical berpikir bahwa masalah ini tidak perlu dikhawatirkan lagi.

Alasan terbesar sekarang untuk tidak beralih ke swapfile, adalah "mengapa memperbaiki sesuatu yang tidak rusak". Jika Anda tidak mencadangkan partisi utama Anda, dan secara tidak sengaja menghapus /homeswapfile Anda, itu akan merepotkan untuk mendapatkannya kembali.

Alasan lain untuk tidak beralih ke swapfile, adalah jika Anda menggunakan btrfsyang belum mendukung swapfile (kecuali melalui file loopback lambat)


Bahkan jika Anda memutuskan untuk mengambil file swap, tidak ada kebutuhan nyata untuk menghapus partisi swap Anda kecuali Anda kekurangan ruang. Anda dapat menggunakan keduanya sekaligus jika Anda mau. Jika Anda memutuskan untuk menghapus partisi swap, pertama-tama boot dengan Ubuntu LiveCD, dan pergi try without installing. Kemudian dalam terminal run gparted, hapus partisi swap, dan ubah ukuran partisi yang tersisa (melakukan pencadangan terlebih dahulu mungkin ide yang baik).

Sekarang reboot ke instal Ubuntu reguler Anda dan buat swapfile. Karena keuntungan swapfile adalah mudah diubah ukurannya, Anda mungkin ingin menggunakan SwapSpace untuk mengelola ukuran swapfile Anda:

sudo apt install swapspace

Anda juga dapat secara manual membuat swapfile dengan mengikuti instruksi di: https://www.digitalocean.com/community/tutorials/how-to-add-swap-space-on-ubuntu-16-04

Untuk mempersingkat cerita, Anda dapat membuat swap 1G dengan menempelkan yang berikut ke terminal

sudo fallocate -l 1G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
sudo swapon --show

Jika berhasil, Anda dapat membuatnya permanen dengan melakukan:

sudo cp /etc/fstab /etc/fstab.bak
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
gmatht
sumber
Kutipan hmmm diperlukan .... tidak yakin tentang argumen filesystem kereta seberapa jauh Anda akan pergi ...? Adapun tangkapan 22 oomkiller akan menyortir bahwa untuk derajat - alokasi kecil seharusnya menyebabkan pembunuhan kecil, dan saya akan terkejut jika bertukar melalui fs tidak memiliki penyangga wee di siap untuk kemungkinan seperti itu ....
taifwa
5
10+ tahun yang lalu, saran umum adalah menempatkan swap, / usr / home dan / var semua pada partisi yang berbeda sehingga jika salah satu dari mereka merusak diri sendiri, Anda dapat pulih dari yang lain. Itu mungkin sebelum membuat jurnal adalah hal biasa. Filesystem masih memiliki bug, tetapi paranoia mungkin lebih baik dihabiskan untuk membuat cadangan di tempat yang tidak bisa dijangkau oleh ransomware.
gmatht
1
@taifwa Saya telah menambahkan tautan ke FAQ btrfs di mana mereka tidak mendukung akses swapfile cepat (karena mereka tidak yakin bagaimana menerapkannya tanpa korupsi), dan catatan bahwa alasan terbesar untuk tidak beralih adalah untuk tidak memperbaiki apa yang tidak rusak. Apakah ini membantu?
gmatht
1
@ gmatht Nah, Anda menutupi semua yang ada di sana dengan cara yang sangat bagus. Jika Anda menemukan informasi baru dalam beberapa bulan / tahun mendatang dengan file swap, beri tahu kami dengan memperbarui jawaban ini. Kudos dan kerja yang luar biasa.
Luis Alvarado
3
@PabloBianchi Bisa, tapi saya lebih suka swap pada SSD hari ini. Menempatkan swap pada disk rotasi dapat meningkatkan keausan juga. SSD modern cenderung tidak aus lebih cepat daripada disk rotasi.
gmatht