GNU/Linux >> Znalost Linux >  >> Linux

Důležité soubory souborového systému Linux /proc, které potřebujete znát

Jak jste četli v mém prvním článku Prozkoumávání souborového systému /proc , /proc souborový systém obsahuje mnoho souborů, které mohou správci systému použít ke zjištění hardwarového složení, konfiguračních parametrů a doplňku procesů na běžícím systému. Ne všechny soubory mají pro správce systému stejnou hodnotu. V tomto článku se zabývám textovými soubory (nikoli adresáři/procesy) s nejvyšší hodnotou pro systémové správce. To znamená, že si prosím uvědomte, že moje definice hodnoty znamená hodnotu pro mě a pro můj objev o zděděných systémech a systémech, se kterými jsem málo obeznámen.

Následuje seznam /proc adresář běžných textových souborů v systémech založených na 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

Pokud zadáte příkaz s dlouhým výpisem (ls -l /proc ), všimnete si, že všechny soubory kromě kcore (nezobrazeno) soubor má nulovou velikost. Tyto soubory však nejsou prázdné. Obsahují cenné informace.

$ 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 soubory, které považuji za nejcennější, zejména pro zjišťování zděděného systému, jsou:

  • cmdline
  • cpuinfo
  • informace o paměti
  • verze

A nejcennější z nich jsou cpuinfo a meminfo .

Opět netvrdím, že jiné soubory nemají hodnotu, ale zjistil jsem, že toto jsou ty, které pro mě mají největší hodnotu. Například /proc/uptime soubor vám poskytne dobu provozuschopnosti systému v sekundách. Pro mě to není nijak zvlášť cenné. Pokud však tyto informace chci, použiji uptime příkaz, který mi také poskytuje čitelnější verzi /proc/loadavg také.

Pro srovnání:

$ 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

Myslím, že tomu rozumíte.

/proc/cmdline

Tento soubor ukazuje parametry předané jádru v době jeho spuštění.

$ 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

Hodnota této informace je v tom, jak bylo jádro nabootováno, protože zde budou také uvedeny všechny přepínače nebo speciální parametry. A jako všechny informace pod /proc , lze jej nalézt jinde a obvykle s lepším formátováním, ale /proc soubory jsou velmi užitečné, když si nepamatujete příkaz nebo nechcete grep za něco.

/proc/cpuinfo

Soubor /proc/cpuinfo soubor je první soubor, který zkontroluji při připojování k novému systému. Chci znát CPU sestavu systému a tento soubor mi řekne vše, co potřebuji vědět.

$ 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:

Toto je virtuální stroj a má pouze jeden vCPU. Pokud váš systém obsahuje více než jeden CPU, číslování CPU začíná na 0 pro první CPU.

/proc/meminfo

/proc/meminfo soubor je druhý soubor, který zkontroluji na novém systému. Poskytuje mi obecný a konkrétní pohled na alokaci paměti a využití systému.

$ 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***

Myslím, že většina systémových administrátorů buď používá free nebo top příkaz k načtení některých zde obsažených dat. /proc/meminfo file mi poskytuje rychlý přehled paměti, který se mi líbí, a který se může přesměrovat na jiný soubor jako snímek.

/proc/version

/proc/version příkaz poskytuje více informací než související uname -a příkaz dělá. Zde jsou tyto dvě srovnání:

$ 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

Obvykle uname -a příkaz je dostatečný k tomu, aby vám poskytl informace o verzi jádra, ale pro ty z vás, kteří jsou vývojáři nebo se extrémně zajímají o podrobnosti, /proc/version soubor je tu pro vás.

Koneckonců

/proc filesystem má spoustu cenných informací dostupných pro systémové administrátory, kteří chtějí pohodlný, nekomandový způsob, jak získat nezpracované systémové informace. Jak jsem uvedl dříve, existují další způsoby, jak zobrazit informace v /proc . Navíc některé z /proc info není to, co byste chtěli použít pro hodnocení systému. Použijte například příkazy jako vmstat 5 5 nebo iostat 5 5 získat lepší obrázek o výkonu systému, než číst jeden z dostupných /proc soubory.

[ Potřebujete se dozvědět více o správě systému Linux? Absolvujte kurz správy systému Red Hat. ]


Linux
  1. 10 základních linuxových příkazů, které potřebujete znát

  2. Jak Linux zpracovává více po sobě jdoucích oddělovačů cest (/home////username///soubor)?

  3. Linux – propojení /proc/mnt s /proc/mounts?

  1. Prozkoumání souborového systému Linux /proc

  2. /proc/[pid]/pagemaps a /proc/[pid]/maps | linux

  3. Proč se na některých systémech Linux kořenový souborový systém zobrazuje jako /dev/root místo /dev/<uzel skutečného zařízení>v mtab?

  1. Linux tmp Directory:Vše, co potřebujete vědět

  2. Linuxová komprese souborů:Vše, co potřebujete vědět

  3. Oprávnění souborů Linux:Vše, co potřebujete vědět