• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            大龍的博客

            常用鏈接

            統計

            最新評論

            Proc令系統信息了如指掌

            Proc是一個虛擬文件系統,在Linux系統中它被掛載于/proc目錄之上。

              Proc是一個虛擬文件系統,在Linux系統中它被掛載于/proc目錄之上。Proc有多個功能 ,這其中包括用戶可以通過它訪問內核信息或用于排錯,這其中一個非常有 用的功能,也是Linux變得更加特別的功能就是以文本流的形式來訪問進程信息。很Linux命令(比如 ps、toPpstree等)都需要使用這個文件系統的信息。

              本文就是向用戶介紹一些訪問這些信息的方法 。需要說明的是,本文所述的內容并不 一定適用所有內核版本,有部分操作只適用于2.6內核。

              一、進程信息

              在/proc文件系統中,每一個進程都有一個相應的文件 。下面是/proc目錄下的一些重要文件 :

              /proc/pid/cmdline 包含了用于開始進程的命令 ;

              /proc/pid/cwd包含了當前進程工作目錄的一個鏈接 ;

              /proc/pid/environ 包含了可用進程環境變量的列表 ;

              /proc/pid/exe 包含了正在進程中運行的程序鏈接;

              /proc/pid/fd/ 這個目錄包含了進程打開的每一個文件的鏈接;

              /proc/pid/mem 包含了進程在內存中的內容;

              /proc/pid/stat包含了進程的狀態信息;

              /proc/pid/statm 包含了進程的內存使用信息。

              下面是一些獲取進程信息的例子:

              ◆ 假設現在要查看是否所有的進程都會做存儲器清除工作。在/proc/pid/stat文件中的每一 個進程標識 (第8個屬性)提供了有關進程的很多 “個人”信 息。這個信 息可以對每一個 進程標識進行。

              0x00000002 Process being created

              0x00000004 Exiting

              0x00000008 Dead

              0x00000040 Process using

              superuser privflage

              0x00000200 P rocess dumping core

              0x00000400 Prooess received some signal

              0x00000800 Process allocating memory

              0x00001000 Killed due to out-of--memory condition

              筆者從/usr/src/linux/include/linux/sched.h 中提取了這些信息。

              ◆ /proc/pid/fd/ 目錄提供 了有關打開文件的信息。要查看被進程使用的輸入文件,使用以下命令 :

              # ls –l /proc/pid/fd/0

              ◆ 查看被進程使用socket,使用以下命令 :

              #ls –l /proc/pid/fd|sed –n `/socket/{s/.*\[//;s/\]//p}`

              有關這些socket的信息可以使用以下命令獲取 :

              # netstat --ae

              ◆ 要將命令行參數傳遞給任意進程,使用以下命令 :

              ~~cat /proc/pid/cmdline

              ◆ 要 獲取某一進程父進程的ID號,使用以下命令:

              #grep PPid/proc/pid/status

              二、普通的系統信息

              Proc包含了很多系統信息,這其中包括CPU負載、文件系統和網絡配置 。下面是一些通過Proc查看和更改系統的例子:

              ◆ 獲取可用系統內存的空間 :

              # grep Free /proc/meminfo

              ◆ 自從系統最后一次啟動后的系統統計可以從/proc/stat文件中獲取 :

              #grep processes /proc/stat

              ◆ 獲知第 1、5和15分鐘系統負載的平均值 :

              #awk `{print “1 min:\t” $1 “\n5 min:\t” $2 “\n15 min:\t” $3` /proc/loadavg

              ◆ /proc/partitions可用于獲取系統的分區信息 。

              ◆ /proc/net和/proc/sys/net可用于查看和更改重要的網絡信息。比如,禁用ping命令,可以以 root身份運行以下命令 :

              #echo 1>/proc/sys/net/ipv4/icmp_echo_ignore_all

              如果要啟用IP轉發/IP偽裝,使用以下命令 :

              #echo 1> /proc/sys/net/ipv4/ip_forward

              ◆ 已經掛載的文件系統信息可以從/proc/mounts中檢索。

              ◆ 要改變正在使用的主機名 ,使用以下命令:

              # echo www.abc.corn >/proc/sys/kernel/hostname

              ◆ 要獲取CPU信息,使用以下命令 :

              # cat /proc/cpuinfo

              ◆ 要獲知swap空間的使用情況 ,使用以下命令:

              # cat /proc/swaps

              ◆ 獲取系統的正常運行時間:

              #cat /proc/uptime

              ◆ 列出由NFS共享的文件系統:

              # cat /proc/fs/nfsd/exports

              三、相關內核的信息

              這是一個非常寬泛的主題,這里只介紹其中一小部分內容:

              ◆ 從正在運行的內核中獲知內核的版本:

              #cat /proc/version

              ◆ /proc/kmsg文件被作為內核日志信息源,它可以被作為一個系統信息調用的接口使用。

              ◆ /proc/kcore文件提供了以內核文件格式形式訪問系統物理內存,并且可以被gdb用于檢查任意內核數據結構的當前狀態。如果裝了源碼,那么可以通 過查看/usr/src/linux/Documentation/filesystems/proc.txt文件來獲取更多的信息 。

              從中可以看出來,Proc是一個非常不錯的獲取系統信息渠道。如果利用得好,則它對Linux系統的維護和管理能提供非常大的幫助。

            posted on 2013-02-16 23:16 大龍 閱讀(261) 評論(0)  編輯 收藏 引用

            久久免费国产精品一区二区| 91精品国产综合久久香蕉| 午夜视频久久久久一区| 2021国产精品午夜久久| 色综合久久无码五十路人妻| 久久精品一区二区| 久久人人爽人人爽人人片AV不| 亚洲精品乱码久久久久久| 亚洲国产成人久久综合碰碰动漫3d| 久久国产成人精品国产成人亚洲| 久久久久久久久久久久久久| 久久99精品国产一区二区三区| 欧美伊人久久大香线蕉综合69| 狠狠综合久久综合88亚洲| 国产无套内射久久久国产| AV狠狠色丁香婷婷综合久久 | 久久久久亚洲AV片无码下载蜜桃| 亚洲AV无一区二区三区久久| 久久久WWW成人免费精品| 日产精品久久久久久久性色| 青青青青久久精品国产h久久精品五福影院1421 | 亚洲国产精品无码久久一线 | 久久伊人影视| 一本伊大人香蕉久久网手机| 性高湖久久久久久久久| 久久99热这里只频精品6| 久久久久久久国产免费看| 99久久精品午夜一区二区| 亚洲精品美女久久777777| 欧美与黑人午夜性猛交久久久 | AV无码久久久久不卡网站下载 | 国产亚洲综合久久系列| 精品综合久久久久久98| 久久久久久精品无码人妻| 四虎久久影院| 无码人妻久久一区二区三区蜜桃| 一本色道久久88加勒比—综合| 久久精品国产亚洲沈樵| 久久国产精品-国产精品| 久久亚洲精品视频| 99精品久久久久久久婷婷|