Proc-tiedostojärjestelmä
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ä.