Ero sivun ”Proc-tiedostojärjestelmä” versioiden välillä

Linux.fista
Siirry navigaatioon Siirry hakuun
(välitallennus)
(ei mitään eroa)

Versio 8. joulukuuta 2007 kello 19.17

Proc-tiedostojärjestelmä (procfs) on yleensä /proc-hakemistoon liitetty pseudotiedostojärjestelmä, jota käytetään tiedon välittämiseen ytimen ja prosessien välillä. Sen sisältö ei siis sijaitse millään levyllä vaan se generoidaan aina luettaessa.

Proc-tiedostojärjestelmässä olevia "tiedostoja" voi lukea ja niihin voi kirjoittaa tietoa normaalisti (monesti etenkin kirjoittamiseen vaaditaan pääkäyttäjän oikeudet). Esimerkiksi tiedot käytettävissä olevasta muistista saa selville lukemalla tiedoston /proc/meminfo sisällön:

$ cat /proc/meminfo
MemTotal:       775540 kB
MemFree:         10272 kB
...

Vastaavasti esimerkiksi kirjoittamalla luvun 1 tiedostoon /proc/sys/net/ipv4/ip_forward kerrotaan ytimelle, että IP-liikenteen uudelleenohjaus on sallittua.

Tiedostoja

Proc-tiedostojärjestelmästä löytyy lukuisia muita tiedostoja ja hakemistoja yllä mainittujen esimerkkien lisäksi. Jotkut tiedostot sisältävät tietoa järjestelmän tilasta ja toisiin kirjoittamalla voidaan säätää ytimen toimintaa.

Proc-tiedostojärjestelmän tiedostot voi listata normaalisti komennolla

ls /proc

Listauksesta nähdään, että /proc-hakemistossa on useita hakemistoja, joiden nimi koostuu vain numeroista. Nämä hakemistot sisältävät tiedot käynnissä olevista prosesseista siten, että hakemiston nimi on kyseisen prosessin PID-tunniste. Tällaiset hakemistot sisältävät seuraavat tiedostot:

  • cmdline, josta löytyy prosessin käynnistyskomento ilman välilyöntejä
  • cwd, joka on symbolinen linkki prosessin nykyiseen työhakemistoon
  • environ, josta löytyy prosessiin vaikuttavat ympäristömuuttujat muodossa ASETUS=arvo ilman välilyöntejä.