Apa itu ruang swap?
Ruang swap di Linux digunakan ketika jumlah memori fisik (RAM) penuh. Jika sistem membutuhkan lebih banyak sumber daya memori dan memori fisik penuh, halaman tidak aktif dalam memori dipindahkan ke ruang swap. Sementara ruang swap dapat membantu mesin dengan sedikit RAM, itu tidak boleh dianggap sebagai pengganti lebih banyak RAM. Ruang swap terletak di hard drive, yang memiliki waktu akses lebih lambat daripada memori fisik.
Ruang swap dapat berupa partisi swap khusus (disarankan), file swap, atau kombinasi partisi swap dan file swap.
Apa itu partisi swap?
Partisi swap sangat berbeda dari sistem file. Filesystem (biasanya) menyimpan pohon dari node direktori ke inode file referensi, yang kemudian mereferensikan blok dalam file. Segala sesuatu di disk pernah atau memiliki nama, dan Anda dapat merekonstruksi blok mana yang berisi file atau direktori atau tidak lagi digunakan dengan cukup mudah. (fsck melakukan ini pada setiap reboot yang tidak bersih.)
Partisi swap berisi halaman memori "acak" dari proses yang tidak cukup sering digunakan untuk mencegahnya keluar dari swap. Potongan itu tidak akan menyertakan pustaka atau file yang dapat dieksekusi. Swap hanya akan berisi halaman yang dibuat dengan cepat oleh aplikasi untuk data. Tidak ada informasi pemesanan tentang swap yang sebenarnya disimpan di partisi swap, semua informasi itu hanya bermakna ketika mesin sedang berjalan, dan mesin mungkin membutuhkannya dengan tergesa-gesa, sehingga tabel pemetaan halaman disimpan di kernel yang tidak dapat ditukar. memori.
Apa itu file swap?
Dalam beberapa situasi sulit untuk menambahkan partisi swap baru. Linux tidak mengizinkan untuk mengubah definisi partisi dan jika kami tidak dapat menambahkan partisi baru tanpa menghapus partisi yang ada. Dalam hal ini, swapfile mungkin berguna.
Bagaimana cara menambahkan file swap?
Tentukan ukuran file swap baru dan kelipatannya dengan 1024 untuk menentukan ukuran blok. Misalnya, ukuran blok dari file swap 64 MB adalah 65536. Pada prompt shell sebagai root, ketik perintah berikut dengan jumlah yang sama dengan ukuran blok yang diinginkan:
# mkdir /data2 # dd if=/dev/zero of=/data2/swapfile1 bs=1024 count=65536
Siapkan file swap dengan perintah:
# mkswap /data2/swapfile1
Untuk mengaktifkan file swap segera tetapi tidak secara otomatis saat boot:
# swapon /data2/swapfile1
Untuk mengaktifkannya saat boot, edit /etc/fstab untuk menyertakan:
/data2/swapfile1 swap swap defaults 0 0
Saat berikutnya sistem melakukan boot, itu akan mengaktifkan file swap baru.
Bagaimana cara menambahkan partisi swap dan volume swap?
Lihat posting di bawah ini untuk mendapatkan prosedur terperinci.
Bagaimana cara menambahkan ruang swap di linuxBagaimana cara mengetahui berapa banyak ruang swap yang dikonfigurasi di linux saya?
Gunakan swapon -s perintah untuk mendapatkan detail swap. Ini akan memberi tahu Anda berapa banyak yang telah dialokasikan untuk swap dan berapa banyak yang digunakan. Misalnya:
# swapon -s Filename Type Size Used Priority /dev/dm-0 partition 2097148 0 -1
Apa perbedaan antara swapping dan paging?
Swapping adalah salah satu mekanisme Unix untuk mengakomodasi keterbatasan ukuran memori dengan memindahkan seluruh proses ke disk untuk mendapatkan kembali memori.
Paging adalah mekanisme Unix lain untuk mengelola keterbatasan memori. Tidak seperti swapping, di mana seluruh proses dipindahkan masuk dan keluar dari memori, paging hanya memindahkan halaman proses ke disk. Paging bukanlah masalah yang serius seperti swapping, karena seluruh program tidak harus berada di memori untuk dijalankan. Sejumlah kecil paging mungkin tidak terlalu mempengaruhi kinerja sistem. Namun, kinerja sistem dapat menurun dengan cepat seiring dengan meningkatnya aktivitas paging.
Ruang swap pada disk digunakan untuk menyimpan halaman memori yang telah di-page atau ditukar. Kekurangan ruang swap dapat menyebabkan gejala seperti sistem hang, waktu respons yang buruk, dan pemijahan proses baru yang gagal.
Bagaimana cara mengaktifkan swap?
Pertama periksa apakah swap diaktifkan:
# swapon -s
Untuk mengaktifkan swap, periksa entri swap di /etc/fstab
. Anda# grep swap /etc/fstab /dev/mapper/centos-swap swap swap defaults 0 0
dan gunakan perintah '/sbin/swapon -a' untuk mengaktifkan semua partisi Swap yang terdaftar di /etc/fstab.
# swapon -a
Bagaimana cara menghapus partisi swap?
Jika partisi swap sedang tidak digunakan, Anda dapat meng-umount swap dengan perintah swapoff. Pada prompt shell sebagai root, jalankan perintah berikut untuk memastikan partisi swap dinonaktifkan (di mana /dev/hdb2 adalah partisi swap):
# swapoff /dev/hdb2
Hapus entrinya dari /etc/fstab. Hapus partisi menggunakan parted atau fdisk.
Bagaimana cara menghapus file swap?
Sebagai root, jalankan perintah berikut untuk menonaktifkan file swap (di mana /swapfile1 adalah file swap):
# swapoff /data2/swapfile1
Hapus entrinya dari /etc/fstab dan hapus file yang sebenarnya:
# rm /data2/swapfile1
Bagaimana cara menghapus partisi swap?
Jika partisi swap sedang tidak digunakan, Anda dapat meng-umount swap dengan perintah swapoff. Pada prompt shell sebagai root, jalankan perintah berikut untuk memastikan partisi swap dinonaktifkan (di mana /dev/hdb2 adalah partisi swap):
# swapoff /dev/hdb2
Hapus entrinya dari /etc/fstab. Hapus partisi menggunakan parted atau fdisk.
Bagaimana cara menghapus file swap?
Sebagai root, jalankan perintah berikut untuk menonaktifkan file swap (di mana /swapfile1 adalah file swap):
# swapoff /data2/swapfile1
Hapus entrinya dari /etc/fstab dan hapus file yang sebenarnya:
# rm /data2/swapfile1
Cara memeriksa penggunaan swap
Untuk memeriksa penggunaan swap, Anda dapat menggunakan salah satu utilitas di bawah ini:
1. gratis
# free total used free shared buffers cached Mem: 1004608 934036 70572 0 30124 769640 -/+ buffers/cache: 134272 870336 Swap: 1060248 0 1060248
2. /proc/meminfo
# grep Swap /proc/meminfo SwapCached: 0 kB SwapTotal: 1060248 kB SwapFree: 1060248 kB
3. atas
# top ....... Mem: 1004608k total, 934780k used, 69828k free, 30124k buffers Swap: 1060248k total, 0k used, 1060248k free, 770156k cached .......
4. vmstat
# vmstat procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 1 0 0 69828 30124 770156 0 0 40 403 23 22 0 1 99 0 0Pertanyaan wawancara Linux – Izin khusus (SUID, SGID, dan sticky bit)