Bincika /proc Tsarin Fayil a cikin Linux
A yau, za mu duba cikin /proc directory kuma mu sami sabani da shi. Kundin tsarin /proc yana nan akan duk tsarin Linux, ba tare da la'akari da dandano ko gine-gine ba.
Ɗaya daga cikin kuskuren da dole mu share nan da nan shine cewa /proc directory ba ainihin Tsarin Fayil bane, a ma'anar kalmar. Yana da Virtual File System. Kunshe a cikin procfs akwai bayanai game da matakai da sauran bayanan tsarin. An tsara shi zuwa /proc kuma an saka shi a lokacin taya.
Da farko, bari mu shiga cikin /proc directory kuma a duba:
# cd /proc
Abu na farko da za ku lura shi ne cewa akwai wasu fayilolin da aka saba da su masu sauti, sa'an nan kuma tarin kundayen adireshi masu lamba. Kundayen adireshi masu ƙididdigewa suna wakiltar matakai, waɗanda aka fi sani da PIDs, kuma a cikin su, umarnin da ya mamaye su. Fayilolin sun ƙunshi bayanan tsarin kamar ƙwaƙwalwar ajiya (meminfo), bayanin CPU (cpuinfo), da tsarin fayil akwai.
Karanta Hakanan: Umurnin Kyauta na Linux don Duba Ƙwaƙwalwar Jiki da Musanya Ƙwaƙwalwar ajiya
Bari mu fara duba ɗaya daga cikin fayilolin:
# cat /proc/meminfo
wanda ya mayar da wani abu makamancin haka:
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 ...
Kamar yadda kake gani, /proc/meminfo ya ƙunshi ɗimbin bayanai game da ƙwaƙwalwar ajiyar tsarin ku, gami da jimillar adadin da ake samu (a cikin kb) da adadin kyauta a saman layi biyu.
Gudanar da umarnin cat akan kowane fayiloli a /proc zai fitar da abubuwan da ke cikin su. Ana samun bayanai game da kowane fayiloli a cikin shafin mutum ta hanyar gudu:
# man 5 /proc/<filename>
Zan ba ku cikakken bayani kan fayilolin /proc:
- /proc/cmdline – Bayanin layin umarni na Kernel.
- /proc/console - Bayani game da na'urorin wasan bidiyo na yanzu gami da tty.
- /proc/na'urori - A halin yanzu an saita direbobin na'ura don kernel mai gudana.
- /proc/dma – Bayani game da tashoshin DMA na yanzu.
- /proc/fb – Framebuffer na'urorin.
- /proc/filesystems - Tsarin fayil na yanzu yana goyan bayan kernel.
- /proc/iomem - Taswirar ƙwaƙwalwar ajiyar tsarin yanzu don na'urori.
- /proc/ioports - Yankunan tashar jiragen ruwa masu rijista don shigar da fitarwar sadarwa tare da na'ura.
- /proc/loadavg - Matsakaicin nauyin tsarin.
- /proc/locks - Fayiloli a halin yanzu suna kulle ta kernel.
- /proc/meminfo - Bayani game da ƙwaƙwalwar ajiyar tsarin (duba misalin sama).
- /proc/misc - Direbobi daban-daban sun yi rajista don manyan na'urori daban-daban.
- /proc/modules - A halin yanzu an ɗora kayan kwaya.
- /proc/mounts – Jerin duk abubuwan hawa da ake amfani da su ta tsarin.
- /proc/partitions - Cikakken bayani game da ɓangarorin da ke akwai ga tsarin.
- /proc/pci - Bayani game da kowace na'urar PCI.
- /proc/stat – Rikodi ko kididdiga daban-daban da aka kiyaye daga sake yi na ƙarshe.
- /proc/swap – Bayani game da musanyar wuri.
- /proc/uptime – Bayanin lokacin aiki (a cikin daƙiƙa).
- /proc/version – Sigar Kernel, sigar gcc, da kuma rarraba Linux.
A cikin kundayen adireshi masu lamba /proc zaku sami ƴan fayiloli da hanyoyin haɗin gwiwa. Ka tuna cewa waɗannan kundayen adireshi suna da alaƙa da PID na umarnin da ake gudanarwa a cikin su. Bari mu yi amfani da misali. A kan tsarina, akwai sunan babban fayil /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
Idan na gudu:
# cat /proc/12/status
Ina samun mai zuwa:
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
To, menene wannan yake nufi? To, muhimmin sashi yana saman. Zamu iya gani daga fayil ɗin matsayi cewa wannan tsari na xenwatch ne. Halinsa na yanzu yana barci, kuma ID ɗin tsarin sa shine 12, a fili. Hakanan zamu iya ganin wanda ke tafiyar da wannan, kamar yadda UID da GID suke 0, yana nuna cewa wannan tsari na tushen mai amfani ne.
A cikin kowane kundin adireshi mai lamba, zaku sami tsarin fayil iri ɗaya. Mafi mahimmanci, da bayaninsu, sune kamar haka.
- cmdline – layin umarni na tsari
- Muhalli – Matsalolin muhalli
- fd – masu bayanin fayil
- iyaka - ya ƙunshi bayani game da iyakokin tsari
- hawa - bayanai masu alaƙa
Hakanan za ku lura da adadin hanyoyin haɗin gwiwa a cikin kundin adireshi mai lamba:
- cwd – hanyar haɗi zuwa kundin tsarin aiki na yanzu
- exe - hanyar haɗi zuwa aiwatar da aiwatarwa
- tushen – hanyar haɗi zuwa kundin tsarin aiki
Wannan ya kamata ku fara tare da sanin kanku da jagorar /proc. Hakanan yakamata ya ba da haske kan yadda yawancin umarni ke samun bayanansu, kamar lokacin aiki, lsof, mount, da ps, don kawai suna suna kaɗan.