<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=koi8-r"> <META NAME="GENERATOR" CONTENT="lfparser_2.45"> <META NAME="LFCATEGORY" CONTENT="KernelCorner"> <link rel="icon" href="../../common/images/lf-16.png" type="image/png"> <TITLE>lf324, KernelCorner: ������� �������� ������� proc</TITLE> <style type="text/css"> <!-- td.top {font-family: Arial,Geneva,Verdana,Helvetica,sans-serif; font-size:12 } pre { font-family:monospace,Courier } pre.code { font-family:monospace,Courier;background-color:#aedbe8; } p.cl { color:#EE9500 } a.nodec { text-decoration:none } p.trans { font-size:8pt; text-align:right } p.clbox { width:50%; alignment:center; background-color:#FFD700; border-style:none; border-width:medium; border-color:#FFD700; padding:0.5cm; text-align:center } p.code { width:80%; alignment:center; background-color:#aedbe8; border-style:none; border-width:medium; border-color:#aedbe8; padding:0.1cm; text-align:left } p.foot { background-color:#AAAAAA; color:#FFFFFF; border-style:none; border-width:medium; border-color:#AAAAAA; padding:0.5cm ; margin-top:0.1cm; margin-right:1cm; margin-left:1cm; text-align:center } .mark { background-color:#e6e6ff } --> </style> </HEAD> <BODY bgcolor="#ffffff" text="#000000"> <!-- this is generated html code. NEVER use this file for your translation work. Instead get the file with the same article number and .meta.shtml in its name. Translate this meta file and then use lfparser program to generate the final article --> <!-- lfparser can be obtained from http://main.linuxfocus.org/~guido/dev/lfparser.html --> <!-- this is used by a number of tools: =LF=AUTHOR: Sandeep Grover =LF=CAT___: KernelCorner =LF=TITLE_: ������� �������� ������� proc =LF=NUMBER: 324 =LF=ANAME_: article324.shtml --> <!-- 2pdaIgnoreStart --> <!-- start navegation bar, style=2 --> <!-- top navegation bar --> <TABLE summary="topbar_1" cellspacing="0" cellpadding="0" border="0" align="center" width="90%"> <TR bgcolor="#2e2292"> <TD class="top"><TABLE summary="topbar_1_logo" cellspacing="0" cellpadding="0" border="0" width= "100%"> <TR><TD width="319"><IMG src="../../common/images/logolftop_319x45.gif" alt="[LinuxFocus-icon]" width="319" height="45" align="left" border="0"></TD> <TD class="top"> <TABLE summary="topbar_1_links" width="100%"> <TR align="right"> <TD class="top"> <A class="nodec" href="index.shtml"><FONT color= "#DDDDDD" size="2"><--</FONT></A> | <A class="nodec" href="../index.shtml"><FONT color= "#DDDDDD" size="2">�����</FONT></A> | <A class="nodec" href="../map.html"><FONT color= "#DDDDDD" size="2">�����</FONT></A> | <A class="nodec" href="../indice.html"><FONT color= "#DDDDDD" size="2">������</FONT></A> | <A class="nodec" href="../Search/index.shtml"><FONT color= "#DDDDDD" size="2">�����</FONT></A> </TD> </TR> <TR align="right"> <TD class="top"> <HR width="100%" noshade size="1"> </TD> </TR> </TABLE> </TD> </TR> </TABLE> </TD> </TR> </TABLE> <!-- end top navegation bar --> <!-- blue bar --> <TABLE summary="topbar_2" cellspacing="0" cellpadding="0" border="0" align="center" width="90%"> <TR bgcolor="#00ffff"> <TD><IMG src="../../common/images/transpix.gif" width="1" height= "2" alt=""></TD> </TR> </TABLE> <!-- end blue bar --> <!-- bottom navegation bar --> <TABLE summary="topbar_3" cellspacing="0" cellpadding="0" border="0" align="center" width="94%"> <TR bgcolor="#000000"> <TD> <TABLE summary="topbar_3_links" cellspacing="0" cellpadding="1" border="0" width= "100%"> <TR align="center"> <TD WIDTH="20%"><A class="nodec" href="../News/index.shtml"><FONT color= "#FFFFFF">�������</FONT></A> </TD> <TD WIDTH="5%"><FONT color="#FFFFFF">|</FONT> </TD> <TD WIDTH="20%"><A class="nodec" href="../Archives/"><FONT color= "#FFFFFF">������</FONT></A> </TD> <TD WIDTH="5%"><FONT color="#FFFFFF">|</FONT> </TD> <TD WIDTH="20%"><A class="nodec" href="../Links/index.shtml"><FONT color= "#FFFFFF">������</FONT></A> </TD> <TD WIDTH="5%"><FONT color="#FFFFFF">|</FONT> </TD> <TD WIDTH="20%"><A class="nodec" href="../aboutus.html"><FONT color= "#FFFFFF">��� LF</FONT></A> </TD> </TR> </TABLE> </TD> </TR> </TABLE> <!-- end bottom navegation bar --> <!-- stop navegation bar --> <!-- SSI_INFO --> <!-- tr_staticssi include virtual --> <!-- tr_staticssi exec cmd --> <!-- addedByLfdynahead ver 1.5 --><TABLE ALIGN="right" border=0><TR><TD ALIGN="right"><FONT SIZE="-1" FACE="Arial,Helvetica">��� �������� �������� �� ��������� ������: <A href="../../English/January2004/article324.shtml">English</a> <A href="../../Castellano/January2004/article324.shtml">Castellano</a> <A href="../../ChineseGB/January2004/article324.shtml">ChineseGB</a> <A href="../../Deutsch/January2004/article324.shtml">Deutsch</a> <A href="../../Francais/January2004/article324.shtml">Francais</a> <A href="../../Nederlands/January2004/article324.shtml">Nederlands</a> <A href="../../Russian/January2004/article324.shtml">Russian</a> <A href="../../Turkce/January2004/article324.shtml">Turkce</a> <A href="../../Polish/January2004/article324.shtml">Polish</a> </FONT></TD></TR></TABLE><br> <!-- SSI_INFO STOP --> <!-- 2pdaIgnoreStop --> <!-- SHORT BIO ABOUT THE AUTHOR --> <TABLE ALIGN=LEFT BORDER=0 WIDTH="190" summary="about the author"> <TR> <TD> <img src="../../common/images/SandeepGrover.jpg" width="150" height="177" alt="[Sandeep Grover]"> <BR>����� Sandeep Grover <br> <small><sandeep<at>Magma-DA.com></small> <BR><BR> <I>�� ������:</I><BR> <!-- aboutauthor_start --> <p>Sandeep Grover �������� � Magma Design Automation, India -- ������������������� EDA (Electronic Design Automation) ��������. � ��������� ����� ���������� ��������� ���������� �� Linux � �������� � ������� ������������� � ���������� ���� ���� ������������ �������! </p> <!-- aboutauthor_stop --> <!-- TRANSLATED TO ru --> <BR><BR><I>������� �� �������:</I><BR> Pukhlyakov Kirill <small><kirill<at>linuxfocus.org></small> <br> <!-- =LF=TRANSTO=ru: Pukhlyakov Kirill --> <!-- TRANSLATED TO STOP --> <BR><i>����������</i>: <UL> <LI><A HREF="#324lfindex0">����������� �������� ������� /proc</A></LI> <LI><A HREF="#324lfindex1">������������ �������� ������� /proc</A></LI> <LI><A HREF="#324lfindex2">�������� ������ /proc</A></LI> <LI><A HREF="#324lfindex3">�������� ���������� � ������� � ����</A></LI> <LI><A HREF="#324lfindex4">���������� � ���������</A></LI> <LI><A HREF="#324lfindex5">������ � ����� ����������� /proc</A></LI> <LI><A HREF="#324lfindex6">�����</A></LI> <LI><A HREF="#324lfindex7">������ ����������</A></LI> <LI><A HREF="http://cgi.linuxfocus.org/cgi-bin/lftalkback?anum=324">�������� �������</A></LI> </UL> </TD></TR></TABLE> <!-- HEAD OF THE ARTICLE --> <br> <table border="0"><tr><td> <H2>� �������� ������� /proc</H2> <img src="../../common/images/illustration324.gif" width="350" height="285" alt="[the proc filesystem]"> <!-- ABSTRACT OF THE ARTICLE --> <P><i>������</i>: <P> <!-- articleabstract_start --> <p>���� Linux ������������� �������� ������� � ����� ���������� ���������� � ��������� �������� ��������� ���� �� ����� ������ �� ����������� ������� /proc. �� ���������� � ������� ��� ������� ���������� ����������� Intel x86, �� �������� �������� ��������� � �� Linux �� ����� ���������. </p> <!-- articleabstract_stop --> <br><!-- HR divider --><center><font color="#8282e0"><b>_________________ _________________ _________________</b></font></center><br> </td></tr></table> <!-- BODY OF THE ARTICLE --> <A NAME="324lfindex0"> </A> <H2>����������� �������� ������� /proc</H2> <p>�������� ������� /proc �������� ���������� ��� ���� � ��� �������, ����������� �������� ���������� ��������� ( ������ � �������� /proc ). � ������� ���� ����������� �������� ������� �� ������ �������� � ����������� ����������� ����, �������� �������� ���������� � ��������� � �������� ��������� ( ����� ��������� ���� ) �� ����. �������� ������� /proc ������������� � ������ � ������� �� ������ �������� ������, ������� ������������� �� �����. ���� �� ���������� �� ���� /proc/mounts ( �� ������� ������ ���� ���������������� �������� ������ ������� ������� "moount" ) �� ������� ���-������ ���� : </p> <br clear="all"> <pre class="code"> grep proc /proc/mounts /proc /proc proc rw 0 0 </pre> <p>/proc �������������� �����. ��-�� ����, ��� ��� ������������� ���������� �������������� �����, �������, ��� ��� ������������� � ������, �������������� ����� �����. ������� "ls -l" �������, ��� ����������� ������ � ���� ������� ����� ������� �����, �� ��������� ����� ���� �� �������� ���������� ����������. ��� ��� ����� ����? ��� ������ - �������� ������� /proc ��� ����� ������ �������� ������� �������������� �� ������ VFS ( Virtual File System layer ). ������� ��� ������� ������/���������, �������� ������� /proc ������� ��� �����/�������� �� ��������� ����������, ������������ � ����.</p> <A NAME="324lfindex1"> </A> <H2>������������ �������� ������� /proc</H2> <p>���� /proc ��� �� �������������� - �� ������ ������� ��� ��������� �������: <br> </p> <p class="code"> mount -t proc proc /proc </p> ����� ��������� ���������� �� �������� �������� man mount. <p></p> <A NAME="324lfindex2"> </A> <H2>�������� ������ /proc</H2> <p>� ������� ������ � /proc �� ������ �������� ���������� � ��������� ����, ���������, ���������� ���������� � �.�. ����������� ������ � /proc �������� ����� ������ ���������� � ��������� ������������. �������� �� ��, ��� ��� ����� ����������� - �� ����� ����������� ����� ��������� ���������� ��� � ������� ������ "more", "less" ��� "cat". ��� ������� �������� ������������ ����� ��������� ���������� - ���� ���� ��������� �� ���� �� ������ ����������, ������������ � ����. ������� ����� ��������� ���������� ����� � ���� �������: </p> <pre class="code"> $ ls -l /proc/cpuinfo -r--r--r-- 1 root root 0 Dec 25 11:01 /proc/cpuinfo $ file /proc/cpuinfo /proc/cpuinfo: empty $ cat /proc/cpuinfo processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 8 model name : Pentium III (Coppermine) stepping : 6 cpu MHz : 1000.119 cache size : 256 KB fdiv_bug : no hlt_bug : no sep_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 2 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 mmx fxsr xmm bogomips : 1998.85 processor : 3 vendor_id : GenuineIntel cpu family : 6 model : 8 model name : Pentium III (Coppermine) stepping : 6 cpu MHz : 1000.119 cache size : 256 KB fdiv_bug : no hlt_bug : no sep_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 2 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 mmx fxsr xmm bogomips : 1992.29 </pre><br> ��� ���������������� �������. � ��������� ������ �������� ������� /proc ���������� ������������, ������ ��������� ������� ������������� � ����� - ��� ������� �� � ���� �������� ��������. � ���� �������� ���������: "top", "ps", "apm" � �.�.<br> </p> <A NAME="324lfindex3"> </A> <H2>�������� ���������� � ������� � ����</H2> <p><br> ���������� ��������� ������ �����: <ul> <li> /proc/cpuinfo - ���������� � ���������� ( ������, ���������, ������ ���� � �.�.) <li> /proc/meminfo - ���������� � RAM, ������� ����� � �.�. <li> /proc/mounts - ������ ���������������� �������� ������. <li> /proc/devices - ������ ���������. <li> /proc/filesystems - �������������� �������� �������. <li> /proc/modules - ������ ����������� �������. <li> /proc/version - ������ ����. <li> /proc/cmdline - ������ ����������, ������������ ���� ��� ��������. </ul> �� ����� ���� ������ � �������� /proc ������� ������. �� ������ �������� ����������� ��� ����� � /proc ��������� "more" � read [1]. ������� ��� ������������ "more" ������ "cat" ������, ��� ��������� ����� ( �������� kcore ) ����� ���� ����� �������� �������. </p> <A NAME="324lfindex4"> </A> <H2>���������� � ���������</H2> <p>�������� ������� /proc ������ ����� ���������� ���������� � ������������� ���������. ���� �� ����������� ���������� ������ �������� /proc, �� ������� ��������, �������� ������� ������� �� ���� - ��� � ���� ���������� � ��������� - �������� �������� �������� ������������� �������� ( PID ). ������ ���� ��������� ��������� �����, ���������� ������ ���������� � ��������� - ���������, ��������� � �.�. ������� ��������� �� �����-������ �������: </p> <pre class="code"> $ ps -aef | grep mozilla root 32558 32425 8 22:53 pts/1 00:01:23 /usr/bin/mozilla </pre> ����������� ���� ������� ����������, ��� � ������� ������������ ������� mozilla, ��� PID 32558. �������������� � �������� /proc ������ ���� ������� � ��������� 32558. <br> <br> <pre class="code"> $ ls -l /proc/32558 total 0 -r--r--r-- 1 root root 0 Dec 25 22:59 cmdline -r--r--r-- 1 root root 0 Dec 25 22:59 cpu lrwxrwxrwx 1 root root 0 Dec 25 22:59 cwd -> /proc/ -r-------- 1 root root 0 Dec 25 22:59 environ lrwxrwxrwx 1 root root 0 Dec 25 22:59 exe -> /usr/bin/mozilla* dr-x------ 2 root root 0 Dec 25 22:59 fd/ -r--r--r-- 1 root root 0 Dec 25 22:59 maps -rw------- 1 root root 0 Dec 25 22:59 mem -r--r--r-- 1 root root 0 Dec 25 22:59 mounts lrwxrwxrwx 1 root root 0 Dec 25 22:59 root -> // -r--r--r-- 1 root root 0 Dec 25 22:59 stat -r--r--r-- 1 root root 0 Dec 25 22:59 statm -r--r--r-- 1 root root 0 Dec 25 22:59 status </pre> � ����� "cmdline" ���������� ����������, ������� ��� ������� �������. � ����� "environ" ��������� ���������� ��������� ����� ��������, � ����� ������������� ������������ ( UID ) � ������ ( GID ) ������������ �������, ������������� ������������� �������� ( PPID ) � ������� ��������� �������� ( �������� "Sleeping" ��� "Running" ). ����� � �������� ��������� ��������� ������������� ������: "cwd" - ������ � �������� �������� �������� ��������, "exe" - ����������� ���� ��������, "root" - ������ � ��������, ������� ��������� ��������� �������� ( ������ ��� "/" ). � �������� "fd" ��������� ������ � ������������ ������������ ������ ���������. "cpu" �������� ������ �� SMP ����� Linux. <p></p> <p><tt>/proc/self</tt> ���������� ���������� - � ��� ������� ���������� ������ ���������� � ����. �� ����� ���� /proc/self �������� ������������� ������� �� ������� �������� ������������� � /proc.<br> </p> <A NAME="324lfindex5"> </A> <H2>������ � ����� ����������� /proc</H2> <p><br> ����������� �� ������������� ���� ������ �� �������� /proc �������� ������ �� ������. ��� �� ����� �������� ������� /proc ������������� ����� ��� �������������� � ����� ��������� �� ������. ��������� ���������� � ����� ����� �������� ��������� ���� � ������� ��� ���� ������ ����� ���������. ��� ����� �������� � �������� /proc/sys.</p> <p>� �������� <tt>/proc/sys/kernel</tt> ��������� ���������� ������ ����� ��� ����. �������������� � /proc/sys/kernel/{domainname, hostname} ��������� ���������� � �������� ����� � host �����, ������� �� ������ ��������.<br> <br> </p> <pre class="code"> $ hostname machinename.domainname.com $ cat /proc/sys/kernel/domainname domainname.com $ cat /proc/sys/kernel/hostname machinename $ echo "new-machinename" > /proc/sys/kernel/hostname $ hostname new-machinename.domainname.com </pre> ����� ������� ������� ���� � �������� ������� /proc �� ����� �������� hostname. ����� ������ ��� ��������� ��������� � /proc/sys/kernel/. ���������, ���������� � ������� ����������� ��� �����, ����� ��� ����� ����� ��������� �������������� ���������� �� ��� ��������.<br> ��� ���� ���������� ������� <tt>/proc/sys/net</tt>. � ��� �� ������ ���������� ������� ���������, �������� �������� ��� ��������� � ����.<br> <br> <pre class="code"> $ echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all </pre> �������� ������ �� icmp_echos �� �������� ���������. ���� ������ �� ����� �������� �� ������� "ping" ������ �����������.<br> <br> <pre class="code"> $ ping machinename.domainname.com no answer from machinename.domainname.com </pre> ������� ������� ��������� ����� ��������� �������<br> <pre class="code"> $ echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all </pre> � �������� /proc/sys ��� ����� ������������ ��� ��������� �������. ����� ��������� ���������� ��������� � [1] � [2]. </p> <A NAME="324lfindex6"> </A> <H2>�����</H2> <p> �������� ������� /proc ������������ �������� ��������� � ���������� ���������� Linux. � �� ������� ����� ������ �������� ���������� � ��������� �������. ������ ���� �������� ������� � ������ ��������� ��� ������ - ������� ���� � ������ � �� Linux.<br> <br> </p> <A NAME="324lfindex7"> </A> <H2>������ ����������</H2> <p><br> <ul> <li>[1] ������������ �� �������� ������� �� Linux ��������� �����: /usr/src/linux/Documentation/filesystems/proc.txt<br> <li>[2] ����������� ������������ RedHat: �������� ������� /proc: <a href="http://www.redhat.com/docs/manuals/linux/RHL-7.3-Manual/ref-guide/ch-proc.html">http://www.redhat.com/docs/manuals/linux/RHL-7.3-Manual/ref-guide/ch-proc.html</a> </ul> <!-- vim: set sw=2 ts=2 et tw=74: --> <!-- 2pdaIgnoreStart --> <A NAME="talkback"> </a> <h2>�������� �������</h2> � ������ ������� ���� �������� �������. �� ���� �������� �� ������ �������� ���� ����������� ��� ����������� ����������� ������ ��������� : <center> <table border="0" CELLSPACING="2" CELLPADDING="1" summary="tb-button-outerpart"> <tr BGCOLOR="#C2C2C2"><td align=center> <table border="3" CELLSPACING="2" CELLPADDING="1" summary="tb-button"> <tr BGCOLOR="#C2C2C2"><td align=center> <A href="http://cgi.linuxfocus.org/cgi-bin/lftalkback?anum=324"><b> talkback page </b></a> </td></tr></table> </td></tr></table> </center> <HR size="2" noshade> <a style="background-color:#bdc6d5" href="index.shtml"><--, ������� � ��������� �������� ������� </a><br><HR size="2" noshade> <!-- ARTICLE FOOT --> <CENTER><TABLE WIDTH="98%" summary="footer"> <TR><TD ALIGN=CENTER BGCOLOR="#bdc6d5" WIDTH="50%"> <A HREF="../../common/lfteam.html">Webpages maintained by the LinuxFocus Editor team</A> <BR><FONT COLOR="#FFFFFF">© Sandeep Grover, <a href="../../common/copy.html">FDL</a> <BR><a href="http://www.linuxfocus.org">LinuxFocus.org</a></FONT> </TD> <TD BGCOLOR="#bdc6d5"> <!-- TRANSLATION INFO --> <font size=2>Translation information:</font> <TABLE summary="translators"> <tr><td><font size="2">en --> -- : Sandeep Grover <small><sandeep<at>Magma-DA.com></small></font></td></tr> <tr><td><font size="2">en --> ru: Pukhlyakov Kirill <kirill<at>linuxfocus.org></font></td></tr> </TABLE> </TD> </TR></TABLE></CENTER> <p><font size=1>2004-01-10, generated by lfparser version 2.45</font></p> <!-- 2pdaIgnoreStop --> </BODY> </HTML>