GNU/Linux >> Belajar Linux >  >> Linux

Membedah perintah gratis:Apa yang perlu diketahui oleh sysadmin Linux

free adalah perintah populer yang digunakan oleh administrator sistem pada platform Unix/Linux. Ini adalah alat canggih yang memberikan wawasan tentang penggunaan memori dalam format yang dapat dibaca manusia.

man halaman untuk perintah ini menyatakan bahwa free menampilkan jumlah total memori kosong dan yang digunakan pada sistem, termasuk ruang fisik dan swap, serta buffer dan cache yang digunakan oleh kernel. Informasi dikumpulkan dengan mengurai /proc/meminfo .

Seperti perintah lainnya, free telah melalui revisi dari waktu ke waktu untuk membuat keluarannya bermakna dan akurat untuk pengambilan keputusan. Di Red Hat Enterprise Linux (RHEL) 6, outputnya agak berbeda dari RHEL 7 dan 8. Namun, di semua versi ini, ada parameter kunci yang tidak berubah.

Di RHEL 6, ketik free -h (Saya menggunakan -h opsi untuk format yang dapat dibaca manusia) menunjukkan keluaran yang mirip dengan berikut ini:

[root@srv ~]# free -h
             total       used       free     shared    buffers     cached
Mem:           94G        44G        49G       161M       993M       1.3G
-/+ buffers/cache:        42G        52G
Swap:          15G         0B        15G 

(gambar 1)

RHEL 7/8 menampilkan informasi seperti di bawah ini:


[root@server1 ~]# free -h
               total        used        free      shared  buff/cache   available
Mem:            15G        751M        1.2G        272M         13G         14G
Swap:            0B          0B          0B 

(gambar 2)

RHEL 8 akan memiliki output seperti di bawah ini:

[root@tiger ~]# free -h               total        used        free      shared  buff/cache   available Mem:          819Mi       164Mi       146Mi        25Mi       509Mi       491Mi Swap:            0B          0B          0B (Figure 3)


Agar output di atas lebih mudah dibaca, perintah ini menyediakan berbagai opsi:
free -b , -k , -m , -g :Menampilkan jumlah memori dalam byte, kilobyte, megabyte,  gigabyte masing-masing. Anda juga dapat menggunakan free -h untuk menunjukkan output dalam output yang dapat dibaca manusia. Silakan jalankan free --help untuk informasi selengkapnya tentang opsi.

Berbagai kolom, yang ditampilkan oleh berbagai rilis di atas, berusaha mengidentifikasi memori Total, terpakai, bebas, bersama. Ini juga berusaha untuk menampilkan memori yang disimpan dalam cache dan buffer juga.

Namun, seperti kebanyakan perintah, kolom yang relevan untuk memeriksa mana yang mungkin menarik bagi administrator sistem saat melakukan pembersihan atau pemecahan masalah suatu masalah dijelaskan di bawah ini.

Red Hat Enterprise Linux 6

Dalam kasus RHEL 6, fokusnya harus pada -/+ buffers/cache kolom.

Pada gambar 1 di atas totalnya 94 GB, terpakai 44 GB, dan gratis 49 GB. Sistem ini cukup sibuk, tetapi RAM yang digunakan tampaknya tinggi. Ini seharusnya tidak menimbulkan banyak kekhawatiran, tetapi admin perlu melihat -/+ buffers/cache kolom. -/+ buffer/cache menampilkan memori bekas sebagai 42 GB dan memori bebas sebagai 52 GB. Ini berarti jumlah sebenarnya dari RAM yang digunakan adalah 42 GB dan bukan 44 GB. Nilai 44 GB termasuk cache juga. Sekilas tentang bekas nilai tanpa mempertimbangkan cache mempengaruhi interpretasi Anda terhadap kinerja sistem.

Kolom buffer dan cache dijelaskan di bawah ini:

  • buffer:memori yang digunakan oleh buffer kernel
  • cache:ruang memori yang ditempati oleh "Page Cache."

Halaman cache tidak lain adalah data/file yang disalin ke RAM ketika kernel melakukan operasi baca/tulis pada disk. Alasan untuk menyimpan halaman ini dalam cache adalah untuk kinerja I/O. Jadi, kernel menyimpan file-file ini dalam RAM dan membebaskannya kapan pun tidak diperlukan atau kapan pun ruang memori diminta oleh proses/perintah baru yang disediakan ketika tidak ada ruang kosong yang tersedia di RAM.

Red Hat Enterprise Linux 7/8

Pada RHEL 7/8, fokusnya harus pada tersedia kolom. Di RHEL 7/8, -/+ buffers/cache dilepas dan diganti dengan tersedia kolom. penyangga dan tembolok digabungkan menjadi buff/cache dan memiliki arti yang sama seperti yang dijelaskan di atas. tersedia kolom memperkirakan berapa banyak memori yang tersedia untuk memulai aplikasi baru tanpa bertukar.

Pada gambar 2 di atas, total RAM yang terpasang adalah 15 GB, yang digunakan adalah 751 MB, dan yang gratis adalah 1,2 GB. Menggunakan alasan yang sama seperti yang kami lakukan dengan RHEL 6, lihat saja bekas nilai dapat menyebabkan kesimpulan yang salah. bekas kolom harus dipahami dengan mempertimbangkan kolom cache juga. Ada banyak caching dengan tersedia nilai 14 GB, yang sangat tinggi, hampir sama dengan total RAM.

Kapan administrator sistem harus mulai khawatir?

Sistem yang sehat dengan memori yang lebih dari cukup, setelah berjalan beberapa saat, akan menunjukkan perilaku yang diharapkan dan tidak berbahaya berikut ini:

  • memori bebas mendekati 0 atau sangat kecil
  • memori yang digunakan hampir habis
  • memori yang tersedia (atau gratis -/+ buffer/cache) lebih besar dibandingkan dengan total memori
  • tukar nilai yang digunakan tidak berubah

Namun, administrator sistem perlu khawatir ketika ada tanda-tanda yang menunjukkan situasi memori rendah yang sebenarnya. Berikut beberapa tanda tersebut:

  • memori yang tersedia (atau -/+ buffer/cache gratis) mendekati nol atau sangat kecil
  • nilai swap yang digunakan mulai meningkat atau berfluktuasi karena tidak ada halaman memori kosong yang dapat digunakan sistem sehingga sistem harus menggunakan disk swap
  • Ada pesan OutOfMemory-killer di log saat diperiksa dengan grep -i kill /var/log/messages* atau dmesg | grep oom-killer

Penutup

free command adalah utilitas yang sangat berguna yang dapat memberi tahu administrator sistem banyak hal tentang apa yang terjadi di server. Belajar mengenali perbedaan antara versi free dapat membantu dengan interpretasi output yang lebih akurat.

[ Ingin mencoba Red Hat Enterprise Linux? Unduh sekarang secara gratis. ]


Linux
  1. Kuasai perintah Linux ls

  2. Apa yang setara dengan perintah 'gratis' Linux di FreeBSD v8.1

  3. Apa yang setara dengan perintah File Linux untuk windows?

  1. Jangan pernah melakukan ini pada linux Anda rm -rf * / satu perintah untuk menghancurkan seluruh linux

  2. Apa perintah ekspor yang seharusnya dilakukan di Linux?

  3. Di Linux, apa perbedaan antara buffer dan cache yang dilaporkan oleh perintah free?

  1. Apa arti &di akhir perintah linux?

  2. Apa analog Windows dari perintah jam tangan Linux?

  3. Apa yang setara dengan ~ (tilde) Linux di Windows?