The software described in this documentation is either in Extended Support or Sustaining Support. See https://www.oracle.com/us/support/library/enterprise-linux-support-policies-069172.pdf for more information.
Oracle recommends that you upgrade the software described by this documentation as soon as possible.
The files in the /proc
directory hierarchy
contain information about your system hardware and the processes
that are running on the system. You can change the configuration
of the kernel by writing to certain files that have write
permission.
The name of the proc
file system stems from its
original purpose on the Oracle Solaris operating system, which was
to allow access by debugging tools to the data structures inside
running processes. Linux added this interface and extended it to
allow access to data structures in the kernel. Over time,
/proc
became quite disordered and the
sysfs
file system was created in an attempt to
tidy it up. For more information, see Section 4.3, “About the /sys Virtual File System”.
Files under the /proc
directory are virtual
files that the kernel creates on demand to present a browsable
view of the underlying data structures and system information. As
such, /proc
is an example of a virtual file
system. Most virtual files are listed as zero bytes in size, but
they contain a large amount of information when viewed.
Virtual files such as /proc/interrupts
,
/proc/meminfo
, /proc/mounts
,
and /proc/partitions
provide a view of the
system’s hardware. Others, such as
/proc/filesystems
and the files under
/proc/sys
provide information about the
system's configuration and allow this configuration to be
modified.
Files that contain information about related topics are grouped
into virtual directories. For example, a separate directory exists
in /proc
for each process that is currently
running on the system, and the directory's name corresponds to the
numeric process ID. /proc/1
corresponds to the
init
process, which has a PID of 1.
You can use commands such as cat,
less, and view to examine
virtual files within /proc
. For example,
/proc/cpuinfo
contains information about the
system's CPUs:
# cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 42
model name : Intel(R) Core(TM) i5-2520M CPU @ 2.50GHz
stepping : 7
cpu MHz : 2393.714
cache size : 6144 KB
physical id : 0
siblings : 2
core id : 0
cpu cores : 2
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 5
wp : yes
...
Certain files under /proc
require
root
privileges for access or contain
information that is not human-readable. You can use utilities such
as lspci, free, and
top to access the information in these files.
For example, lspci lists all PCI devices on a
system:
# lspci
00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
00:01.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)
00:02.0 VGA compatible controller: InnoTek Systemberatung GmbH VirtualBox Graphics Adapter
00:03.0 Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet Controller (rev 02)
00:04.0 System peripheral: InnoTek Systemberatung GmbH VirtualBox Guest Service
00:05.0 Multimedia audio controller: Intel Corporation 82801AA AC'97 Audio Controller (rev 01)
00:06.0 USB controller: Apple Inc. KeyLargo/Intrepid USB
00:07.0 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 08)
00:0b.0 USB controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller
00:0d.0 SATA controller: Intel Corporation 82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [AHCI mode]
(rev 02)
...