Cara Mengosongkan Ram Memory Cache, Buffer dan Swap Ruang di Linux

Cara Mengosongkan Ram Memory Cache, Buffer dan Swap Ruang di Linux

Seperti mana -mana sistem operasi lain, GNU/Linux telah melaksanakan pengurusan memori dengan cekap dan lebih daripada itu. Tetapi jika ada proses yang memakan ingatan anda dan anda ingin membersihkannya, Linux menyediakan cara untuk menyiram atau membersihkan cache ram.

  • Cari 15 proses teratas dengan penggunaan memori di Linux
  • Cari proses berjalan atas dengan memori tertinggi dan penggunaan CPU di Linux
  • Cara mengehadkan masa dan penggunaan memori proses di linux

Cara membersihkan cache di linux?

Setiap sistem Linux mempunyai tiga pilihan untuk membersihkan cache tanpa mengganggu sebarang proses atau perkhidmatan.

1. Jelas Pagecache sahaja.

# Sync; echo 1>/proc/sys/vm/drop_caches 

2. Jernih dentries dan inodes.

# Sync; echo 2>/proc/sys/vm/drop_caches 

3. Jelas Pagecache, Dentries, dan Inodes.

# Sync; echo 3>/proc/sys/vm/drop_caches 

Penjelasan Perintah di atas.

SYNC akan membuang penampan sistem fail. Arahan dipisahkan oleh ";" Jalankan secara berurutan. Shell menunggu setiap arahan untuk ditamatkan sebelum melaksanakan arahan seterusnya dalam urutan. Seperti yang disebutkan dalam dokumentasi kernel, menulis ke drop_cache akan membersihkan cache tanpa membunuh sebarang aplikasi/perkhidmatan, perintah echo melakukan tugas menulis ke fail.

Sekiranya anda perlu membersihkan cache cakera, perintah pertama paling selamat dalam perusahaan dan pengeluaran sebagai "... echo 1> .. ." akan membersihkan Pagecache hanya. Tidak disyorkan untuk menggunakan pilihan ketiga di atas "... echo 3>" dalam pengeluaran sehingga anda tahu apa yang anda lakukan, seperti yang akan jelas pagecache, dentries, dan inod.

Adakah idea yang baik untuk bebas penampan dan cache di linux yang mungkin digunakan oleh kernel linux?

Penampan dan Cache Percuma di Linux

Apabila anda menggunakan pelbagai tetapan dan ingin memeriksa, jika ia sebenarnya dilaksanakan secara khusus pada penanda aras I/O yang meluas, maka anda mungkin perlu membersihkan cache penampan. Anda boleh menjatuhkan cache seperti yang dijelaskan di atas tanpa menghidupkan semula sistem i.e., Tiada downtime diperlukan.

Linux direka sedemikian rupa sehingga ia melihat ke dalam cache cakera sebelum melihat ke cakera. Sekiranya ia menemui sumber dalam cache, maka permintaan itu tidak mencapai cakera. Sekiranya kita membersihkan cache, cache cakera akan kurang berguna kerana OS akan mencari sumber pada cakera.

Selain itu, ia juga akan memperlahankan sistem selama beberapa saat sementara cache dibersihkan dan setiap sumber yang diperlukan oleh OS dimuat semula dalam cache cakera.

Sekarang kita akan membuat skrip shell untuk cache ram yang jelas setiap hari di 2 pagi melalui tugas penjadual cron. Buat skrip shell kosongkan cache.sh dan tambahkan baris berikut.

#!/Bin/Bash # Nota, kami menggunakan "Echo 3", tetapi tidak disyorkan dalam pengeluaran sebaliknya menggunakan "echo 1" echo "echo 3>/proc/sys/vm/drop_caches" 

Tetapkan kebenaran melaksanakan ke atas kosongkan cache.sh fail.

# chmod 755 clearcache.sh 

Sekarang anda boleh memanggil skrip setiap kali anda dikehendaki membersihkan cache ram.

Sekarang tetapkan kron untuk membersihkan cache ram setiap hari pada pukul 2 pagi. Buka Crontab untuk mengedit.

# Crontab -e 

Tambah garis di bawah, simpan dan keluar untuk menjalankannya di 2 pagi setiap hari.

0 2 * * */PATH/TO/CLEARCACHE.sh 

Untuk maklumat lebih lanjut mengenai cara membuat pekerjaan, anda mungkin ingin menyemak artikel kami mengenai 11 pekerjaan penjadualan cron.

Adakah idea yang baik untuk membersihkan cache ram pada pelayan pengeluaran?

Kosongkan cache ram pada pelayan pengeluaran linux?

Tidak! bukan. Fikirkan keadaan apabila anda telah menjadualkan skrip untuk membersihkan cache ram setiap hari di 2 pagi. Setiap hari jam 2 pagi skrip dilaksanakan dan ia mengalir cache ram anda. Suatu hari untuk alasan apa pun mungkin lebih banyak daripada pengguna yang diharapkan dalam talian di laman web anda dan mencari sumber dari pelayan anda.

Pada masa yang sama, skrip yang dijadualkan berjalan dan membersihkan segala -galanya dalam cache. Sekarang semua pengguna mengambil data dari cakera. Ia akan mengakibatkan kemalangan pelayan dan merosakkan pangkalan data. Jadi jelas ram-cache hanya apabila diperlukan, dan mengenali jejak langkah anda, jika tidak, anda adalah pentadbir sistem kultus kargo.

Cara membersihkan ruang pertukaran di linux?

Sekiranya anda ingin membersihkan ruang pertukaran, anda mungkin ingin menjalankan arahan di bawah.

# swapoff -a && swapon -a 

Juga, anda boleh menambah arahan di atas ke skrip cron di atas, setelah memahami semua risiko yang berkaitan.

Sekarang kita akan menggabungkan kedua -dua arahan di atas menjadi satu arahan untuk membuat skrip yang betul untuk membersihkan cache dan ruang pertukaran.

# echo 3>/proc/sys/vm/drop_caches && swapoff -a && swapon -a && printf '\ n%s \ n "ram -cache dan swap dibersihkan' atau $ su -c" echo 3> '/proc/ sys/vm/drop_caches '&& swapoff -a && swapon -a && printf' \ n%s \ n "ram -cache dan swap dibersihkan '" akar 

Selepas menguji kedua -dua arahan di atas, kami akan menjalankan arahan "percuma -h"Sebelum dan selepas menjalankan skrip dan akan memeriksa cache.

Itu semua buat masa ini, jika anda menyukai artikel itu, jangan lupa untuk memberi kami maklum balas berharga anda dalam komen untuk memberitahu kami, apa yang anda fikir adalah idea yang baik untuk membersihkan cache ram dan penampan dalam pengeluaran dan perusahaan?