GNU/Linux >> Belajar Linux >  >> Linux

File sistem file Linux / proc penting yang perlu Anda ketahui

Seperti yang Anda baca di artikel pertama saya, Menjelajahi sistem file /proc , /proc filesystem berisi banyak file yang dapat digunakan administrator sistem untuk menemukan susunan perangkat keras, parameter konfigurasi, dan pelengkap proses pada sistem yang berjalan. Tidak semua file memiliki nilai yang sama untuk sebuah sysadmin. Dalam artikel ini, saya membahas file teks (bukan direktori/proses) dengan nilai tertinggi untuk sysadmin. Karena itu, harap sadari bahwa definisi saya tentang nilai berarti nilai bagi saya dan penemuan saya pada sistem yang diwariskan dan pada sistem yang tidak terlalu saya kenal.

Berikut adalah daftar /proc direktori file teks umum pada sistem berbasis Red Hat:

/proc/apm
/proc/buddyinfo
/proc/cmdline
/proc/cpuinfo
/proc/crypto
/proc/devices
/proc/dma
/proc/execdomains
/proc/fb
/proc/filesystems
/proc/interrupts
/proc/iomem
/proc/ioports
/proc/kcore*
/proc/kmsg*
/proc/loadavg
/proc/locks
/proc/mdstat
/proc/meminfo
/proc/misc
/proc/modules
/proc/mounts
/proc/mtrr
/proc/partitions
/proc/pci
/proc/slabinfo*
/proc/stat
/proc/swaps
/proc/sysrq-trigger
/proc/uptime
/proc/version

* root readable only

Jika Anda mengeluarkan perintah daftar panjang (ls -l /proc ), Anda akan melihat bahwa semua file kecuali kcore (tidak ditampilkan) file memiliki ukuran nol. Namun, file-file ini tidak kosong. Mereka berisi informasi berharga.

$ ls -l /proc

-r--r--r--.  1 root    root                  0 Feb 25 23:13 buddyinfo
-r--r--r--.  1 root    root                  0 Feb 25 23:13 cgroups
-r--r--r--.  1 root    root                  0 Feb 25 23:13 cmdline
-r--r--r--.  1 root    root                  0 Feb 25 23:13 consoles
-r--r--r--.  1 root    root                  0 Feb 25 23:13 cpuinfo
-r--r--r--.  1 root    root                  0 Feb 25 23:13 crypto
-r--r--r--.  1 root    root                  0 Feb 25 23:13 devices
-r--r--r--.  1 root    root                  0 Feb 25 23:13 diskstats
-r--r--r--.  1 root    root                  0 Feb 25 23:13 dma

/proc file yang menurut saya paling berharga, terutama untuk penemuan sistem yang diwariskan, adalah:

  • cmdline
  • cpuinfo
  • meminfo
  • versi

Dan yang paling berharga adalah cpuinfo dan meminfo .

Sekali lagi, saya tidak menyatakan bahwa file lain tidak memiliki nilai, tetapi ini adalah file yang saya temukan yang paling berharga bagi saya. Misalnya, /proc/uptime file memberi Anda waktu aktif sistem dalam hitungan detik. Bagi saya, itu tidak terlalu berharga. Namun, jika saya menginginkan informasi itu, saya menggunakan uptime perintah yang juga memberi saya versi /proc/loadavg yang lebih mudah dibaca juga.

Sebagai perbandingan:

$ cat /proc/uptime
46901.13 46856.69

$ cat /proc/loadavg 
0.00 0.01 0.03 2/111 2039

$ uptime
 00:56:13 up 13:01,  2 users,  load average: 0.00, 0.01, 0.03

Saya pikir Anda mengerti.

/proc/cmdline

File ini menunjukkan parameter yang diteruskan ke kernel pada saat dimulai.

$ cat /proc/cmdline

BOOT_IMAGE=/vmlinuz-3.10.0-1062.el7.x86_64 root=/dev/mapper/centos-root ro crashkernel=auto spectre_v2=retpoline rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet LANG=en_US.UTF-8

Nilai dari informasi ini adalah bagaimana kernel di-boot karena setiap sakelar atau parameter khusus akan dicantumkan di sini juga. Dan seperti semua informasi di bawah /proc , dapat ditemukan di tempat lain dan biasanya dengan format yang lebih baik, tetapi /proc file sangat berguna ketika Anda tidak dapat mengingat perintah atau tidak ingin grep untuk sesuatu.

/proc/cpuinfo

/proc/cpuinfo file adalah file pertama yang saya periksa saat menghubungkan ke sistem baru. Saya ingin mengetahui susunan CPU dari suatu sistem dan file ini memberi tahu saya semua yang perlu saya ketahui.

$ cat /proc/cpuinfo 

processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 142
model name	: Intel(R) Core(TM) i5-7360U CPU @ 2.30GHz
stepping	: 9
cpu MHz		: 2303.998
cache size	: 4096 KB
physical id	: 0
siblings	: 1
core id		: 0
cpu cores	: 1
apicid		: 0
initial apicid	: 0
fpu		: yes
fpu_exception	: yes
cpuid level	: 22
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc eagerfpu pni pclmulqdq monitor ssse3 cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx rdrand hypervisor lahf_lm abm 3dnowprefetch fsgsbase avx2 invpcid rdseed clflushopt md_clear flush_l1d
bogomips	: 4607.99
clflush size	: 64
cache_alignment	: 64
address sizes	: 39 bits physical, 48 bits virtual
power management:

Ini adalah mesin virtual dan hanya memiliki satu vCPU. Jika sistem Anda berisi lebih dari satu CPU, penomoran CPU dimulai dari 0 untuk CPU pertama.

/proc/meminfo

/proc/meminfo file adalah file kedua yang saya periksa pada sistem baru. Ini memberi saya pandangan umum dan khusus tentang alokasi dan penggunaan memori sistem.

$ cat /proc/meminfo 
MemTotal:        1014824 kB
MemFree:          643608 kB
MemAvailable:     706648 kB
Buffers:            1072 kB
Cached:           185568 kB
SwapCached:            0 kB
Active:           187568 kB
Inactive:          80092 kB
Active(anon):      81332 kB
Inactive(anon):     6604 kB
Active(file):     106236 kB
Inactive(file):    73488 kB
Unevictable:           0 kB
Mlocked:               0 kB
***Output truncated***

Saya pikir sebagian besar sysadmin menggunakan free atau top perintah untuk menarik beberapa data yang terdapat di sini. /proc/meminfo file memberi saya gambaran umum memori cepat yang saya suka dan dapat mengarahkan ke file lain sebagai snapshot.

/proc/versi

/proc/version perintah memberikan lebih banyak informasi daripada uname -a terkait perintah tidak. Berikut perbandingan keduanya:

$ cat /proc/version
Linux version 3.10.0-1062.el7.x86_64 ([email protected]) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) ) #1 SMP Wed Aug 7 18:08:02 UTC 2019

$ uname -a
Linux centos7 3.10.0-1062.el7.x86_64 #1 SMP Wed Aug 7 18:08:02 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Biasanya, uname -a perintah ini cukup untuk memberi Anda info versi kernel tetapi bagi Anda yang merupakan pengembang atau yang sangat peduli dengan detail, /proc/version file ada untuk Anda.

Menutup

/proc filesystem memiliki banyak sekali informasi berharga yang tersedia bagi administrator sistem yang menginginkan cara yang nyaman dan non-perintah untuk mendapatkan info sistem mentah. Seperti yang saya nyatakan sebelumnya, ada cara lain untuk menampilkan informasi di /proc . Selain itu, beberapa /proc info bukan yang ingin Anda gunakan untuk penilaian sistem. Misalnya, gunakan perintah seperti vmstat 5 5 atau iostat 5 5 untuk mendapatkan gambaran yang lebih baik tentang kinerja sistem daripada membaca salah satu /proc . yang tersedia file.

[ Perlu mempelajari lebih lanjut tentang administrasi sistem Linux? Ikuti kursus administrasi sistem Red Hat. ]


Linux
  1. 10 perintah dasar Linux yang perlu Anda ketahui

  2. Menjelajahi sistem file Linux /proc

  3. Mengapa pada beberapa sistem Linux, sistem file root muncul sebagai /dev/root bukan /dev/<real device node>di mtab?

  1. Bagaimana Linux Menangani Beberapa Pemisah Jalur Berturut-turut (/home////username///file)?

  2. Linux – Menautkan /proc/mnt Ke /proc/mounts?

  3. /proc/[pid]/pagemaps dan /proc/[pid]/maps | linux

  1. Direktori tmp Linux:Semua yang Perlu Anda Ketahui

  2. Kompresi File Linux:Semua yang Perlu Anda Ketahui

  3. Izin File Linux:Semua yang Perlu Anda Ketahui