Nesploraw /proc File System fil-Linux
Illum, se nagħtu ħarsa ġewwa d-direttorju/proc u niżviluppaw familjarità miegħu. Id-direttorju /proc huwa preżenti fis-sistemi Linux kollha, irrispettivament mit-togħma jew l-arkitettura.
Kunċett żbaljat li rridu niċċaraw immedjatament huwa li d-direttorju/proc MHUX Sistema ta 'Fajl reali, fis-sens tat-terminu. Hija Sistema ta' Fajl Virtwali. Fi ħdan il-procfs hemm informazzjoni dwar proċessi u informazzjoni oħra tas-sistema. Huwa mmappjat għal/proc u mmuntat fil-ħin tal-ibbutjar.
L-ewwel, ejja nidħlu fid-direttorju/proc u nagħtu ħarsa madwar:
# cd /proc
L-ewwel ħaġa li tinnota hija li hemm xi fajls ħoss familjari, u mbagħad mazz sħiħ ta 'direttorji numerati. Id-direttorji numerati jirrappreżentaw proċessi, magħrufa aħjar bħala PIDs, u fi ħdanhom, kmand li jokkupahom. Il-fajls fihom informazzjoni tas-sistema bħal memorja (meminfo), informazzjoni dwar CPU (cpuinfo), u sistemi ta' fajls disponibbli.
Aqra wkoll: Kmand Ħieles tal-Linux biex Iċċekkja l-Memorja Fiżika u l-Iskambju tal-Memorja
Ejja nagħtu ħarsa lejn wieħed mill-fajls l-ewwel:
# cat /proc/meminfo
li jirritorna xi ħaġa simili għal din:
MemTotal: 604340 kB MemFree: 54240 kB Buffers: 18700 kB Cached: 369020 kB SwapCached: 0 kB Active: 312556 kB Inactive: 164856 kB Active(anon): 89744 kB Inactive(anon): 360 kB Active(file): 222812 kB Inactive(file): 164496 kB Unevictable: 0 kB Mlocked: 0 kB SwapTotal: 0 kB SwapFree: 0 kB Dirty: 0 kB Writeback: 0 kB AnonPages: 89724 kB Mapped: 18012 kB Shmem: 412 kB Slab: 50104 kB SReclaimable: 40224 kB ...
Kif tistgħu taraw, /proc/meminfo fih ħafna informazzjoni dwar il-memorja tas-sistema tiegħek, inkluż l-ammont totali disponibbli (f'kb) u l-ammont ħieles fuq iż-żewġ linji ta 'fuq.
It-tħaddim tal-kmand tal-qtates fuq kwalunkwe fajl f'/proc joħroġ il-kontenut tagħhom. Informazzjoni dwar kwalunkwe fajl hija disponibbli fil-paġna man billi tħaddem:
# man 5 /proc/<filename>
Se nagħtikom deskrizzjoni ta' malajr fuq il-fajls ta' /proc:
- /proc/cmdline – Informazzjoni tal-linja tal-kmand tal-kernel.
- /proc/console – Informazzjoni dwar consoles attwali inkluż tty.
- /proc/devices – Drivers tat-tagħmir bħalissa kkonfigurati għall-kernel li qed jaħdem.
- /proc/dma – Informazzjoni dwar il-kanali DMA attwali.
- /proc/fb – Apparati Framebuffer.
- /proc/filesystems – Sistemi ta' fajls attwali appoġġjati mill-kernel.
- /proc/iomem – Mappa attwali tal-memorja tas-sistema għall-apparati.
- /proc/ioports – Reġjuni tal-port irreġistrati għall-komunikazzjoni tal-output tal-input mal-apparat.
- /proc/loadavg – Il-medja tat-tagħbija tas-sistema.
- /proc/locks – Fajls li bħalissa huma msakkra bil-kernel.
- /proc/meminfo – Informazzjoni dwar il-memorja tas-sistema (ara l-eżempju ta' hawn fuq).
- /proc/misc – Sewwieqa mixxellanji reġistrati għal apparat ewlieni mixxellanju.
- /proc/modules – Moduli tal-kernel attwalment mgħobbija.
- /proc/mounts – Lista tal-muntaturi kollha li qed jintużaw mis-sistema.
- /proc/partitions – Informazzjoni dettaljata dwar diviżorji disponibbli għas-sistema.
- /proc/pci – Informazzjoni dwar kull apparat PCI.
- /proc/stat – Rekord jew statistika varji miżmuma mill-aħħar reboot.
- /proc/swap – Informazzjoni dwar l-ispazju ta' tpartit.
- /proc/uptime – Informazzjoni dwar l-uptime (f'sekondi).
- /proc/version – Verżjoni tal-kernel, verżjoni gcc, u distribuzzjoni Linux installata.
Fi ħdan id-direttorji numerati ta’ /proc issib ftit fajls u links. Ftakar li n-numri ta’ dawn id-direttorji jikkorrelataw mal-PID tal-kmand li qed jitħaddem fihom. Ejja nużaw eżempju. Fis-sistema tiegħi, hemm isem ta' folder /proc/12:
# cd /proc/12 # ls
attr coredump_filter io mounts oom_score_adj smaps wchan autogroup cpuset latency mountstats pagemap stack auxv cwd limits net personality stat cgroup environ loginuid ns root statm clear_refs exe maps numa_maps sched status cmdline fd mem oom_adj schedstat syscall comm fdinfo mountinfo oom_score sessionid task
Jekk niġri:
# cat /proc/12/status
Nirċievi dan li ġej:
Name: xenwatch State: S (sleeping) Tgid: 12 Pid: 12 PPid: 2 TracerPid: 0 Uid: 0 0 0 0 Gid: 0 0 0 0 FDSize: 64 Groups: Threads: 1 SigQ: 1/4592 SigPnd: 0000000000000000 ShdPnd: 0000000000000000 SigBlk: 0000000000000000 SigIgn: ffffffffffffffff SigCgt: 0000000000000000 CapInh: 0000000000000000 CapPrm: ffffffffffffffff CapEff: ffffffffffffffff CapBnd: ffffffffffffffff Cpus_allowed: 1 Cpus_allowed_list: 0 Mems_allowed: 00000000,00000001 Mems_allowed_list: 0 voluntary_ctxt_switches: 84 nonvoluntary_ctxt_switches: 0
Allura, xi jfisser dan? Ukoll, il-parti importanti hija fil-quċċata. Nistgħu naraw mill-fajl tal-istatus li dan il-proċess jappartjeni lil xenwatch. L-istat attwali tiegħu huwa irqad, u l-ID tal-proċess tiegħu huwa 12, ovvjament. Nistgħu naraw ukoll min qed imexxi dan, peress li l-UID u l-GID huma 0, li jindikaw li dan il-proċess jappartjeni lill-utent root.
Fi kwalunkwe direttorju numerat, ser ikollok struttura ta 'fajls simili. L-aktar importanti, u d-deskrizzjonijiet tagħhom, huma kif ġej:
- cmdline – linja tal-kmand tal-proċess
- ambjent – varjabbli ambjentali
- fd – deskritturi tal-fajls
- limiti – fih informazzjoni dwar il-limiti tal-proċess
- muntaturi – informazzjoni relatata
Tinnota wkoll numru ta’ links fid-direttorju numerat:
- cwd – link għad-direttorju tax-xogħol attwali tal-proċess
- exe – link għall-eżekutibbli tal-proċess
- root – link għad-direttorju tax-xogħol tal-proċess
Dan għandu jwassal biex tibda tiffamiljarizza ruħek mad-direttorju /proc. Għandu wkoll jipprovdi għarfien dwar kif numru ta 'kmandi jiksbu l-informazzjoni tagħhom, bħal uptime, lsof, mount, u ps, biex insemmu biss ftit.