{"id":21649,"date":"2026-09-22T12:58:28","date_gmt":"2026-09-22T10:58:28","guid":{"rendered":"https:\/\/webhosting.de\/?p=21649"},"modified":"2026-09-22T12:58:31","modified_gmt":"2026-09-22T10:58:31","slug":"linux-procfs-foer-administratoerer","status":"publish","type":"post","link":"https:\/\/webhosting.de\/sv\/linux-procfs-fuer-administratoren\/","title":{"rendered":"Linux procfs f\u00f6r administrat\u00f6rer: en \u00f6versikt \u00f6ver viktiga filer"},"content":{"rendered":"<div class=\"wh-article\"><p class=\"wh-lead\">Das <strong>Linux procfs<\/strong> visar k\u00e4rnans aktuella tillst\u00e5nd via virtuella filer under \/proc. F\u00f6r systemadministrationen \u00e4r framf\u00f6r allt belastning, minne, processer, fildeskriptorer och blockenheter relevanta. Det \u00e4r viktigt att f\u00f6rst\u00e5 sammanhanget: vissa v\u00e4rden \u00e4r \u00f6gonblicksbilder, andra \u00e4r r\u00e4knare som har ackumulerats sedan uppstarten eller glidande medelv\u00e4rden. Titta d\u00e4rf\u00f6r aldrig bara p\u00e5 ett enskilt v\u00e4rde, utan j\u00e4mf\u00f6r det med l\u00e4mpliga signaler och sammanhanget f\u00f6r v\u00e4rddatorn, den virtuella maskinen eller containern.  <\/p><nav class=\"wh-toc\" aria-label=\"Inneh\u00e5ll i denna artikel\"><p class=\"wh-toc-title\">G\u00e5 direkt till avsnittet<\/p><div class=\"wh-toc-grid\"><a class=\"wh-toc-link\" href=\"#proc-basics\">Att f\u00f6rst\u00e5 procfs: virtuell k\u00e4rnvy ist\u00e4llet f\u00f6r datalagring<\/a><a class=\"wh-toc-link\" href=\"#proc-time-context\">Att s\u00e4tta in m\u00e4tv\u00e4rden, \u00f6gonblicksbilder och synlighet i r\u00e4tt sammanhang<\/a><br><a class=\"wh-toc-link\" href=\"#proc-sysctl-boundary\">L\u00e4sa, konfigurera och s\u00e4kra under \/proc\/sys<\/a><br><a class=\"wh-toc-link\" href=\"#proc-overview-table\">De viktigaste procfs-filerna efter administrationsuppgift<\/a><br><a class=\"wh-toc-link\" href=\"#proc-load-memory\">Belastning, CPU och minne<\/a><br><a class=\"wh-toc-link\" href=\"#proc-process-io\">Unders\u00f6ka processer och datamediernas I\/O<\/a><br><a class=\"wh-toc-link\" href=\"#proc-monitoring\">procfs i drift: avfr\u00e5gningar, \u00f6vervakning och dataskydd<\/a><br><a class=\"wh-toc-link\" href=\"#proc-troubleshooting\">Diagnosfl\u00f6den f\u00f6r l\u00e5ngsamma tj\u00e4nster och resursflaskhalsar<\/a><br><a class=\"wh-toc-link\" href=\"#proc-decisions\">R\u00e4tta till vanliga missuppfattningar och v\u00e4lj l\u00e4mpliga verktyg<\/a><\/div><\/nav><h2 id=\"proc-basics\">Att f\u00f6rst\u00e5 procfs: virtuell k\u00e4rnvy ist\u00e4llet f\u00f6r datalagring<\/h2><p>Das <strong>procfs<\/strong> \u00e4r ett virtuellt filsystem: Posterna under \/proc \u00e5terger datastrukturer och tillst\u00e5nd hos den aktiva Linux-k\u00e4rnan. De finns inte som permanent lagrat inneh\u00e5ll p\u00e5 ett lagringsmedium. Vid l\u00e4sning genererar k\u00e4rnan den aktuella vyn utifr\u00e5n sitt nuvarande tillst\u00e5nd; efter en omstart b\u00f6rjar till exempel m\u00e5nga r\u00e4knare om fr\u00e5n b\u00f6rjan. D\u00e4rf\u00f6r \u00e4r \/proc ett gr\u00e4nssnitt f\u00f6r \u00f6vervakning och delvis styrning, inte en plats f\u00f6r egna filer eller best\u00e4ndiga konfigurationer.  <\/p><p>N\u00e4r det g\u00e4ller administrationen b\u00f6r man skilja mellan tre omr\u00e5den. Globala statusfiler som \/proc\/meminfo, \/proc\/stat eller \/proc\/loadavg tillhandah\u00e5ller nyckeltal f\u00f6r hela k\u00e4rnan. Kataloger med numeriska namn, till exempel \/proc\/1234, ger detaljer om en enskild process. Under \/proc\/sys finns d\u00e4remot k\u00e4rnparametrar som, beroende p\u00e5 beh\u00f6righet och parameter, kan vara b\u00e5de l\u00e4sbara och skrivbara. Den liknande filstrukturen f\u00e5r inte d\u00f6lja det faktum att statusavfr\u00e5gningar och konfigurations\u00e4ndringar har helt olika konsekvenser.  <\/p><p>Vilka s\u00f6kv\u00e4gar och f\u00e4lt som finns tillg\u00e4ngliga varierar mellan olika Linux-system. K\u00e4rnversionen och -konfigurationen, arkitekturen, den identifierade h\u00e5rdvaran samt de laddade modulerna p\u00e5verkar vilka poster som visas. \u00c4ven namnutrymmen f\u00f6r\u00e4ndrar enskilda vyer. Ett procfs som \u00e4r kopplat till ett PID-namnomr\u00e5de begr\u00e4nsar s\u00e4rskilt process- och PID-vyn; detta inneb\u00e4r dock inte att globala filer automatiskt visar container- eller cgroup-specifika v\u00e4rden. Skript b\u00f6r kontrollera filer och f\u00e4lt innan de utv\u00e4rderar deras inneh\u00e5ll, ist\u00e4llet f\u00f6r att f\u00f6ruts\u00e4tta en fullst\u00e4ndig procfs-struktur som \u00e4r densamma \u00f6verallt.  <\/p><p>Detta ska skiljas fr\u00e5n sysfs under \/sys: Det visar fr\u00e4mst enheter, drivrutiner och h\u00e5rdvaruobjekt. cgroup2 \u00e4r dessutom relevant f\u00f6r resursf\u00f6rdelning och gruppgr\u00e4nser. procfs f\u00f6rblir dock den direkta k\u00e4llan till m\u00e5nga k\u00e4rn- och processstatusar som beh\u00f6vs vid en f\u00f6rsta diagnostik.  <\/p><h2 id=\"proc-time-context\">Att s\u00e4tta in m\u00e4tv\u00e4rden, \u00f6gonblicksbilder och synlighet i r\u00e4tt sammanhang<\/h2><p>V\u00e4rdet i sig f\u00f6rklarar s\u00e4llan ett problem i procfs. F\u00f6rst m\u00e5ste dess tidsreferens klarg\u00f6ras: Vissa uppgifter \u00e4r <strong>kumulativa r\u00e4knare<\/strong> sedan systemstart, andra beskriver ett aktuellt tillst\u00e5nd, medan ytterligare andra avbildar glidande tidsf\u00f6nster. Ett h\u00f6gt r\u00e4knarv\u00e4rde visar inledningsvis endast att en h\u00e4ndelse har ackumulerats sedan uppstarten. En hastighet uppst\u00e5r f\u00f6rst utifr\u00e5n tv\u00e5 m\u00e4tpunkter: skillnaden mellan v\u00e4rdena dividerat med tidsintervallet d\u00e4remellan. Detta g\u00e4ller till exempel f\u00f6r m\u00e5nga CPU-, avbrotts- och datamedier\u00e4knare.  <\/p><p>Filen \/proc\/uptime visar den totala drifttiden och den sammanlagda vilotiden. Den hj\u00e4lper till att placera r\u00e4knarna i tidsm\u00e4ssigt sammanhang sedan uppstarten, men ers\u00e4tter inte en m\u00e4tsekvens. En eng\u00e5ngskonsultation \u00e4r en \u00f6gonblicksbild; f\u00f6r tillf\u00f6rlitliga slutsatser om trender, toppar eller \u00e5terkommande belastning kr\u00e4vs upprepade konsultationer med tidsst\u00e4mpel. V\u00e4rdena kan f\u00f6r\u00e4ndras redan under avl\u00e4sningen, eftersom k\u00e4rnan forts\u00e4tter att arbeta.  <\/p><p>\u00c4ven de synliga uppgifterna har sina begr\u00e4nsningar. \/proc\/self pekar alltid p\u00e5 den process som just nu l\u00f6ser s\u00f6kv\u00e4gen. Detta g\u00f6r den praktisk f\u00f6r skript och interaktiva kontroller utan att beh\u00f6va anta ett PID. \u00c5tkomsten till andra processers kataloger kan dock begr\u00e4nsas genom filr\u00e4ttigheter, Linux-capabilities och procfs-mount-alternativet <code data-no-translation=\"\">hidepid<\/code> kan vara begr\u00e4nsad. Att vissa uppgifter inte \u00e4r tillg\u00e4ngliga beror i detta fall inte p\u00e5 att procfs \u00e4r defekt, utan \u00e4r ett skydd mot att k\u00e4nslig processinformation l\u00e4ses ut.  <\/p><p>S\u00e4rskild f\u00f6rsiktighet kr\u00e4vs i containrar. Ett procfs som \u00e4r knutet till ett PID-namnomr\u00e5de visar, vid processrelaterade s\u00f6kv\u00e4gar, endast processerna i detta namnomr\u00e5desperspektiv. Globala k\u00e4rnfiler som \/proc\/meminfo, \/proc\/stat eller \/proc\/diskstats kan d\u00e4remot fortfarande \u00e5terspegla v\u00e4rden fr\u00e5n v\u00e4rddatorn och begr\u00e4nsas inte automatiskt till containergr\u00e4nsen. Innan varje diagnos m\u00e5ste man d\u00e4rf\u00f6r klarg\u00f6ra om fr\u00e5gan g\u00e4ller processer, globala k\u00e4rnv\u00e4rden eller de faktiskt tilldelade resurserna; gr\u00e4nser och anv\u00e4ndning av en container ing\u00e5r dessutom i cgroup2-analysen.  <\/p><h2 id=\"proc-sysctl-boundary\">L\u00e4sa, konfigurera och s\u00e4kra under \/proc\/sys<\/h2><p>Omr\u00e5det <strong>\/proc\/sys<\/strong> \u00e4r filsystemvyn f\u00f6r sysctl-gr\u00e4nssnittet. Att l\u00e4sa av ett v\u00e4rde anv\u00e4nds f\u00f6r diagnostik. Skriv\u00e5tkomst f\u00f6r\u00e4ndrar d\u00e4remot omedelbart beteendet hos den aktiva k\u00e4rnan och kan p\u00e5verka tj\u00e4nster, resursf\u00f6rbrukning eller s\u00e4kerhetsfunktioner. Att en \u00e4ndring tr\u00e4der i kraft utan omstart inneb\u00e4r inte att den \u00e4r riskfri eller automatiskt permanent: varaktigheten beror p\u00e5 den valda systemkonfigurationen.  <\/p><p>Katalogstrukturen underl\u00e4ttar den f\u00f6rsta \u00f6versikten. Under \/proc\/sys\/fs finns bland annat globala parametrar f\u00f6r filsystemet och filhanteringen. \/proc\/sys\/vm samlar inst\u00e4llningar f\u00f6r minneshanteringen, medan \/proc\/sys\/net inneh\u00e5ller n\u00e4tverksrelaterade parametrar. Vilka underkataloger och nycklar som finns tillg\u00e4ngliga beror i sin tur p\u00e5 k\u00e4rnkonfigurationen och systemets funktioner. En befintlig parameter \u00e4r d\u00e4rf\u00f6r inte ett allm\u00e4ngiltigt recept f\u00f6r optimering; dess dokumentation och den konkreta arbetsbelastningen \u00e4r avg\u00f6rande.    <\/p><p>Ett motexempel p\u00e5 en skenbar optimering \u00e4r <code data-no-translation=\"\">drop_caches<\/code> under \/proc\/sys\/vm. I k\u00e4rndokumentationen klassificeras funktionen som avsedd f\u00f6r fels\u00f6kning och testning, och man avr\u00e5der fr\u00e5n anv\u00e4ndning utanf\u00f6r dessa syften, eftersom t\u00f6mning av \u00e5teranv\u00e4ndbara cacher kan p\u00e5verka prestandan negativt. Lite ledigt minne \u00e4r i sig inte n\u00e5gon anledning att t\u00f6mma cacher: K\u00e4rnan anv\u00e4nder medvetet RAM \u00e4ven f\u00f6r filcache.  <\/p><p>Innan varje \u00e4ndring b\u00f6r det finnas en tydlig orsak. Spara f\u00f6rst utg\u00e5ngsv\u00e4rdet, dokumentera syftet och f\u00f6rv\u00e4ntade bieffekter, g\u00f6r \u00e4ndringen p\u00e5 ett kontrollerat s\u00e4tt och observera d\u00e4refter relevanta m\u00e4tv\u00e4rden samt systemets beteende. Planera \u00e5terst\u00e4llningen i f\u00f6rv\u00e4g och inf\u00f6r ett v\u00e4rde i en permanent konfiguration f\u00f6rst efter en teknisk granskning. Mer ing\u00e5ende grundl\u00e4ggande information om parametrar och deras kontrollerade hantering behandlas i artikeln <a href=\"https:\/\/webhosting.de\/sv\/kernel-tuning-linux-sysctl-parameter-serverboost-opti\/\">Kernel tuning i Linux-hosting: Sysctl-parametrar i \u00f6verblick<\/a>.<\/p><h2 id=\"proc-overview-table\">De viktigaste procfs-filerna efter administrationsuppgift<\/h2><p>Valet av en procfs-fil b\u00f6r utg\u00e5 fr\u00e5n administrativa \u00f6verv\u00e4ganden, inte fr\u00e5n str\u00e4van efter en s\u00e5 fullst\u00e4ndig kataloglista som m\u00f6jligt. Globala filer inneh\u00e5ller ofta v\u00e4rden som g\u00e4ller f\u00f6r hela k\u00e4rnan, processv\u00e4gar beskriver en enskild synlig process och poster under \/proc\/sys\/fs inneh\u00e5ller konfigurationsinformation och systemomfattande gr\u00e4nsv\u00e4rden. Vissa v\u00e4rden \u00e4r aktuella tillst\u00e5nd, andra \u00e4r r\u00e4knare som ackumulerats sedan uppstarten eller glidande medelv\u00e4rden. Denna distinktion avg\u00f6r om en enda avl\u00e4sning r\u00e4cker eller om tv\u00e5 m\u00e4tpunkter kr\u00e4vs. <\/p><div class=\"wh-table-scroll\" tabindex=\"0\" role=\"region\" aria-label=\"Viktiga procfs-filer f\u00f6r vanliga administrationsfr\u00e5gor\"><table><caption>Viktiga procfs-filer f\u00f6r vanliga administrationsfr\u00e5gor<\/caption><thead><tr><th scope=\"col\">V\u00e4g<\/th><th scope=\"col\">Syfte<\/th><th scope=\"col\">Typisk fr\u00e5ga<\/th><th scope=\"col\">Datatyp<\/th><th scope=\"col\">Viktig begr\u00e4nsning<\/th><th scope=\"col\">S\u00e4ker l\u00e4sf\u00f6rfr\u00e5gan<\/th><\/tr><\/thead><tbody><tr><td>\/proc\/loadavg<\/td><td>systembelastning<\/td><td>Finns det uppgifter som v\u00e4ntar?<\/td><td>1-, 5- och 15-minutersmedelv\u00e4rden<\/td><td>Inte enbart CPU-belastning<\/td><td>cat \/proc\/loadavg<\/td><\/tr><tr><td>\/proc\/stat<\/td><td>CPU- och k\u00e4rnr\u00e4knare<\/td><td>Hur f\u00f6rdelas CPU-tiden?<\/td><td>Sedan uppstart, ackumulerat<\/td><td>iowait ska inte bed\u00f6mas isolerat<\/td><td>grep -E \u201a^(cpu|intr|ctxt|processes)\u2018 \/proc\/stat<\/td><\/tr><tr><td>\/proc\/meminfo<\/td><td>Lagrings\u00f6versikt<\/td><td>Finns det ledigt lagringsutrymme?<\/td><td>Aktuella lagrade v\u00e4rden<\/td><td>MemFree r\u00e4cker inte p\u00e5 egen hand; i containern \u00e4r det inte n\u00f6dv\u00e4ndigtvis cgroup-specifikt<\/td><td>cat \/proc\/meminfo<\/td><\/tr><tr><td>\/proc\/pressure\/cpu<\/td><td>CPU-stopp<\/td><td>V\u00e4ntar uppgifter p\u00e5 CPU?<\/td><td>Tidsf\u00f6nster och r\u00e4knare<\/td><td>\u201dfull\u201d p\u00e5 systemniv\u00e5 kan inte tolkas och returneras som noll<\/td><td>cat \/proc\/pressure\/cpu<\/td><\/tr><tr><td>\/proc\/tryck\/minne<\/td><td>minnesutskrift<\/td><td>H\u00e4mmar minnesbristen utf\u00f6randet av uppgifter?<\/td><td>Tidsf\u00f6nster och r\u00e4knare<\/td><td>PSI m\u00e5ste vara tillg\u00e4ngligt<\/td><td>cat \/proc\/pressure\/memory<\/td><\/tr><tr><td>\/proc\/pressure\/io<\/td><td>I\/O-avbrott<\/td><td>V\u00e4ntar uppgifter p\u00e5 I\/O?<\/td><td>Tidsf\u00f6nster och r\u00e4knare<\/td><td>Ingen ers\u00e4ttning f\u00f6r enhetsanalys<\/td><td>cat \/proc\/pressure\/io<\/td><\/tr><tr><td>\/proc\/\/status<\/td><td>Processstatus<\/td><td>Hur stor och aktiv \u00e4r en process?<\/td><td>Aktuella processdata<\/td><td>R\u00e4ttigheter och PID-namnrymden kan begr\u00e4nsa \u00e5tkomsten<\/td><td>cat \/proc\/$$\/status<\/td><\/tr><tr><td>\/proc\/\/fd<\/td><td>\u00d6ppna deskriptorer<\/td><td>Vilka objekt innehar en process?<\/td><td>Aktuella symboliska l\u00e4nkar<\/td><td>M\u00e5nga FD:er inneb\u00e4r inte automatiskt en l\u00e4cka<\/td><td>ls -l \/proc\/$$\/fd<\/td><\/tr><tr><td>\/proc\/\/maps<\/td><td>Virtuella mappningar<\/td><td>Vilka omr\u00e5den omfattar en process?<\/td><td>Aktuell kartl\u00e4ggningslista<\/td><td>Ofta f\u00f6r omfattande f\u00f6r en f\u00f6rsta analys<\/td><td>cat \/proc\/$$\/maps<\/td><\/tr><tr><td>\/proc\/diskstats<\/td><td>Blockenhets-I\/O<\/td><td>Vilka enheter fungerar?<\/td><td>Sedan uppstart, ackumulerat<\/td><td>Ber\u00e4kningar kr\u00e4ver tv\u00e5 stickprov; v\u00e4rdena kan g\u00e4lla hela v\u00e4rden<\/td><td>cat \/proc\/diskstats<\/td><\/tr><tr><td>\/proc\/sys\/fs\/file-nr<\/td><td>Anv\u00e4ndning av filhandtag<\/td><td>Hur m\u00e5nga anv\u00e4ndarnamn anv\u00e4nder systemet?<\/td><td>Aktuell r\u00e4knare och gr\u00e4ns<\/td><td>Det mellersta f\u00e4ltet \u00e4r noll p\u00e5 moderna Linux-system<\/td><td>cat \/proc\/sys\/fs\/file-nr<\/td><\/tr><tr><td>\/proc\/sys\/fs\/file-max<\/td><td>Gr\u00e4ns f\u00f6r filhanterare<\/td><td>Vilken global \u00f6vre gr\u00e4ns g\u00e4ller?<\/td><td>Aktiv parameter<\/td><td>F\u00f6rv\u00e4xla inte detta med processgr\u00e4nsen<\/td><td>cat \/proc\/sys\/fs\/file-max<\/td><\/tr><\/tbody><\/table><\/div><p>Tabellen \u00e4r en utg\u00e5ngspunkt, inte en diagnoskedja. Ett avvikande v\u00e4rde kr\u00e4ver alltid en oberoende verifiering: belastning med CPU- och I\/O-data, minnesv\u00e4rden med Pressure Stall Information och processvariabler med tj\u00e4nstens beteende. S\u00e4rskilt \/proc\/diskstats och \/proc\/stat \u00e4r <strong>kumulativa r\u00e4knare<\/strong>; skillnaden \u00f6ver ett k\u00e4nt intervall ger en b\u00e4ttre bild av trender \u00e4n det absoluta v\u00e4rdet. I containrar m\u00e5ste man dessutom kontrollera om en fil tillhandah\u00e5ller globala k\u00e4rnv\u00e4rden eller en vy som \u00e4r tillg\u00e4nglig per cgroup. I de f\u00f6ljande avsnitten \u00e4r signalerna d\u00e4rf\u00f6r indelade efter belastning, minne, processer och I\/O.<\/p><h2 id=\"proc-load-memory\">Belastning, CPU och minne: Utv\u00e4rdering av kombinerade signaler<\/h2><p>Om systemet \u00e4r l\u00e5ngsamt \u00e4r \/proc\/loadavg en bra utg\u00e5ngspunkt, men det ger ingen fullst\u00e4ndig bild av CPU:ns belastning. De tre v\u00e4rdena visar den genomsnittliga belastningen under de senaste 1, 5 och 15 minuterna. I belastningen ing\u00e5r inte bara k\u00f6rbara enheter i tillst\u00e5ndet R, utan \u00e4ven uppgifter i det oavbrytbara v\u00e4ntetillst\u00e5ndet D, till exempel vid I\/O. Det fj\u00e4rde f\u00e4ltet visar de enheter som f\u00f6r n\u00e4rvarande kan k\u00f6ras i f\u00f6rh\u00e5llande till alla befintliga schemal\u00e4ggningsenheter. H\u00f6g <strong>Genomsnittlig belastning<\/strong> kan d\u00e4rf\u00f6r tyda p\u00e5 konkurrens om CPU-resurser, blockerade I\/O-\u00e5tkomster eller b\u00e5da. <\/p><figure class=\"wp-block-image size-large wh-figure\"><img loading=\"lazy\" width=\"800\" height=\"534\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/09\/procfs-last-speicher-signale-4bfe68af-detail1-fe433c8680-1024x683.webp\" class=\"wp-image-21653\" alt=\"Konceptuell koppling mellan belastnings-, lagrings-, CPU- och I\/O-signaler.\" decoding=\"async\" srcset=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/09\/procfs-last-speicher-signale-4bfe68af-detail1-fe433c8680-1024x683.webp 1024w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/09\/procfs-last-speicher-signale-4bfe68af-detail1-fe433c8680-300x200.webp 300w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/09\/procfs-last-speicher-signale-4bfe68af-detail1-fe433c8680-768x512.webp 768w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/09\/procfs-last-speicher-signale-4bfe68af-detail1-fe433c8680-18x12.webp 18w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/09\/procfs-last-speicher-signale-4bfe68af-detail1-fe433c8680.webp 1536w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\"><figcaption>Konceptuell illustration: Det \u00e4r f\u00f6rst n\u00e4r flera k\u00e4rnindikatorer samverkar som det g\u00e5r att g\u00f6ra en tillf\u00f6rlitlig bed\u00f6mning av belastningen.<\/figcaption><\/figure><div class=\"wh-code-window\" data-wh-code=\"\"><div class=\"wh-code-toolbar\"><span>Terminal<\/span><button type=\"button\" class=\"wh-code-copy\" data-wh-copy=\"\" hidden=\"\">Kopiera koden<\/button><span class=\"wh-copy-status\" aria-live=\"polite\"><\/span><span data-wh-copy-success=\"\" hidden=\"\">Kopierat<\/span><span data-wh-copy-fallback=\"\" hidden=\"\">Koden \u00e4r markerad \u2013 kopiera den<\/span><\/div><pre class=\"wh-code\" data-no-translation=\"\" translate=\"no\"><code class=\"language-sh\">cat \/proc\/loadavg\ngrep -E '^(cpu|intr|ctxt|processes)' \/proc\/stat\ncat \/proc\/meminfo\ncat \/proc\/pressure\/memory<\/code><\/pre><\/div><p>CPU-raderna i \/proc\/stat inneh\u00e5ller tidsandelar sedan systemstart i USER_HZ. F\u00f6r att ber\u00e4kna belastningsandelar utifr\u00e5n detta m\u00e5ste tv\u00e5 avl\u00e4sningar j\u00e4mf\u00f6ras; en enskild avl\u00e4sning visar endast ackumulerad tid. V\u00e4rdet iowait \u00e4r dock inte ett direkt m\u00e5tt p\u00e5 latens f\u00f6r lagringsenheter: ber\u00e4kningen av detta v\u00e4rde har dokumenterade begr\u00e4nsningar och kan under vissa omst\u00e4ndigheter till och med minska. F\u00f6r att identifiera en I\/O-orsak \u00e4r det d\u00e4rf\u00f6r l\u00e4mpligt att \u00e4ven anv\u00e4nda enhetsv\u00e4rden och I\/O-PSI. <\/p><p>\u00c4ven ett l\u00e5gt v\u00e4rde f\u00f6r MemFree inneb\u00e4r inte n\u00f6dv\u00e4ndigtvis att det r\u00e5der brist p\u00e5 RAM-minne. Linux anv\u00e4nder ledigt minne specifikt f\u00f6r cache. MemAvailable uppskattar hur mycket minne nya applikationer f\u00f6rv\u00e4ntas kunna tilldelas utan att swap-minnet beh\u00f6ver anv\u00e4ndas, och \u00e4r oftast mer anv\u00e4ndbart f\u00f6r en f\u00f6rsta bed\u00f6mning. F\u00f6rst n\u00e4r MemAvailable b\u00f6rjar bli knappt och minnesstopp samtidigt uppst\u00e5r blir tecknen p\u00e5 <strong>minnesutskrift<\/strong>. I en container kan dessa globala lagringsv\u00e4rden dock h\u00e4rr\u00f6ra fr\u00e5n v\u00e4rddatorn; f\u00f6r garanterade eller begr\u00e4nsade resurser \u00e4r dessutom cgroup2-vyn avg\u00f6rande. <\/p><p>Filerna under \/proc\/pressure kompletterar denna bild. F\u00f6r memory och io betyder \u201dsome\u201d att \u00e5tminstone vissa uppgifter inte kunde forts\u00e4tta under en del av tidsf\u00f6nstret; \u201dfull\u201d st\u00e5r d\u00e4r f\u00f6r ett tillst\u00e5nd d\u00e4r alla uppgifter som inte var inaktiva var blockerade samtidigt. V\u00e4rdena avg10, avg60 och avg300 avser 10, 60 respektive 300 sekunder, medan \u201dtotal\u201d \u00e4r en kumulerad stall-r\u00e4knare. F\u00f6r CPU \u00e4r \u201dfull\u201d p\u00e5 systemniv\u00e5 inte semantiskt definierat och matas ut som noll sedan Linux 5.13 av kompatibilitetssk\u00e4l; det ska d\u00e4rf\u00f6r inte tolkas som ett diagnostiskt v\u00e4rde p\u00e5 systemniv\u00e5. CPU-, memory- och io-PSI besvarar olika fr\u00e5gor och b\u00f6r inte anv\u00e4ndas i st\u00e4llet f\u00f6r varandra. <\/p><p>Om en tj\u00e4nst reagerar l\u00e5ngsamt n\u00e4r MemFree \u00e4r l\u00e5gt, b\u00f6r du f\u00f6rst kontrollera MemAvailable och \/proc\/pressure\/memory. Om b\u00e5da ser normala ut talar det emot en akut systemomfattande minnesbelastning. D\u00e4refter kan \/proc\/\/status visa om den ber\u00f6rda processen till exempel har ett h\u00f6gt VmRSS-v\u00e4rde, m\u00e5nga tr\u00e5dar eller ett onormalt tillst\u00e5nd. Denna kombination skiljer en cacheintensiv men normal minnesanv\u00e4ndning fr\u00e5n ett problem som kr\u00e4ver ytterligare processanalys. <\/p><h2 id=\"proc-process-io\">Unders\u00f6ka processer, filbeskrivare och lagringsenhets-I\/O<\/h2><p>F\u00f6r en s\u00e4ker \u00f6vning med en garanterat existerande process st\u00e5r $$ f\u00f6r PID-numret f\u00f6r den aktuella shellen. Statusfilen \u00e4r mer l\u00e4sbar f\u00f6r m\u00e4nniskor \u00e4n den f\u00e4ltorienterade stat-filen. Name identifierar processen, State dess tillst\u00e5nd, PPid f\u00f6r\u00e4ldraprocessen och Threads antalet tr\u00e5dar. VmRSS \u00e4r en snabb approximation f\u00f6r resident minne, vars RSS-redovisning sker skalbart och asynkront och d\u00e4rf\u00f6r kan vara felaktig; VmSize beskriver d\u00e4remot det virtuella adressutrymmet. FDSize beskriver storleken p\u00e5 deskriptortabellen, inte n\u00f6dv\u00e4ndigtvis antalet f\u00f6r n\u00e4rvarande \u00f6ppna poster. Frivilliga och ofrivilliga kontextbyten kan hj\u00e4lpa till vid klassificeringen av schemal\u00e4ggningsbeteendet, men \u00e4r i sig inte ett bevis p\u00e5 fel.  <\/p><div class=\"wh-code-window\" data-wh-code=\"\"><div class=\"wh-code-toolbar\"><span>Terminal<\/span><button type=\"button\" class=\"wh-code-copy\" data-wh-copy=\"\" hidden=\"\">Kopiera koden<\/button><span class=\"wh-copy-status\" aria-live=\"polite\"><\/span><span data-wh-copy-success=\"\" hidden=\"\">Kopierat<\/span><span data-wh-copy-fallback=\"\" hidden=\"\">Koden \u00e4r markerad \u2013 kopiera den<\/span><\/div><pre class=\"wh-code\" data-no-translation=\"\" translate=\"no\"><code class=\"language-sh\">cat \/proc\/$$\/status\nls -l \/proc\/$$\/fd<\/code><\/pre><\/div><figure class=\"wp-block-image size-large wh-figure\"><img loading=\"lazy\" width=\"800\" height=\"534\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/09\/procfs-prozess-fd-io-4bfe68af-detail2-5a910998ae-1024x683.webp\" class=\"wp-image-21654\" alt=\"Separat presentation av processresurser och systemomfattande enhets-I\/O med ett abstrakt f\u00f6rmedlingslager.\" decoding=\"async\" srcset=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/09\/procfs-prozess-fd-io-4bfe68af-detail2-5a910998ae-1024x683.webp 1024w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/09\/procfs-prozess-fd-io-4bfe68af-detail2-5a910998ae-300x200.webp 300w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/09\/procfs-prozess-fd-io-4bfe68af-detail2-5a910998ae-768x512.webp 768w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/09\/procfs-prozess-fd-io-4bfe68af-detail2-5a910998ae-18x12.webp 18w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/09\/procfs-prozess-fd-io-4bfe68af-detail2-5a910998ae.webp 1536w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\"><figcaption>Konceptuell illustration: Processdata och blockenheters I\/O \u00e4r separata analysniv\u00e5er som inte kan kopplas samman direkt p\u00e5 ett-till-ett-s\u00e4tt.<\/figcaption><\/figure><p>Katalogen fd inneh\u00e5ller symboliska l\u00e4nkar till \u00f6ppna filer, pipor, enheter eller socklar. Den kan till exempel hj\u00e4lpa till att hitta en process som fortfarande h\u00e5ller en raderad loggfil \u00f6ppen. Ett stort antal \u00f6ppna filbeskrivare \u00e4r dock helt normalt hos proxyservrar, databaser eller h\u00e4ndelsebaserade servrar. F\u00f6r filtrerade vyer och tilldelning \u00f6ver flera processer \u00e4r <a href=\"https:\/\/webhosting.de\/sv\/lsof-linux-oeppna-filer-analys-diagnos\/\">Anv\u00e4nd lsof f\u00f6r att analysera \u00f6ppna filer<\/a> ett l\u00e4mpligt komplement. Kommandorader fr\u00e5n cmdline kan avsl\u00f6ja konfidentiella argument; environ \u00e4r \u00e4nnu mer k\u00e4nsligt p\u00e5 grund av eventuella inloggningsuppgifter eller token och b\u00f6r d\u00e4rf\u00f6r inte anv\u00e4ndas rutinm\u00e4ssigt. <\/p><p>maps listar virtuella minnesomr\u00e5den med beh\u00f6righeter, offset, enhet, inode och, i f\u00f6rekommande fall, s\u00f6kv\u00e4g. smaps kompletterar varje mappning med detaljerade minnesv\u00e4rden och ger en mer exakt, men mer resurskr\u00e4vande, \u00f6gonblicksbild j\u00e4mf\u00f6rt med RSS-uppgifterna. B\u00e5da filerna \u00e4r avsedda f\u00f6r f\u00f6rdjupade minnesanalyser: deras utdata kan vara omfattande, och tolkningen av enskilda mappningar kr\u00e4ver sammanhang. F\u00f6r en f\u00f6rsta \u00f6versikt \u00e4r status samt de systemomfattande minnes- och PSI-filerna oftast mer effektiva. <\/p><p>Vid h\u00f6g belastning och l\u00e5g CPU-anv\u00e4ndning ut\u00f6kar \/proc\/diskstats diagnostiken till enhetsniv\u00e5. Filen f\u00f6r kumulativa I\/O-statistikuppgifter per blockenhet. F\u00f6r att utv\u00e4rdera aktiviteten som en hastighet m\u00e5ste tv\u00e5 tidpunkter j\u00e4mf\u00f6ras. Vid detta tillf\u00e4lle m\u00e5ste fysiska enheter, partitioner och virtuella enheter eller Device Mapper-enheter tydligt s\u00e4rskiljas; r\u00e4knare p\u00e5 olika niv\u00e5er f\u00e5r inte summeras utan vidare. En processens \u00f6ppna filbeskrivare kan inte direkt kopplas till en diskstats-enhetsr\u00e4knare: filsystem, cache och mappningslager ligger emellan. Tillsammans med \/proc\/pressure\/io g\u00e5r det dock att kontrollera om observerbara I\/O-stopp och enhetsaktivitet sammanfaller tidsm\u00e4ssigt. <\/p><h2 id=\"proc-monitoring\">procfs i drift: avfr\u00e5gningar, \u00f6vervakning och dataskydd<\/h2><p>F\u00f6r reproducerbara driftsdiagnoser behandlar du procfs-fr\u00e5gor som m\u00e4tpunkter: Du noterar tidsst\u00e4mpel, systemkontext och den specifika fr\u00e5gan. M\u00e5nga v\u00e4rden \u00e4r ackumulerade r\u00e4knare sedan start; f\u00f6rst n\u00e4r skillnaden mellan tv\u00e5 v\u00e4rden divideras med tidsintervallet f\u00e5r man fram en hastighet. Detta g\u00e4ller till exempel r\u00e4knare fr\u00e5n <code data-no-translation=\"\">\/proc\/diskstats<\/code>. En enskild m\u00e4tning kan d\u00e4rf\u00f6r p\u00e5visa aktivitet, men varken genomstr\u00f6mningen eller en varaktig f\u00f6rs\u00e4mring kan kvantifieras p\u00e5 ett tillf\u00f6rlitligt s\u00e4tt.  <\/p><p>Ett \u00f6vervakningssystem b\u00f6r bland annat vid regelbundna intervall l\u00e4sa av lagringsv\u00e4rden fr\u00e5n <code data-no-translation=\"\">\/proc\/meminfo<\/code>, enhetsv\u00e4rden fr\u00e5n <code data-no-translation=\"\">\/proc\/diskstats<\/code>, registrera process- och systemstatus samt, om k\u00e4rnst\u00f6d finns tillg\u00e4ngligt, utskriftssignaler. Den m\u00e5ste omvandla r\u00e5v\u00e4rden till l\u00e4mpliga enheter, ber\u00e4kna skillnader f\u00f6r r\u00e4knare och spara historik. I containrar f\u00e5r det inte likst\u00e4lla globala procfs-v\u00e4rden med arbetsbelastningens resursgr\u00e4nser: processv\u00e4gar kan vara begr\u00e4nsade till PID-namnrymden, medan minnes- eller enhetsv\u00e4rden delvis speglar v\u00e4rddatorn. F\u00f6r gr\u00e4nser och utnyttjande av en grupp kr\u00e4vs kompletterande cgroup2-metriker. Endast tidsm\u00e4ssiga f\u00f6rlopp m\u00f6jligg\u00f6r tillf\u00f6rlitliga tr\u00f6skelv\u00e4rden: Ett h\u00f6gt v\u00e4rde kan vara normalt om det passar in i det f\u00f6rv\u00e4ntade belastningsf\u00f6nstret; en pl\u00f6tslig \u00f6kning j\u00e4mf\u00f6rt med den egna baslinjen \u00e4r ofta mer relevant. De tillg\u00e4ngliga procfs-posterna beror p\u00e5 den k\u00f6rande k\u00e4rnan och dess konfiguration.  <\/p><p>Direkta filer och verktyg kompletterar varandra. <code data-no-translation=\"\">ps<\/code>, <code data-no-translation=\"\">top<\/code> eller . <code data-no-translation=\"\">htop<\/code> \u00e4r l\u00e4mpliga f\u00f6r den interaktiva process\u00f6versikten; <code data-no-translation=\"\">free<\/code>, <code data-no-translation=\"\">vmstat<\/code>, <code data-no-translation=\"\">iostat<\/code>, <code data-no-translation=\"\">pidstat<\/code>, <code data-no-translation=\"\">ss<\/code> och <code data-no-translation=\"\">sar<\/code> Beroende p\u00e5 hur de \u00e4r konfigurerade bearbetar de data f\u00f6r specifika fr\u00e5gor. procfs \u00e4r fortfarande ett bra val om du vill granska k\u00e4rnk\u00e4llkoden direkt eller skapa ett litet, \u00f6versk\u00e5dligt skript. F\u00f6r larmhantering och kapacitetsplanering \u00e4r tidsseriedata oftast det l\u00e4mpligare alternativet.<\/p><aside class=\"wh-callout wh-callout-warning\"><p class=\"wh-callout-title\">L\u00e4mna inte ut processdata utan att t\u00e4nka efter<\/p><p>Kommandorader kan inneh\u00e5lla s\u00f6kv\u00e4gar, klient-ID:n eller inloggningsuppgifter som \u00f6verf\u00f6rts av misstag. En process milj\u00f6variabler \u00e4r ofta \u00e4nnu mer k\u00e4nsliga. Samla in, lagra och dela dessa uppgifter endast om de \u00e4r n\u00f6dv\u00e4ndiga f\u00f6r fels\u00f6kningen; begr\u00e4nsa \u00e5tkomsten till beh\u00f6riga personer.<\/p><\/aside><p>Synlighetsbegr\u00e4nsningar g\u00e4ller \u00e4ven f\u00f6r l\u00e4sbara f\u00f6rfr\u00e5gningar. \u00c5tkomstr\u00e4ttigheter, monteringsalternativ och PID-namnrymder kan d\u00f6lja processdata eller begr\u00e4nsa dem till en containervy. Omv\u00e4nt inneb\u00e4r en egen \/proc-montering inte att varje global k\u00e4rndokument endast inneh\u00e5ller data fr\u00e5n containern. En saknad processpost eller ett ov\u00e4ntat h\u00f6gt globalt v\u00e4rde \u00e4r d\u00e4rf\u00f6r i f\u00f6rsta hand en indikation p\u00e5 att man b\u00f6r utreda k\u00f6rningsmilj\u00f6n, monteringsalternativen och cgroup-kontexten.  <\/p><h2 id=\"proc-troubleshooting\">Diagnosfl\u00f6den f\u00f6r l\u00e5ngsamma tj\u00e4nster och resursflaskhalsar<\/h2><p>Fels\u00f6kning b\u00f6rjar med ett symptom, inte med ett enskilt v\u00e4rde som man antar \u00e4r orsaken. Kontrollera d\u00e4refter minst en oberoende signal och notera om iakttagelsen g\u00e4ller v\u00e4rddatorn, en virtuell maskin eller en container. P\u00e5 s\u00e5 s\u00e4tt undviker du till exempel att f\u00f6rhastat tolka en h\u00f6g belastning som ett CPU-problem eller ett stort antal \u00f6ppna deskriptorer som ett l\u00e4ckage. F\u00f6ljande steg utg\u00f6r inledande l\u00e4sdiagnoser och ers\u00e4tter inte applikationsspecifika loggar.<\/p><div class=\"wh-table-scroll\" tabindex=\"0\" role=\"region\" aria-label=\"Kompakta diagnostiska v\u00e4gar med procfs\"><table><caption>Kompakta diagnostiska v\u00e4gar med procfs<\/caption><thead><tr><th scope=\"col\">Symptom<\/th><th scope=\"col\">L\u00e4s f\u00f6rst<\/th><th scope=\"col\">Justera d\u00e4refter<\/th><th scope=\"col\">Undvika feltolkningar<\/th><\/tr><\/thead><tbody><tr><td>H\u00f6g belastning<\/td><td>\/proc\/loadavg<\/td><td>\/proc\/stat, \/proc\/pressure\/io, \/proc\/diskstats<\/td><td>Belastningen omfattar b\u00e5de uppgifter som k\u00f6rs och s\u00e5dana som v\u00e4ntar utan avbrott, inte bara CPU-arbete.<\/td><\/tr><tr><td>F\u00f6rv\u00e4ntat lagringstryck<\/td><td>\/proc\/meminfo<\/td><td>\/proc\/pressure\/memory, \/proc\/\/status<\/td><td>Ett l\u00e5gt MemFree-v\u00e4rde i sig \u00e4r inte ett tecken p\u00e5 brist p\u00e5 RAM-minne; MemAvailable och Stalls spelar ocks\u00e5 in.<\/td><\/tr><tr><td>Anm\u00e4rkningsv\u00e4rd I\/O-v\u00e4ntetid<\/td><td>\/proc\/stat<\/td><td>\/proc\/pressure\/io, \/proc\/diskstats vid tv\u00e5 m\u00e4tpunkter<\/td><td>iowait \u00e4r ingen direkt m\u00e4tning av latensen och har dokumenterade begr\u00e4nsningar.<\/td><\/tr><tr><td>M\u00e5nga \u00f6ppna filer<\/td><td>\/proc\/sys\/fs\/file-nr och \/proc\/sys\/fs\/file-max<\/td><td>\/proc\/\/fd, tj\u00e4nstens beteende<\/td><td>M\u00e5nga beskrivande parametrar kan vara normala f\u00f6r en server; gr\u00e4nsv\u00e4rden och tillv\u00e4xt \u00e4r viktigare.<\/td><\/tr><tr><td>Tj\u00e4nsten startar inte<\/td><td>\/proc\/\/status, f\u00f6rutsatt att en process startas<\/td><td>\/proc\/\/fd, tj\u00e4nstlogg, upptagna resurser<\/td><td>En osynlig process kan ha avslutats eller k\u00f6ras utanf\u00f6r det synliga PID-namnomr\u00e5det.<\/td><\/tr><\/tbody><\/table><\/div><p>Vid h\u00f6g belastningsgenomsnitt b\u00f6r du f\u00f6rst kontrollera om det \u00e4r p\u00e5g\u00e5ende eller v\u00e4ntande uppgifter som driver upp siffran. Belastningsv\u00e4rdena visar genomsnitt \u00f6ver en, fem och 15 minuter och tar h\u00e4nsyn till b\u00e5de R- och D-tillst\u00e5nd. J\u00e4mf\u00f6r d\u00e4rf\u00f6r CPU-tidsf\u00e4lt endast med f\u00f6rsiktighet med I\/O-belastning och enhetsaktivitet. I synnerhet <strong>iowait<\/strong> f\u00e5r inte tolkas isolerat som lagringslatens.   <\/p><p>Vid l\u00e5ngsam anv\u00e4ndning och l\u00e5gt MemFree-v\u00e4rde \u00e4r <strong>MemAvailable<\/strong> det b\u00e4sta f\u00f6rsta kontextv\u00e4rdet. L\u00e4gg till minnes-PSI och status f\u00f6r den ber\u00f6rda processen, till exempel dess VmRSS, antal tr\u00e5dar och tillst\u00e5nd. PSI skiljer mellan f\u00f6ljande n\u00e4r det g\u00e4ller minne och I\/O: <code data-no-translation=\"\">some<\/code> f\u00f6r delvis blockerade uppgifter och <code data-no-translation=\"\">full<\/code> f\u00f6r fullst\u00e4ndig blockering av icke-idler-uppgifter. Om PSI-filer saknas kan detta bero p\u00e5 k\u00e4rnkonfigurationen eller milj\u00f6n; det utesluter inte att det r\u00f6r sig om en flaskhals.   <\/p><p>F\u00f6r fil- och processdiagnostik kan beh\u00f6righeter och <strong>PID-namnrymder<\/strong> begr\u00e4nsar informationens v\u00e4rde. I containrar beskriver \/proc ofta endast den tilldelade processv\u00e4rlden. Vid nekad \u00e5tkomst eller ofullst\u00e4ndiga kataloger b\u00f6r du d\u00e4rf\u00f6r kontrollera anv\u00e4ndarr\u00e4ttigheter, procfs-monteringsalternativ och namnomr\u00e5dets sammanhang innan du drar en teknisk slutsats utifr\u00e5n avsaknaden av data.  <\/p><h2 id=\"proc-decisions\">R\u00e4tta till vanliga missuppfattningar och v\u00e4lj l\u00e4mpliga verktyg<\/h2><p>Fyra vanliga missuppfattningar leder ofta till felaktiga \u00e5tg\u00e4rder vid Linux-administration. Lite <code data-no-translation=\"\">MemFree<\/code> betyder inte automatiskt RAM-brist, eftersom k\u00e4rnan bland annat anv\u00e4nder minnet som cache; f\u00f6r nya applikationer \u00e4r MemAvailable en mer meningsfull uppskattning. H\u00f6g belastning \u00e4r inte ett bevis p\u00e5 CPU-m\u00e4ttnad, eftersom \u00e4ven uppgifter som v\u00e4ntar utan avbrott r\u00e4knas in. En h\u00f6g andel iowait m\u00e4ter inte en datalagringsenhets direkta latens. Och procfs \u00e4r inte identiskt \u00f6verallt: k\u00e4rnversionen, konfigurationen, h\u00e5rdvaran, modulerna och namnutrymmena p\u00e5verkar filer och f\u00e4lt.   <\/p><p>V\u00e4lj metod utifr\u00e5n fr\u00e5gan. F\u00f6r en punktvis orsaksanalys ger <strong>procfs<\/strong> Direkta r\u00e5data fr\u00e5n den aktiva k\u00e4rnan. F\u00f6r en snabb, l\u00e4sbar \u00f6versikt \u00e4r specialiserade kommandoradsverktyg oftast effektivare. N\u00e4r trender, larm eller kapacitetsbeslut \u00e4r avg\u00f6rande beh\u00f6ver du en \u00f6vervakning som ordnar m\u00e4tpunkterna i tidsordning, ber\u00e4knar skillnader i m\u00e4tv\u00e4rden och lagrar historiska j\u00e4mf\u00f6relsev\u00e4rden. Vid resursbegr\u00e4nsningar f\u00f6r enskilda tj\u00e4nster eller containrar kompletterar en analys p\u00e5 cgroup-niv\u00e5 den globala v\u00e4rd\u00f6versikten; PSI kan, vid l\u00e4mplig konfiguration, \u00e4ven vara tillg\u00e4ngligt per cgroup.  <\/p><p>S\u00e4rskild \u00e5terh\u00e5llsamhet g\u00e4ller f\u00f6r <code data-no-translation=\"\">\/proc\/sys<\/code>. Att l\u00e4sa av en parameter \u00e4r en diagnostisk \u00e5tg\u00e4rd, medan att skriva till den f\u00f6r\u00e4ndrar k\u00e4rnans aktiva beteende. \u00c4ndra endast ett v\u00e4rde om orsaken \u00e4r klarlagd, utg\u00e5ngsv\u00e4rdet har dokumenterats, effekterna kan observeras och det finns en \u00e5terg\u00e5ngsv\u00e4g. Katalogerna <code data-no-translation=\"\">fs<\/code>, <code data-no-translation=\"\">vm<\/code> och <code data-no-translation=\"\">net<\/code> ordnar parametrarna efter tema, men ger inga universella inst\u00e4llningsriktlinjer.  <\/p><p>Exemplet <code data-no-translation=\"\">drop_caches<\/code> visar skillnaden mellan ingrepp och optimering: I kernel-dokumentationen beskrivs gr\u00e4nssnittet som icke-destruktivt, men man varnar f\u00f6r prestandaproblem och rekommenderar inte att det anv\u00e4nds som en rutinm\u00e4ssig drifts\u00e5tg\u00e4rd utanf\u00f6r test- eller fels\u00f6kningsscenarier. En f\u00f6rsiktig regel \u00e4r d\u00e4rf\u00f6r: M\u00e4t f\u00f6rst, g\u00f6r sedan en v\u00e4lgrundad och begr\u00e4nsad \u00e4ndring, observera effekter och biverkningar och dokumentera beslutet.  <\/p><section class=\"wh-sources\"><h2>K\u00e4llor och aktuell kunskapsniv\u00e5<\/h2><p>Forskningsl\u00e4get: <time datetime=\"2026-09-22\">2026-09-22<\/time><\/p><p>Sista uppdatering: 22 september 2026. De synliga procfs-s\u00f6kv\u00e4garna och f\u00e4lten kan variera beroende p\u00e5 k\u00e4rnversion, konfiguration, h\u00e5rdvara, namnutrymmen och beh\u00f6righeter. K\u00e4rndokumentationen som anv\u00e4nds f\u00f6r drop_caches och n\u00e4tverksparametrar \u00e4r versionsberoende; kontrollera dokumentationen f\u00f6r den anv\u00e4nda k\u00e4rnan om k\u00e4rnversionen skiljer sig \u00e5t.<\/p><div class=\"wh-source-urls\"><p><span class=\"wh-source-url\" data-no-translation=\"\" dir=\"ltr\">https:\/\/docs.kernel.org\/filesystems\/proc.html<\/span><\/p><p><span class=\"wh-source-url\" data-no-translation=\"\" dir=\"ltr\">https:\/\/docs.kernel.org\/admin-guide\/sysctl\/<\/span><\/p><p><span class=\"wh-source-url\" data-no-translation=\"\" dir=\"ltr\">https:\/\/docs.kernel.org\/admin-guide\/sysctl\/fs.html<\/span><\/p><p><span class=\"wh-source-url\" data-no-translation=\"\" dir=\"ltr\">https:\/\/docs.kernel.org\/5.17\/admin-guide\/sysctl\/vm.html<\/span><\/p><p><span class=\"wh-source-url\" data-no-translation=\"\" dir=\"ltr\">https:\/\/docs.kernel.org\/7.1\/admin-guide\/sysctl\/net.html<\/span><\/p><p><span class=\"wh-source-url\" data-no-translation=\"\" dir=\"ltr\">https:\/\/man7.org\/linux\/man-pages\/man5\/proc_loadavg.5.html<\/span><\/p><p><span class=\"wh-source-url\" data-no-translation=\"\" dir=\"ltr\">https:\/\/www.man7.org\/linux\/man-pages\/man5\/proc_stat.5.html<\/span><\/p><p><span class=\"wh-source-url\" data-no-translation=\"\" dir=\"ltr\">https:\/\/www.man7.org\/linux\/man-pages\/man5\/proc_meminfo.5.html<\/span><\/p><p><span class=\"wh-source-url\" data-no-translation=\"\" dir=\"ltr\">https:\/\/docs.kernel.org\/accounting\/psi.html<\/span><\/p><p><span class=\"wh-source-url\" data-no-translation=\"\" dir=\"ltr\">https:\/\/man7.org\/linux\/man-pages\/man5\/proc_pid_status.5.html<\/span><\/p><p><span class=\"wh-source-url\" data-no-translation=\"\" dir=\"ltr\">https:\/\/man7.org\/linux\/man-pages\/man5\/proc_diskstats.5.html<\/span><\/p><\/div><\/section><\/div>","protected":false},"excerpt":{"rendered":"<p>procfs ger direkt inblick i den aktiva Linux-k\u00e4rnan. Denna guide f\u00f6rklarar viktiga filer i katalogen \/proc, beskriver r\u00e4knare och \u00f6gonblicksbilder samt visar s\u00e4kra diagnostiska v\u00e4gar f\u00f6r belastning, minne, processer, I\/O och sysctl-parametrar.<\/p>","protected":false},"author":1,"featured_media":21652,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[780],"tags":[],"class_list":["post-21649","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administration-anleitungen"],"acf":[],"_wp_attached_file":null,"_wp_attachment_metadata":null,"surfer_file_name":null,"surfer_file_original_url":null,"_wp_attachment_image_alt":null,"litespeed-optimize-set":null,"litespeed-optimize-size":null,"_oembed_b5e1eb923ad3b086e579b1befcd4075c":null,"_elementor_source_image_hash":null,"stockpack_author_name":null,"stockpack_author_url":null,"stockpack_provider":null,"stockpack_image_url":null,"stockpack_license":null,"stockpack_license_url":null,"stockpack_modification":null,"color":null,"original_id":null,"original_url":null,"original_link":null,"unsplash_location":null,"unsplash_sponsor":null,"unsplash_exif":null,"unsplash_attachment_metadata":null,"_elementor_is_screenshot":null,"_source_url":null,"_elementor_migrations_state_8b2d":null,"envato_tk_source_kit":null,"envato_tk_source_index":null,"envato_tk_manifest":null,"envato_tk_folder_name":null,"envato_tk_builder":null,"envato_elements_download_event":null,"_menu_item_type":null,"_menu_item_menu_item_parent":null,"_menu_item_object_id":null,"_menu_item_object":null,"_menu_item_target":null,"_menu_item_classes":null,"_menu_item_xfn":null,"_menu_item_url":null,"_trp_menu_languages":null,"rank_math_primary_category":"780","_wh_make_key":"wh_4bfe68af3a01e55dbd77837eb0b68ff1","rank_math_internal_links_processed":"1","_wh_make_topic":"Linux procfs f\u00fcr Administratoren \u2013 wichtige Dateien im \u00dcberblick","_wh_make_input_keywords":["procfs linux","\/proc filesystem","linux administration"],"_wh_make_config":{"research_model":"gpt-5.6-terra","writer_model":"gpt-5.6-terra","review_model":"gpt-5.6-sol","image_model":"gpt-image-2.5-flare","image_quality":"medium","image_format":"webp","final_status":"draft","charts_enabled":true},"_wh_make_links":{"I1":{"id":"I1","post_id":20324,"url":"https:\/\/webhosting.de\/kernel-livepatch-oracle-linux-oracle-ksplice-ueberblick-sicherheit\/","title":"Kernel Livepatch i Oracle Linux: en \u00f6versikt \u00f6ver oracle ksplice","excerpt":"Med Oracle Ksplice installerar jag s\u00e4kerhetsuppdateringar f\u00f6r k\u00e4rnan och anv\u00e4ndarutrymmet i Oracle Linux under drift \u2013 utan omstart och utan att avbryta p\u00e5g\u00e5ende arbetsbelastningar. Det h\u00e4r inl\u00e4gget f\u00f6rklarar den praktiska anv\u00e4ndningen av Kernel Livepatch, belyser Ksplice-klienterna och visar hur jag rullar ut uppdateringar p\u00e5 ett s\u00e4kert, reproducerbart och granskningsbart s\u00e4tt. Huvudpunkter: Ingen omstart \u2013 k\u00e4rnuppdateringar k\u00f6rs utan driftstopp. Anv\u00e4ndarutrymme: glibc\/OpenSSL kan patchas live. Hypervisor: KVM- och Xen-uppdateringar under drift. \u00c5terst\u00e4llning: \u00c5ngra patchar utan omstart. Automatiserat: Styrning via klient och API. Kernel Livepatch: kort och tydligt Med Kernel Livepatch uppdaterar jag s\u00e4kerhetskorrigeringar direkt i den aktiva k\u00e4rnan \u2013 utan omstart. Patchar \u00e4ndrar funktioner i arbetsminnet, s\u00e5 att tj\u00e4nsterna forts\u00e4tter att k\u00f6ras och inga underh\u00e5llsf\u00f6nster beh\u00f6vs. Detta minskar driftstopp, s\u00e4nker risken och h\u00e5ller systemen tillg\u00e4ngliga dygnet runt. Jag t\u00e4pper till s\u00e4kerhetsh\u00e5l snabbare eftersom jag inte beh\u00f6ver planera f\u00f6r omstarter. F\u00f6r produktiva servrar med drift dygnet runt \u00e4r detta en tydlig f\u00f6rdel, s\u00e4rskilt n\u00e4r det g\u00e4ller databaser och virtualisering. Oracle Ksplice i korthet Oracle Ksplice levererar live-patchar f\u00f6r k\u00e4rnan, hypervisorn och viktiga bibliotek i anv\u00e4ndarutrymmet. Jag installerar uppdateringar p\u00e5 ett kontrollerat s\u00e4tt, \u00f6vervakar statusen och \u00e5tertar \u00e4ndringar omedelbart vid behov. P\u00e5 s\u00e5 s\u00e4tt uppr\u00e4tth\u00e5ller jag en h\u00f6g s\u00e4kerhetsniv\u00e5 utan att beh\u00f6va stoppa arbetsbelastningarna. Enhanced Client utvidgar fokus bortom k\u00e4rnan och hanterar glibc, OpenSSL samt KVM\/Xen. Detta resulterar i ett enhetligt patchkoncept f\u00f6r v\u00e4rddatorer och g\u00e4ster, b\u00e5de lokalt och i molnet. Processen i k\u00e4rnan: steg f\u00f6r steg Ksplice ber\u00e4knar skillnaden mellan den ursprungliga och den \u00f6nskade k\u00e4rnan och bygger en patchmodul utifr\u00e5n den. Jag laddar in denna modul i det k\u00f6rande systemet, d\u00e4r den ers\u00e4tter eller kompletterar de ber\u00f6rda funktionerna. Innan installationen kontrollerar Ksplice konsistensen hos den aktiva k\u00e4rnan, s\u00e5 att inga avvikelser leder till riskfyllda tillst\u00e5nd. Under uppdateringen f\u00f6rblir tj\u00e4nsterna tillg\u00e4ngliga; processen \u00e4r resurssn\u00e5l. Om flera korrigeringar ska genomf\u00f6ras automatiserar jag processen, till exempel med ksplice upgrade -y, och dokumenterar resultatet direkt efter drifts\u00e4ttningen. Anv\u00e4ndarutrymme, KV"},"I2":{"id":"I2","post_id":18128,"url":"https:\/\/webhosting.de\/kernel-tuning-linux-sysctl-parameter-serverboost-opti\/","title":"Kernel tuning i Linux-hosting: Sysctl-parametrar i \u00f6verblick","excerpt":"K\u00e4rnjustering vid Linux-hosting ger m\u00e4tbara prestandaf\u00f6rb\u00e4ttringar, eftersom jag m\u00e5linriktat anpassar sysctl-parametrar f\u00f6r n\u00e4tverk, minne, CPU och s\u00e4kerhet. Jag laddar profiler utan omstart och anpassar v\u00e4rdena efter arbetsbelastning, samtidighet och I\/O-beteende, s\u00e5 att servern reagerar snabbt och fungerar p\u00e5litligt \u00e4ven under h\u00f6g belastning. Viktiga punkter: sysctl styr k\u00e4rnans beteende under k\u00f6rning. Optimera n\u00e4tverket: backloggar, socklar, TCP. Trimma minnet: swapping, smutsiga sidor. Finjustera CPU: schemal\u00e4ggare, PID:er. St\u00e4rka s\u00e4kerheten utan extra belastning. Vad \u00e4r sysctl inom Linux-hosting? Med sysctl l\u00e4ser och \u00e4ndrar jag k\u00e4rnparametrar under k\u00f6rning utan att beh\u00f6va kompilera k\u00e4rnan. V\u00e4rdena finns som filer i katalogen \/proc\/sys, till exempel net\/ipv4\/tcp_max_syn_backlog, och styr n\u00e4tverk, minne och s\u00e4kerhet. F\u00f6r webbhotellsbelastningar med m\u00e5nga anslutningar minskar den direkta finjusteringen latensspikar och timeouts. Jag g\u00f6r tillf\u00e4lliga \u00e4ndringar med sysctl -w och skriver permanenta profiler i \/etc\/sysctl.d\/*.conf. D\u00e4refter laddar jag in allt med sysctl --system och kontrollerar dmesg samt journal-loggar f\u00f6r att snabbt kunna uppt\u00e4cka felkonfigurationer. S\u00e5 h\u00e4r anv\u00e4nder jag sysctl p\u00e5 ett s\u00e4kert s\u00e4tt Innan jag g\u00f6r \u00e4ndringar s\u00e4kerhetskopierar jag profilerna och dokumenterar aktuella v\u00e4rden med sysctl -a, s\u00e5 att jag n\u00e4r som helst kan \u00e5terg\u00e5 till tidigare inst\u00e4llningar. Jag testar f\u00f6rst nya v\u00e4rden p\u00e5 staging-VM:er med j\u00e4mf\u00f6rbar belastning. D\u00e4refter h\u00f6jer jag parametrarna stegvis, observerar m\u00e4tv\u00e4rdena och justerar p\u00e5 nytt. S\u00e5 h\u00e4r f\u00f6rhindrar jag OOM-avbrott, socket-drops och sporadiska \u00e5teruts\u00e4ndningar. F\u00f6r reproducerbara inst\u00e4llningar skapar jag en egen fil, till exempel \/etc\/sysctl.d\/99-hosting.conf, och laddar in den p\u00e5 ett kontrollerat s\u00e4tt. Testa # tillf\u00e4lligt: sudo sysctl -w net.core.somaxconn=65535 sudo sysctl -w net.ipv4.tcp_max_syn_backlog=4096 St\u00e4ll in # permanent: sudo tee \/etc\/sysctl.d\/99-hosting.conf &gt;\/dev\/null &lt;&lt;&#039;EOF&#039; net.core.somaxconn = 65535 net.ipv4.tcp_max_syn_backlog = 4096 vm.swappiness = 10 vm.dirty_ratio = 20 EOF sudo sysctl --system N\u00e4tverksparametrar f\u00f6r webbservrar Vid m\u00e5nga samtidiga anslutningar \u00f6kar jag somaxconn s\u00e5 att Nginx eller Apaches listen-backlog inte \u00f6verbelastas. Med net.ipv4.tcp_max_syn_backlog ut\u00f6kar jag k\u00f6n f\u00f6r halv\u00f6ppna anslutningar, vilket vid h\u00f6g trafik"},"I3":{"id":"I3","post_id":20594,"url":"https:\/\/webhosting.de\/lsof-linux-offene-dateien-analyse-diagnose\/","title":"Anv\u00e4nd lsof effektivt: Analysera \u00f6ppna filer och processer","excerpt":"Ich setze lsof linux ein, um in Sekunden zu sehen, welcher Prozess welche Datei, Socket oder welchen Port offen h\u00e4lt. So erkenne ich blockierte Logs, belegte Ports und gesperrte Dateien ohne Umwege und l\u00f6se St\u00f6rungen zielgerichtet. Zentrale Punkte Damit der Einstieg gelingt, fasse ich die wichtigsten Aspekte kurz zusammen. Ressourcen sichtbar machen: Prozesse, Dateien, Verzeichnisse, Ger\u00e4te, Pipes, Sockets. Filter nutzen: nach Prozessname (-c), PID (-p), Benutzer (-u), Datei, Verzeichnis (+d\/+D), Port (-i). Fehler eingrenzen: gesperrte Dateien finden, Portkonflikte aufl\u00f6sen, h\u00e4ngende Dienste zuordnen. Netzwerk pr\u00fcfen: aktive Verbindungen und belegte Ports schnell identifizieren. Workflow straffen: erst eingrenzen, dann gezielt pr\u00fcfen, anschlie\u00dfend handeln. Warum lsof im Alltag z\u00e4hlt Ich nutze lsof, wenn ein Dienst nicht startet, eine Datei \u201ebusy\u201c meldet oder ein Port bereits belegt ist. Das Tool verbindet Datei, Prozess, Benutzer und Netzwerk in einer klaren Sicht. Ich erkenne sofort, welcher PID den Zugriff h\u00e4lt und seit wann. So handle ich statt zu raten und beende den richtigen Prozess, statt versehentlich den falschen Dienst zu stoppen. Gerade auf produktiven Servern gewinne ich damit Minuten bis Stunden, weil ich die Ursache direkt am Prozess festmache. Dieser Ansatz spart Tickets, reduziert Ausf\u00e4lle und schafft belastbare Erkenntnisse. Grundsyntax und Ausgabe verstehen Die Grundform lautet lsof [Optionen] &lt;Ziel&gt; und liefert ohne Parameter alle aktuell offenen Objekte. Auf stark ausgelasteten Systemen filtere ich die Ausgabe, statt mich durch tausende Zeilen zu arbeiten. Wichtig ist, dass Linux \u201eDatei\u201c weit fasst: dazu z\u00e4hlen Verzeichnisse, Ger\u00e4te, Bibliotheken und Netzwerk-Sockets. In der Ausgabe helfen Spalten wie COMMAND, PID, USER, FD, TYPE, NAME. Ich richte meinen Blick zuerst auf FD (Dateideskriptor), TYPE (REG, DIR, IPv4\/6) und NAME mit Pfad oder Portangabe. Wer diese Spalten liest, versteht in kurzer Zeit den aktuellen Systemzustand und ordnet Ressourcen sauber zu Prozessen. Installation und Berechtigungen in der Praxis Auf vielen Distributionen ist lsof nicht vorinstalliert. Ich installiere es daher fr\u00fchzeitig \u00fcber den Paketmanager (apt insta"}},"_wh_make_stage":"entwurf","_wh_make_research_date":"2026-09-22","_wh_make_sitemap_info":{"index":"https:\/\/webhosting.de\/sitemap_index.xml","sitemaps":["https:\/\/webhosting.de\/post-sitemap1.xml","https:\/\/webhosting.de\/post-sitemap2.xml","https:\/\/webhosting.de\/post-sitemap3.xml","https:\/\/webhosting.de\/post-sitemap4.xml"],"url_count":3092,"fetched_at":"2026-09-22T03:42:35+00:00","selected_ids":[20324,18128,20594]},"_wh_make_draft_hash":"bfdaf9e7d44d670e5d156feda1b7015d25a643f1321ba185b7f8fd15d38a8ca1","_wh_make_work":{"version":"2.1","identity":{"sheet_ref":"1VMjxV8Q73i0Q1HO6s-u4jNHVRF0snliGCeg97intLPs","sheet_name":"Tabellenblatt1","external_id":"1386","topic":"Linux procfs f\u00fcr Administratoren \u2013 wichtige Dateien im \u00dcberblick","keywords":["procfs linux","\/proc filesystem","linux administration"],"category_input":"780"},"config":{"research_model":"gpt-5.6-terra","writer_model":"gpt-5.6-terra","review_model":"gpt-5.6-sol","image_model":"gpt-image-2.5-flare","image_quality":"medium","image_format":"webp","final_status":"draft","charts_enabled":true},"phase":"done","pending":null,"receipts":{"71a606c73073acb4042020c3952de4d4":"b009a40f880ed74f6b5c58a57387d8a137ddcd313831b4b7e65b3b6087a873e3","bf5ef0afe81bff06d64e1f2192080095":"bd6119be8c56af22935021629da9b86028c2ef7388132396679f3db5839ddede","23d7b85a19c3a588cf1ae808e44a02d5":"64ecae8725e3c95dffe3e421b8a0de19a8d1c0e5576f82dd46c2b974dd1a1dce","265b0195f2bbd3fe54c408a58c583078":"aab6a20756ff5321fc40862a310de7f77aefe7b7f8a61282bb207c4b29812784","10dd185c9e68e880cbfa341be1017e42":"94f28451bd20d4ad72c4e2180c32bb8b7640443dc3237764503598ba56c4b72f","2b344208a5cdfa03fb14b181daaacab7":"91449995ef6b1bfdf300839ec11234d6ad68916af1c9fdc7dfb150b84e6fe6e0","47b9972c3a85c20d135bb6f77968c58a":"39d8b4bef966e2703db549b06bc5b3cacd5a2f43bee688201a3ded4b6fe1e816","1e91e3d00fd20b26c9ae106396ec02bf":"b9b19889bff8bc7c45288c5cea913db3b6b3c36daf687f7b1be215760e6b63c7","1a13bbea094331829e89c25e79bcbca3":"5b15a2466f705fdb76c37f948bac4ae5c7ab5bfbb512add5307bb8aba06f1eb9","34526c07aeb09223cbe08bd32e68d423":"dc36dbb668a58a0903f4fb7f87cfe4ebf7b573044f95d01457af5c2c8a11ed15","b1c43b362eaa9c6b4a47c5ca0d44df0c":"246dc1a7993f7605763d10eecbb6009de0932af5b0d25a34f7310ed61f1d804e","245b49e67839ba6a8c9166f5f2077523":"a6585bdbd0935af0fe730a94d5f759320610ac3b1aa3e7042997e00919daeb25","e3ab60134a30110be714c49548588248":"be05c9f92fd706c6639d1294e032c30a9630b42042fa49f53ed7d1d70f29ac8d"},"parts":{"1":[{"id":"proc-basics","heading":"procfs verstehen: virtuelle Kernelansicht statt Datenspeicher","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Das ","ref":""},{"kind":"strong","text":"procfs","ref":""},{"kind":"text","text":" ist ein virtuelles Dateisystem: Die Eintr\u00e4ge unter \/proc bilden Datenstrukturen und Zust\u00e4nde des laufenden Linux-Kernels ab. Sie liegen nicht als dauerhaft gespeicherte Inhalte auf einem Datentr\u00e4ger. Beim Lesen erzeugt der Kernel die jeweilige Ansicht aus seinem aktuellen Zustand; nach einem Neustart beginnen etwa viele Z\u00e4hler erneut. Deshalb ist \/proc eine Schnittstelle f\u00fcr Beobachtung und teilweise Steuerung, kein Ort f\u00fcr eigene Dateien oder persistente Konfigurationen. ","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"F\u00fcr die Administration sind drei Bereiche zu unterscheiden. Globale Statusdateien wie \/proc\/meminfo, \/proc\/stat oder \/proc\/loadavg beschreiben den Host beziehungsweise die sichtbare Systeminstanz. Verzeichnisse mit numerischen Namen, etwa \/proc\/1234, liefern Details zu einem einzelnen Prozess. Unter \/proc\/sys liegen dagegen Kernelparameter, die abh\u00e4ngig von Berechtigung und Parameter sowohl lesbar als auch schreibbar sein k\u00f6nnen. Die \u00e4hnliche Dateiform darf nicht dar\u00fcber hinwegt\u00e4uschen, dass Statusabfrage und Konfigurations\u00e4nderung grundverschiedene Folgen haben. ","ref":""},{"kind":"citation","text":"","ref":"S8"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Welche Pfade und Felder vorhanden sind, ist nicht auf jedem Linux-System identisch. Kernelversion und -konfiguration, Architektur, erkannte Hardware sowie geladene Module beeinflussen die sichtbaren Eintr\u00e4ge. Auch ein Prozess- oder anderer Namespace kann die Ansicht begrenzen. Skripte sollten daher Dateien und Felder pr\u00fcfen, bevor sie deren Inhalt auswerten, statt eine vollst\u00e4ndige, \u00fcberall gleiche procfs-Struktur vorauszusetzen. ","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Davon abzugrenzen ist sysfs unter \/sys: Es stellt vor allem Ger\u00e4te, Treiber und Hardwareobjekte dar. F\u00fcr Ressourcenverteilung und Grenzen von Gruppen ist au\u00dferdem cgroup2 relevant. procfs bleibt jedoch die unmittelbare Quelle f\u00fcr viele Kernel- und Prozesszust\u00e4nde, die bei einer ersten Diagnose ben\u00f6tigt werden. ","ref":""},{"kind":"citation","text":"","ref":"S8"}]}]},{"id":"proc-time-context","heading":"Z\u00e4hler, Momentaufnahmen und Sichtbarkeit richtig einordnen","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Der Wert allein erkl\u00e4rt bei procfs selten ein Problem. Zuerst ist sein Zeitbezug zu kl\u00e4ren: Einige Angaben sind ","ref":""},{"kind":"strong","text":"kumulative Z\u00e4hler","ref":""},{"kind":"text","text":" seit Systemstart, andere beschreiben einen aktuellen Zustand, wieder andere bilden gleitende Zeitfenster ab. Ein hoher Z\u00e4hlerstand zeigt zun\u00e4chst nur, dass sich ein Ereignis seit dem Boot summiert hat. Eine Rate entsteht erst aus zwei Messpunkten: Differenz der Werte geteilt durch das dazwischenliegende Zeitintervall. Das gilt beispielsweise f\u00fcr viele CPU-, Interrupt- und Datentr\u00e4gerz\u00e4hler. ","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Die Datei \/proc\/uptime liefert die vergangene Betriebsdauer und die aggregierte Idle-Zeit. Sie hilft, Z\u00e4hler seit dem Start zeitlich einzuordnen, ersetzt aber keine Messreihe. Eine einmalige Abfrage ist eine Momentaufnahme; f\u00fcr belastbare Aussagen \u00fcber Trends, Spitzen oder wiederkehrende Last braucht es wiederholte Abfragen mit Zeitstempel. Dabei k\u00f6nnen sich Werte bereits w\u00e4hrend des Lesens ver\u00e4ndern, weil der Kernel weiterarbeitet. ","ref":""},{"kind":"citation","text":"","ref":"S8"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Auch die sichtbaren Daten haben Grenzen. \/proc\/self verweist stets auf den Prozess, der den Pfad gerade aufl\u00f6st. Damit ist er f\u00fcr Skripte und interaktive Pr\u00fcfungen praktisch, ohne eine PID anzunehmen. Der Zugriff auf fremde Prozessverzeichnisse kann jedoch durch Dateirechte, Linux-Capabilities und die procfs-Mount-Option ","ref":""},{"kind":"code","text":"hidepid","ref":""},{"kind":"text","text":" eingeschr\u00e4nkt sein. Fehlende Einblicke sind in diesem Fall kein defektes procfs, sondern ein Schutz gegen das Auslesen sensibler Prozessinformationen. ","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Besondere Vorsicht gilt in Containern. Eine procfs-Instanz kann an einen PID-Namespace gebunden sein; dann zeigt \/proc nur die Prozesse, die in dieser Namespace-Sicht existieren. Werte und PIDs aus einem Container beschreiben folglich nicht automatisch den gesamten Host. Vor jeder Diagnose ist daher zu kl\u00e4ren, ob die Shell auf dem Host, in einer VM oder in einem Container l\u00e4uft. ","ref":""},{"kind":"citation","text":"","ref":"S8"}]}]},{"id":"proc-sysctl-boundary","heading":"Lesen, konfigurieren und absichern unter \/proc\/sys","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Der Bereich ","ref":""},{"kind":"strong","text":"\/proc\/sys","ref":""},{"kind":"text","text":" ist die Dateisystemansicht der sysctl-Schnittstelle. Das Lesen eines Werts dient der Diagnostik. Ein Schreibzugriff ver\u00e4ndert dagegen unmittelbar das Verhalten des laufenden Kernels und kann Dienste, Ressourcenverbrauch oder Sicherheitsmerkmale beeinflussen. Dass eine \u00c4nderung ohne Neustart wirkt, macht sie nicht risikolos und auch nicht automatisch dauerhaft: Persistenz h\u00e4ngt von der gew\u00e4hlten Systemkonfiguration ab. ","ref":""},{"kind":"citation","text":"","ref":"S2"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Die Verzeichnisstruktur erleichtert die erste Einordnung. Unter \/proc\/sys\/fs stehen unter anderem globale Dateisystem- und File-Handle-Parameter. \/proc\/sys\/vm b\u00fcndelt Einstellungen der Speicherverwaltung, w\u00e4hrend \/proc\/sys\/net netzwerkbezogene Parameter enth\u00e4lt. Welche Unterverzeichnisse und Schl\u00fcssel verf\u00fcgbar sind, h\u00e4ngt wiederum von Kernelkonfiguration und Funktionen des Systems ab. Ein vorhandener Parameter ist daher kein allgemeines Tuning-Rezept; seine Dokumentation und der konkrete Workload sind ma\u00dfgeblich. ","ref":""},{"kind":"citation","text":"","ref":"S10"},{"kind":"citation","text":"","ref":"S11"},{"kind":"citation","text":"","ref":"S12"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Ein Gegenbeispiel f\u00fcr scheinbare Optimierung ist ","ref":""},{"kind":"code","text":"drop_caches","ref":""},{"kind":"text","text":" unter \/proc\/sys\/vm. Die Kernel-Dokumentation ordnet die Funktion Debugging und Tests zu und r\u00e4t von einem Einsatz au\u00dferhalb solcher Zwecke ab, weil das Leeren wiederverwendbarer Caches Leistung kosten kann. Wenig freier Speicher ist f\u00fcr sich genommen kein Grund, Caches zu verwerfen: Der Kernel nutzt RAM bewusst auch f\u00fcr Dateicache. ","ref":""},{"kind":"citation","text":"","ref":"S11"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Vor jeder \u00c4nderung sollte eine nachvollziehbare Ursache vorliegen. Sichere zuerst den Ausgangswert, dokumentiere Zweck und erwartete Nebenwirkungen, \u00e4ndere kontrolliert und beobachte anschlie\u00dfend passende Messwerte sowie Dienstverhalten. Plane den R\u00fcckweg vorab und \u00fcbernimm einen Wert erst nach fachlicher Pr\u00fcfung in eine dauerhafte Konfiguration. Weiterf\u00fchrende Grundlagen zu Parametern und ihrer kontrollierten Verwaltung behandelt der Beitrag ","ref":""},{"kind":"internal_link","text":"Kernel-Tuning im Linux-Hosting: Sysctl-Parameter im \u00dcberblick","ref":"I2"},{"kind":"text","text":".","ref":""}]}]}],"2":[{"id":"proc-overview-table","heading":"Die wichtigsten procfs-Dateien nach Administrationsaufgabe","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Die Auswahl einer procfs-Datei sollte von der Administrationsfrage ausgehen, nicht von einer m\u00f6glichst vollst\u00e4ndigen Verzeichnisliste. Globale Dateien beschreiben den Host oder den sichtbaren Namespace, Prozesspfade einen einzelnen Prozess, und Eintr\u00e4ge unter \/proc\/sys\/fs liefern Konfiguration und systemweite Grenzen. Einige Werte sind aktuelle Zust\u00e4nde, andere seit dem Boot kumulierte Z\u00e4hler oder gleitende Durchschnitte. Diese Unterscheidung entscheidet dar\u00fcber, ob ein einzelnes Auslesen gen\u00fcgt oder zwei Messpunkte n\u00f6tig sind.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"table","caption":"Wichtige procfs-Dateien f\u00fcr typische Verwaltungsfragen","headers":["Pfad","Zweck","Typische Frage","Datencharakter","Wichtige Einschr\u00e4nkung","Sichere Leseabfrage"],"rows":[["\/proc\/loadavg","Systemlast","Sind Aufgaben wartend?","1-, 5-, 15-Minuten-Mittel","Keine reine CPU-Auslastung","cat \/proc\/loadavg"],["\/proc\/stat","CPU- und Kernelz\u00e4hler","Wie verteilen sich CPU-Zeiten?","Seit Boot kumuliert","iowait nicht isoliert bewerten","grep -E '^(cpu|intr|ctxt|processes)' \/proc\/stat"],["\/proc\/meminfo","Speicher\u00fcbersicht","Ist Speicher verf\u00fcgbar?","Aktuelle Speicherwerte","MemFree allein gen\u00fcgt nicht","cat \/proc\/meminfo"],["\/proc\/pressure\/cpu","CPU-Stalls","Warten Tasks auf CPU?","Zeitfenster und Z\u00e4hler","full kann systemweit null sein","cat \/proc\/pressure\/cpu"],["\/proc\/pressure\/memory","Speicherdruck","Blockiert Speicherknappheit Tasks?","Zeitfenster und Z\u00e4hler","PSI muss verf\u00fcgbar sein","cat \/proc\/pressure\/memory"],["\/proc\/pressure\/io","I\/O-Stalls","Warten Tasks auf I\/O?","Zeitfenster und Z\u00e4hler","Kein Ersatz f\u00fcr Ger\u00e4teanalyse","cat \/proc\/pressure\/io"],["\/proc\/<PID>\/status","Prozessstatus","Wie gro\u00df und aktiv ist ein Prozess?","Aktuelle Prozessdaten","Rechte k\u00f6nnen Zugriff begrenzen","cat \/proc\/$$\/status"],["\/proc\/<PID>\/fd","Offene Deskriptoren","Welche Objekte h\u00e4lt ein Prozess?","Aktuelle symbolische Links","Viele FDs sind nicht automatisch ein Leck","ls -l \/proc\/$$\/fd"],["\/proc\/<PID>\/maps","Virtuelle Mappings","Welche Bereiche hat ein Prozess eingebunden?","Aktuelle Mappingliste","F\u00fcr die Erstanalyse oft zu umfangreich","cat \/proc\/$$\/maps"],["\/proc\/diskstats","Blockger\u00e4te-I\/O","Welche Ger\u00e4te arbeiten?","Seit Boot kumuliert","Raten erfordern zwei Stichproben","cat \/proc\/diskstats"],["\/proc\/sys\/fs\/file-nr","File-Handle-Nutzung","Wie viele Handles nutzt das System?","Aktueller Z\u00e4hler und Grenze","Mittleres Feld ist auf modernen Linux-Systemen null","cat \/proc\/sys\/fs\/file-nr"],["\/proc\/sys\/fs\/file-max","File-Handle-Grenze","Welche globale Obergrenze gilt?","Aktiver Parameter","Nicht mit Prozesslimit verwechseln","cat \/proc\/sys\/fs\/file-max"]],"source_ids":["S1","S3","S4","S5","S6","S7","S9","S10"]},{"type":"paragraph","runs":[{"kind":"text","text":"Die Tabelle ist eine Einstiegshilfe, keine Diagnosekette. Ein auff\u00e4lliger Wert verlangt stets ein unabh\u00e4ngiges Gegenzeichen: Load mit CPU- und I\/O-Daten, Speicherwerte mit Pressure Stall Information und Prozessgr\u00f6\u00dfen mit dem Verhalten des Dienstes. Besonders \/proc\/diskstats und \/proc\/stat sind ","ref":""},{"kind":"strong","text":"kumulative Z\u00e4hler","ref":""},{"kind":"text","text":"; ihre Differenz \u00fcber ein bekanntes Intervall ist f\u00fcr Raten aussagekr\u00e4ftiger als der absolute Stand. Die folgenden Abschnitte ordnen die Signale deshalb nach Last, Speicher, Prozessen und I\/O ein.","ref":""}]}]},{"id":"proc-load-memory","heading":"Last, CPU und Speicher: Signale kombiniert bewerten","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Bei einer langsamen Anwendung ist \/proc\/loadavg ein sinnvoller Start, aber kein Urteil \u00fcber die CPU. Die drei Werte bilden die durchschnittliche Last der letzten 1, 5 und 15 Minuten ab. In die Last gehen nicht nur laufbereite Einheiten im Zustand R ein, sondern auch Tasks im ununterbrechbaren Wartezustand D, etwa bei I\/O. Das vierte Feld zeigt die aktuell ausf\u00fchrbaren gegen\u00fcber allen existierenden Scheduling-Einheiten. Hoher ","ref":""},{"kind":"strong","text":"Load Average","ref":""},{"kind":"text","text":" kann daher auf CPU-Konkurrenz, blockierte I\/O-Zugriffe oder beides hinweisen.","ref":""},{"kind":"citation","text":"","ref":"S3"}]},{"type":"code","language":"sh","code":"cat \/proc\/loadavg\ngrep -E '^(cpu|intr|ctxt|processes)' \/proc\/stat\ncat \/proc\/meminfo\ncat \/proc\/pressure\/memory","source_ids":["S3","S4","S5","S6"]},{"type":"paragraph","runs":[{"kind":"text","text":"Die CPU-Zeilen aus \/proc\/stat enthalten Zeitanteile seit dem Systemstart in USER_HZ. Um daraus Auslastungsanteile zu ermitteln, m\u00fcssen zwei Abfragen verglichen werden; ein einzelner Stand zeigt nur angesammelte Zeit. Der Wert iowait ist dabei kein unmittelbares Latenzma\u00df f\u00fcr Storage: Seine Berechnung hat dokumentierte Grenzen und kann unter bestimmten Umst\u00e4nden sogar sinken. F\u00fcr eine I\/O-Ursache sind daher zus\u00e4tzlich Ger\u00e4tewerte und I\/O-PSI sinnvoll.","ref":""},{"kind":"citation","text":"","ref":"S4"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Auch ein niedriger Wert bei MemFree beweist noch keine RAM-Not. Linux nutzt unbenutzten Arbeitsspeicher gezielt f\u00fcr Cache. MemAvailable sch\u00e4tzt, wie viel Speicher neue Anwendungen voraussichtlich ohne Swapping erhalten k\u00f6nnen, und ist f\u00fcr die erste Einordnung meist hilfreicher. Erst wenn MemAvailable knapp wird und gleichzeitig Speicher-Stalls auftreten, verdichtet sich der Hinweis auf ","ref":""},{"kind":"strong","text":"Speicherdruck","ref":""},{"kind":"text","text":".","ref":""},{"kind":"citation","text":"","ref":"S5"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Die Dateien unter \/proc\/pressure erg\u00e4nzen diese Sicht: some bedeutet, dass wenigstens einige Tasks w\u00e4hrend eines Anteils des Zeitfensters nicht weiterkamen; full steht f\u00fcr einen Zustand, in dem alle nicht-idlen Tasks gleichzeitig blockiert waren. Die Angaben avg10, avg60 und avg300 beziehen sich auf 10, 60 und 300 Sekunden, total ist ein kumulierter Stall-Z\u00e4hler. CPU-, memory- und io-PSI beantworten unterschiedliche Fragen und sollten nicht gegeneinander ausgetauscht werden.","ref":""},{"kind":"citation","text":"","ref":"S6"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Reagiert ein Dienst bei geringem MemFree langsam, pr\u00fcfst du zun\u00e4chst MemAvailable und \/proc\/pressure\/memory. Sind beide unauff\u00e4llig, spricht das gegen akuten systemweiten Speicherdruck. Anschlie\u00dfend kann \/proc\/<PID>\/status zeigen, ob der betroffene Prozess etwa ungew\u00f6hnlich viel VmRSS belegt, viele Threads hat oder in einem auff\u00e4lligen State steht. Diese Kombination trennt eine Cache-lastige, aber normale Speichernutzung von einem Problem, das weitere Prozessanalyse verlangt.","ref":""},{"kind":"citation","text":"","ref":"S7"}]}]},{"id":"proc-process-io","heading":"Prozesse, Dateideskriptoren und Datentr\u00e4ger-I\/O untersuchen","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"F\u00fcr eine sichere \u00dcbung mit einem garantiert vorhandenen Prozess steht $$ f\u00fcr die PID der aktuellen Shell. Die status-Datei ist menschenlesbarer als die feldorientierte stat-Datei. Name identifiziert den Prozess, State seinen Zustand, PPid den Elternprozess und Threads die Thread-Anzahl. VmRSS beschreibt den aktuell im RAM residenten Anteil; VmSize ist dagegen virtueller Adressraum. FDSize beschreibt die Gr\u00f6\u00dfe der Deskriptortabelle, nicht zwingend die Zahl aktuell offener Eintr\u00e4ge. Freiwillige und unfreiwillige Kontextwechsel k\u00f6nnen bei der Einordnung von Scheduling-Verhalten helfen, sind allein aber kein Fehlerbeweis.","ref":""},{"kind":"citation","text":"","ref":"S7"}]},{"type":"code","language":"sh","code":"cat \/proc\/$$\/status\nls -l \/proc\/$$\/fd","source_ids":["S7","S1"]},{"type":"paragraph","runs":[{"kind":"text","text":"Das fd-Verzeichnis enth\u00e4lt symbolische Links auf offene Dateien, Pipes, Ger\u00e4te oder Sockets. Es hilft etwa, einen Prozess zu finden, der eine gel\u00f6schte Logdatei weiterhin ge\u00f6ffnet h\u00e4lt. Eine gro\u00dfe Zahl offener Dateideskriptoren ist jedoch bei Proxys, Datenbanken oder ereignisorientierten Servern durchaus erwartbar. F\u00fcr gefilterte Ansichten und die Zuordnung \u00fcber Prozesse hinweg ist ","ref":""},{"kind":"internal_link","text":"lsof zur Analyse offener Dateien einsetzen","ref":"I3"},{"kind":"text","text":" eine passende Erg\u00e4nzung. Kommandozeilen aus cmdline k\u00f6nnen vertrauliche Argumente preisgeben; environ ist wegen m\u00f6glicher Zugangsdaten oder Tokens noch sensibler und keine Routineabfrage.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"maps listet virtuelle Speicherbereiche mit Berechtigungen, Offset, Ger\u00e4t, Inode und gegebenenfalls Pfad. smaps erg\u00e4nzt je Mapping detaillierte Speicherwerte. Beide Dateien sind f\u00fcr vertiefte Speicheranalysen gedacht: Ihre Ausgabe kann gro\u00df sein, und die Interpretation einzelner Mappings erfordert Kontext. F\u00fcr den ersten Blick sind status und die systemweiten Speicher- und PSI-Dateien meist effizienter.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Bei hohem Load und geringer CPU-Auslastung erweitert \/proc\/diskstats die Diagnose um die Ger\u00e4teebene. Die Datei f\u00fchrt pro Blockger\u00e4t kumulative I\/O-Statistiken. Um Aktivit\u00e4t als Rate zu bewerten, m\u00fcssen zwei Zeitpunkte verglichen werden. Dabei sind physische Laufwerke, Partitionen und virtuelle oder Device-Mapper-Ger\u00e4te sauber zu unterscheiden; Z\u00e4hler verschiedener Ebenen d\u00fcrfen nicht blind addiert werden. Zusammen mit \/proc\/pressure\/io l\u00e4sst sich so pr\u00fcfen, ob beobachtbare I\/O-Stalls und Ger\u00e4teaktivit\u00e4t zeitlich zusammenfallen.","ref":""},{"kind":"citation","text":"","ref":"S9"}]}]}],"3":[{"id":"proc-monitoring","heading":"procfs im Betrieb: Abfragen, Monitoring und Datenschutz","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"F\u00fcr wiederholbare Betriebsdiagnosen behandelst du procfs-Abfragen als Messpunkte: Du notierst Zeitstempel, Systemkontext und die konkrete Abfrage. Viele Werte sind seit dem Start kumulierte Z\u00e4hler; erst die Differenz zweier Werte geteilt durch das Zeitintervall ergibt eine Rate. Das gilt etwa f\u00fcr Z\u00e4hler aus ","ref":""},{"kind":"code","text":"\/proc\/diskstats","ref":""},{"kind":"text","text":". Eine Einzelabfrage kann daher Aktivit\u00e4t belegen, aber weder Durchsatz noch eine dauerhafte Verschlechterung zuverl\u00e4ssig quantifizieren. ","ref":""},{"kind":"citation","text":"","ref":"S9"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Ein Monitoring-System sollte in festen Intervallen unter anderem Speicherwerte aus ","ref":""},{"kind":"code","text":"\/proc\/meminfo","ref":""},{"kind":"text","text":", Ger\u00e4tewerte aus ","ref":""},{"kind":"code","text":"\/proc\/diskstats","ref":""},{"kind":"text","text":", Prozess- und Systemzust\u00e4nde sowie bei verf\u00fcgbarer Kernelunterst\u00fctzung Drucksignale erfassen. Es muss Rohwerte in passende Einheiten umrechnen, bei Z\u00e4hlern Differenzen bilden und Historien speichern. Erst zeitliche Verl\u00e4ufe erlauben belastbare Schwellenwerte: Ein hoher Wert kann normal sein, wenn er zum erwarteten Lastfenster passt; ein pl\u00f6tzlicher Anstieg gegen\u00fcber der eigenen Baseline ist oft relevanter. Die verf\u00fcgbaren procfs-Eintr\u00e4ge h\u00e4ngen vom laufenden Kernel und seiner Konfiguration ab. ","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Direkte Dateien und Werkzeuge erg\u00e4nzen sich. ","ref":""},{"kind":"code","text":"ps","ref":""},{"kind":"text","text":", ","ref":""},{"kind":"code","text":"top","ref":""},{"kind":"text","text":" oder ","ref":""},{"kind":"code","text":"htop","ref":""},{"kind":"text","text":" eignen sich f\u00fcr die interaktive Prozesssicht; ","ref":""},{"kind":"code","text":"free","ref":""},{"kind":"text","text":", ","ref":""},{"kind":"code","text":"vmstat","ref":""},{"kind":"text","text":", ","ref":""},{"kind":"code","text":"iostat","ref":""},{"kind":"text","text":", ","ref":""},{"kind":"code","text":"pidstat","ref":""},{"kind":"text","text":", ","ref":""},{"kind":"code","text":"ss","ref":""},{"kind":"text","text":" und ","ref":""},{"kind":"code","text":"sar","ref":""},{"kind":"text","text":" bereiten je nach Installation Daten f\u00fcr bestimmte Fragen auf. procfs bleibt sinnvoll, wenn du die Kernelquelle direkt pr\u00fcfen oder ein kleines, nachvollziehbares Skript bauen m\u00f6chtest. F\u00fcr Alarmierung und Kapazit\u00e4tsplanung sind Zeitreihendaten meist die passendere Ebene.","ref":""}]},{"type":"callout","variant":"warning","title":"Prozessdaten nicht unbedacht weitergeben","runs":[{"kind":"text","text":"Kommandozeilen k\u00f6nnen Pfade, Mandantenkennungen oder versehentlich \u00fcbergebene Zugangsdaten enthalten. Umgebungsvariablen eines Prozesses sind h\u00e4ufig noch sensibler. Erfasse, speichere und teile diese Daten nur, wenn sie f\u00fcr die Diagnose erforderlich sind; beschr\u00e4nke Zugriffe auf berechtigte Personen.","ref":""}]},{"type":"paragraph","runs":[{"kind":"text","text":"Auch bei rein lesenden Abfragen gelten Sichtbarkeitsgrenzen. Zugriffsrechte, Mount-Optionen und PID-Namespaces k\u00f6nnen Prozessdaten ausblenden oder auf eine Containeransicht begrenzen. Ein fehlender Eintrag ist deshalb nicht automatisch ein fehlendes Problem auf dem Host, sondern zun\u00e4chst ein Hinweis darauf, die Ausf\u00fchrungsumgebung zu kl\u00e4ren. ","ref":""},{"kind":"citation","text":"","ref":"S1"}]}]},{"id":"proc-troubleshooting","heading":"Diagnosepfade f\u00fcr langsame Dienste und Ressourcenengp\u00e4sse","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Troubleshooting beginnt mit einem Symptom, nicht mit einem vermeintlich schuldigen Einzelwert. Pr\u00fcfe danach mindestens ein unabh\u00e4ngiges Signal und halte fest, ob die Beobachtung den Host, eine virtuelle Maschine oder einen Container betrifft. So vermeidest du beispielsweise, einen hohen Load vorschnell als CPU-Problem oder eine gro\u00dfe Zahl offener Deskriptoren vorschnell als Leck zu bewerten. Die folgenden Pfade sind lesende Erstdiagnosen und ersetzen keine anwendungsbezogenen Logs.","ref":""}]},{"type":"table","caption":"Kompakte Diagnosepfade mit procfs","headers":["Symptom","Zuerst lesen","Danach abgleichen","Fehlinterpretation vermeiden"],"rows":[["Hoher Load","\/proc\/loadavg","\/proc\/stat, \/proc\/pressure\/io, \/proc\/diskstats","Load umfasst laufbereite und ununterbrechbar wartende Tasks, nicht nur CPU-Arbeit."],["Vermuteter Speicherdruck","\/proc\/meminfo","\/proc\/pressure\/memory, \/proc\/<PID>\/status","Niedriges MemFree allein beweist keinen RAM-Mangel; MemAvailable und Stalls z\u00e4hlen mit."],["Auff\u00e4llige I\/O-Wartezeit","\/proc\/stat","\/proc\/pressure\/io, \/proc\/diskstats in zwei Messpunkten","iowait ist keine direkte Latenzmessung und hat dokumentierte Einschr\u00e4nkungen."],["Viele offene Dateien","\/proc\/sys\/fs\/file-nr und \/proc\/sys\/fs\/file-max","\/proc\/<PID>\/fd, Dienstverhalten","Viele Deskriptoren k\u00f6nnen f\u00fcr einen Server normal sein; Grenzen und Wachstum sind wichtiger."],["Dienst startet nicht","\/proc\/<PID>\/status, sofern ein Prozess entsteht","\/proc\/<PID>\/fd, Dienstjournal, belegte Ressourcen","Ein nicht sichtbarer Prozess kann beendet sein oder au\u00dferhalb des sichtbaren PID-Namespace laufen."]],"source_ids":["S1","S3","S4","S5","S6","S9","S10"]},{"type":"paragraph","runs":[{"kind":"text","text":"Bei hoher Load Average pr\u00fcfst du zun\u00e4chst, ob ausf\u00fchrbare oder wartende Aufgaben die Zahl treiben. Die Load-Angaben bilden Durchschnittswerte \u00fcber ein, f\u00fcnf und 15 Minuten ab und ber\u00fccksichtigen sowohl R- als auch D-Zust\u00e4nde. Vergleiche deshalb CPU-Zeitfelder nur mit Vorsicht mit I\/O-Druck und Ger\u00e4teaktivit\u00e4t. Insbesondere ","ref":""},{"kind":"strong","text":"iowait","ref":""},{"kind":"text","text":" darf nicht isoliert als Speicherlatenz gelesen werden. ","ref":""},{"kind":"citation","text":"","ref":"S3"},{"kind":"citation","text":"","ref":"S4"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Bei einer langsamen Anwendung und kleinem MemFree ist ","ref":""},{"kind":"strong","text":"MemAvailable","ref":""},{"kind":"text","text":" der bessere erste Kontextwert. Erg\u00e4nze Speicher-PSI und den Status des betroffenen Prozesses, etwa dessen VmRSS, Threadzahl und Zustand. PSI unterscheidet bei Speicher und I\/O zwischen ","ref":""},{"kind":"code","text":"some","ref":""},{"kind":"text","text":" f\u00fcr teilweise blockierte Tasks und ","ref":""},{"kind":"code","text":"full","ref":""},{"kind":"text","text":" f\u00fcr vollst\u00e4ndige Blockierung nicht-idler Tasks. Fehlen PSI-Dateien, kann dies an Kernelkonfiguration oder Umgebung liegen; es widerlegt keinen Engpass. ","ref":""},{"kind":"citation","text":"","ref":"S5"},{"kind":"citation","text":"","ref":"S6"}]},{"type":"paragraph","runs":[{"kind":"text","text":"F\u00fcr Datei- und Prozessdiagnosen k\u00f6nnen Rechte und ","ref":""},{"kind":"strong","text":"PID-Namespaces","ref":""},{"kind":"text","text":" die Aussagekraft einschr\u00e4nken. In Containern beschreibt \/proc h\u00e4ufig nur die zugeordnete Prozesswelt. Bei verweigertem Zugriff oder unvollst\u00e4ndigen Verzeichnissen pr\u00fcfst du daher Nutzerrechte, procfs-Mount-Optionen und den Namespace-Kontext, bevor du aus der Abwesenheit von Daten eine technische Schlussfolgerung ziehst. ","ref":""},{"kind":"citation","text":"","ref":"S1"}]}]},{"id":"proc-decisions","heading":"Typische Fehlannahmen korrigieren und passende Werkzeuge w\u00e4hlen","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Vier Kurzschl\u00fcsse f\u00fchren in der Linux-Administration h\u00e4ufig zu falschen Ma\u00dfnahmen. Wenig ","ref":""},{"kind":"code","text":"MemFree","ref":""},{"kind":"text","text":" bedeutet nicht automatisch RAM-Not, weil der Kernel Speicher unter anderem als Cache nutzt; f\u00fcr neue Anwendungen ist MemAvailable die aussagekr\u00e4ftigere Sch\u00e4tzung. Hoher Load beweist keine CPU-S\u00e4ttigung, da auch ununterbrechbar wartende Aufgaben einflie\u00dfen. Ein hoher iowait-Anteil misst keine unmittelbare Latenz eines Datentr\u00e4gers. Und procfs ist nicht \u00fcberall identisch: Kernelversion, Konfiguration, Hardware, Module und Namespaces beeinflussen Dateien und Felder. ","ref":""},{"kind":"citation","text":"","ref":"S1"},{"kind":"citation","text":"","ref":"S4"}]},{"type":"paragraph","runs":[{"kind":"text","text":"W\u00e4hle die Methode nach der Frage. F\u00fcr eine punktuelle Ursachenanalyse liefert ","ref":""},{"kind":"strong","text":"procfs","ref":""},{"kind":"text","text":" unmittelbare Rohdaten des laufenden Kernels. F\u00fcr eine schnelle, menschenlesbare \u00dcbersicht sind spezialisierte Kommandozeilenwerkzeuge meist effizienter. Wenn Trends, Alarmierung oder Kapazit\u00e4tsentscheidungen z\u00e4hlen, ben\u00f6tigst du ein Monitoring, das Messpunkte zeitlich einordnet, Z\u00e4hlerdifferenzen berechnet und historische Vergleichswerte vorh\u00e4lt. Bei Ressourcenlimits einzelner Dienste oder Container erg\u00e4nzt eine Analyse auf cgroup-Ebene die globale Hostansicht; PSI kann bei passender Konfiguration auch pro cgroup verf\u00fcgbar sein. ","ref":""},{"kind":"citation","text":"","ref":"S6"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Besondere Zur\u00fcckhaltung gilt f\u00fcr ","ref":""},{"kind":"code","text":"\/proc\/sys","ref":""},{"kind":"text","text":". Das Lesen eines Parameters ist Diagnostik, das Schreiben ver\u00e4ndert aktives Kernelverhalten. \u00c4ndere einen Wert nur, wenn die Ursache verstanden ist, der Ausgangswert dokumentiert wurde, Auswirkungen beobachtbar sind und ein R\u00fcckweg feststeht. Die Verzeichnisse ","ref":""},{"kind":"code","text":"fs","ref":""},{"kind":"text","text":", ","ref":""},{"kind":"code","text":"vm","ref":""},{"kind":"text","text":" und ","ref":""},{"kind":"code","text":"net","ref":""},{"kind":"text","text":" ordnen Parameter thematisch, liefern aber keine universellen Tuningvorgaben. ","ref":""},{"kind":"citation","text":"","ref":"S2"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Das Beispiel ","ref":""},{"kind":"code","text":"drop_caches","ref":""},{"kind":"text","text":" zeigt den Unterschied zwischen Eingriff und Optimierung: Die Kernel-Dokumentation beschreibt die Schnittstelle als nicht destruktiv, warnt jedoch vor Leistungsproblemen und empfiehlt sie nicht als regul\u00e4re Betriebsma\u00dfnahme au\u00dferhalb von Test- oder Debug-Szenarien. Eine konservative Regel lautet daher: Erst messen, dann eine begr\u00fcndete \u00c4nderung begrenzt vornehmen, Wirkung und Nebenwirkungen beobachten und die Entscheidung dokumentieren. ","ref":""},{"kind":"citation","text":"","ref":"S11"}]}]}]},"plan":{"reader_question":"Welche Informationen liefert das \/proc filesystem bei der Linux-Administration, wie lassen sich die wichtigsten Dateien sicher lesen und wie sind ihre Werte einzuordnen?","sections":[{"id":"proc-basics","heading":"procfs verstehen: virtuelle Kernelansicht statt Datenspeicher","part":1,"target_words":270,"purpose":"Erkl\u00e4rt \/proc als virtuelles Dateisystem des laufenden Kernels und grenzt es von persistenten Dateien ab. Ordnet globale Statusdateien, Prozessverzeichnisse und \/proc\/sys als unterschiedliche Schnittstellen ein. Beschreibt, warum Eintr\u00e4ge je nach Kernelversion, Konfiguration, Hardware, Modulen und Namespace variieren k\u00f6nnen, und grenzt procfs knapp von sysfs sowie cgroup2 ab.","source_ids":["S1","S8"],"internal_link_ids":[]},{"id":"proc-time-context","heading":"Z\u00e4hler, Momentaufnahmen und Sichtbarkeit richtig einordnen","part":1,"target_words":270,"purpose":"Vermittelt die n\u00f6tige Leselogik vor einzelnen Dateien: Werte k\u00f6nnen seit Systemstart kumulieren, einen aktuellen Zustand zeigen oder gleitende Zeitfenster abbilden. Erkl\u00e4rt mit \/proc\/uptime, weshalb zwei Abfragen f\u00fcr Raten n\u00f6tig sind. Behandelt Rechte, hidepid, Linux-Capabilities, \/proc\/self und PID-Namespaces als Grenzen der sichtbaren Prozesswelt.","source_ids":["S1","S8"],"internal_link_ids":[]},{"id":"proc-sysctl-boundary","heading":"Lesen, konfigurieren und absichern unter \/proc\/sys","part":1,"target_words":270,"purpose":"Trennt reine Diagnostik klar vom Schreiben nach \/proc\/sys, das aktives Kernelverhalten ver\u00e4ndert. Erkl\u00e4rt die thematischen Bereiche fs, vm und net, ohne pauschale Tuningwerte zu empfehlen. Nutzt drop_caches als Gegenbeispiel f\u00fcr vermeintliche Optimierungen und formuliert Voraussetzungen f\u00fcr \u00c4nderungen: Ursache verstehen, Ausgangswert sichern, Auswirkungen pr\u00fcfen und R\u00fcckweg planen.","source_ids":["S2","S10","S11","S12"],"internal_link_ids":["I2"]},{"id":"proc-overview-table","heading":"Die wichtigsten procfs-Dateien nach Administrationsaufgabe","part":2,"target_words":280,"purpose":"Enth\u00e4lt die zentrale informative Tabelle mit den Spalten Pfad, Zweck, typische Frage, Datencharakter, wichtige Einschr\u00e4nkung und sichere Leseabfrage. Sie umfasst mindestens \/proc\/loadavg, \/proc\/stat, \/proc\/meminfo, die drei PSI-Dateien, \/proc\/<PID>\/status, \/proc\/<PID>\/fd, \/proc\/<PID>\/maps, \/proc\/diskstats sowie \/proc\/sys\/fs\/file-nr und file-max. Leitet anschlie\u00dfend zur aufgabengeleiteten Detailanalyse \u00fcber.","source_ids":["S1","S3","S4","S5","S6","S7","S9","S10"],"internal_link_ids":[]},{"id":"proc-load-memory","heading":"Last, CPU und Speicher: Signale kombiniert bewerten","part":2,"target_words":280,"purpose":"Zeigt sichere Lesebeispiele f\u00fcr \/proc\/loadavg, ausgew\u00e4hlte Zeilen aus \/proc\/stat und \/proc\/meminfo. Erkl\u00e4rt die Load Average mit R- und D-Tasks, USER_HZ bei CPU-Zeiten, die Einschr\u00e4nkungen von iowait sowie MemAvailable als Sch\u00e4tzung. Erg\u00e4nzt PSI f\u00fcr CPU-, Speicher- und I\/O-Stalls mit some und full. Praxisfall: Eine langsame Anwendung bei niedrigem MemFree wird \u00fcber MemAvailable, memory PSI und Prozessstatus eingeordnet.","source_ids":["S3","S4","S5","S6","S7"],"internal_link_ids":[]},{"id":"proc-process-io","heading":"Prozesse, Dateideskriptoren und Datentr\u00e4ger-I\/O untersuchen","part":2,"target_words":280,"purpose":"Erkl\u00e4rt die Abfrage des aktuellen Shell-Prozesses \u00fcber \/proc\/$$\/status und \/proc\/$$\/fd. Ordnet Name, State, PPid, Threads, VmRSS, FDSize und Kontextwechsel in status ein; behandelt cmdline und besonders environ als potenziell vertrauliche Daten. Stuft maps und smaps als vertiefende, umfangreiche Speicheranalyse ein. Erkl\u00e4rt diskstats als kumulative Ger\u00e4tewerte und unterscheidet physische Ger\u00e4te, Partitionen und virtuelle Ger\u00e4te. Verkn\u00fcpft dies mit dem Fall hoher Load bei geringer CPU-Auslastung.","source_ids":["S1","S7","S9"],"internal_link_ids":["I3"]},{"id":"proc-monitoring","heading":"procfs im Betrieb: Abfragen, Monitoring und Datenschutz","part":3,"target_words":260,"purpose":"\u00dcbertr\u00e4gt procfs in wiederholbare Betriebsabl\u00e4ufe: Nur-Lese-Abfragen, Zeitstempel und zwei Messpunkte f\u00fcr Raten. Erkl\u00e4rt, welche Daten ein Monitoring-System in Intervallen erfassen und wie es Differenzen, Einheiten, Historien und Schwellenwerte aufbereiten muss. Ordnet procfs gegen\u00fcber ps, top beziehungsweise htop, free, vmstat, iostat, pidstat, ss und sar ein. Betont den sorgf\u00e4ltigen Umgang mit Kommandozeilen, Umgebungen und Prozessdaten.","source_ids":["S1","S5","S9"],"internal_link_ids":[]},{"id":"proc-troubleshooting","heading":"Diagnosepfade f\u00fcr langsame Dienste und Ressourcenengp\u00e4sse","part":3,"target_words":260,"purpose":"Enth\u00e4lt eine zweite, kompakte Tabelle mit Symptom, zuerst lesen, danach abgleichen und zu vermeidender Fehlinterpretation. Behandelt mindestens hohen Load, vermuteten Speicherdruck, auff\u00e4llige I\/O-Wartezeiten, viele offene Dateien und einen nicht startenden Dienst. Die Abl\u00e4ufe f\u00fchren von einem Symptom zu mehreren unabh\u00e4ngigen Signalen und benennen ausdr\u00fccklich, wann Rechte, Containergrenzen oder fehlende Kerneloptionen die Diagnoseansicht begrenzen.","source_ids":["S1","S3","S4","S5","S6","S9","S10"],"internal_link_ids":[]},{"id":"proc-decisions","heading":"Typische Fehlannahmen korrigieren und passende Werkzeuge w\u00e4hlen","part":3,"target_words":260,"purpose":"Fasst die entscheidenden Grenzen zusammen: wenig MemFree ist nicht automatisch RAM-Not, hoher Load beweist keine CPU-S\u00e4ttigung, iowait ist keine direkte Latenzmessung und procfs ist nicht auf jedem System identisch. Formuliert Entscheidungskriterien f\u00fcr direkte procfs-Analyse, Spezialwerkzeuge, Zeitreihenmonitoring und vertiefte cgroup-Analyse. Schlie\u00dft mit einer konservativen Regel f\u00fcr \/proc\/sys: nur begr\u00fcndet \u00e4ndern, Wirkung beobachten und \u00c4nderungen dokumentieren.","source_ids":["S1","S2","S4","S6","S11"],"internal_link_ids":[]}]},"repairs":1,"reviews":2,"issues":[],"guard":{"content_md5":"fe641734889fa48edfed948b0aab44cc","title":"Linux procfs f\u00f6r administrat\u00f6rer: en \u00f6versikt \u00f6ver viktiga filer","slug":"linux-procfs-foer-administratoerer","excerpt":"procfs ger direkt inblick i den aktiva Linux-k\u00e4rnan. Denna guide f\u00f6rklarar viktiga filer i katalogen \/proc, beskriver r\u00e4knare och \u00f6gonblicksbilder samt visar s\u00e4kra diagnostiska v\u00e4gar f\u00f6r belastning, minne, processer, I\/O och sysctl-parametrar.","status":"draft","featured_media":21652},"verify":{"content_md5":"fe641734889fa48edfed948b0aab44cc","title":"Linux procfs f\u00f6r administrat\u00f6rer: en \u00f6versikt \u00f6ver viktiga filer","slug":"linux-procfs-foer-administratoerer","excerpt":"procfs ger direkt inblick i den aktiva Linux-k\u00e4rnan. Denna guide f\u00f6rklarar viktiga filer i katalogen \/proc, beskriver r\u00e4knare och \u00f6gonblicksbilder samt visar s\u00e4kra diagnostiska v\u00e4gar f\u00f6r belastning, minne, processer, I\/O och sysctl-parametrar.","status":"draft","featured_media":21652},"row_number":1880,"created_at":"2026-09-22T06:47:00+00:00","updated_at":"2026-09-22T06:54:07+00:00","verified_at":"2026-09-22T06:54:03+00:00"},"_wh_make_research":"Recherche-Briefing: Linux procfs f\u00fcr Administratoren \u2013 wichtige Dateien im \u00dcberblick\n\nStand der Recherche: 22. September 2026. Zielumfang des sp\u00e4teren Fachartikels: 2.400 bis 2.700 W\u00f6rter.\n\nLeserfrage und Artikelziel\n\nDer Artikel beantwortet die praktische Frage: Welche Informationen liefert das \/proc filesystem bei der Linux-Administration, wie lassen sich die wichtigsten Dateien sicher lesen und wie sind ihre Werte einzuordnen?\n\nDer Schwerpunkt sollte nicht auf einer vollst\u00e4ndigen Liste aller Eintr\u00e4ge liegen. Sinnvoller ist eine Orientierung nach Administrationsaufgaben: Systemlast, CPU, Arbeitsspeicher, Prozesse, offene Dateien, Datentr\u00e4ger-I\/O, Netzwerk sowie Laufzeitparameter unter \/proc\/sys. Leser sollen nach dem Artikel wissen, welche Dateien bei einem konkreten Symptom als Erstes relevant sind, welche Werte nur Momentaufnahmen darstellen und wann spezialisierte Werkzeuge die bessere Wahl sind.\n\nGesicherte Funktionsweise\n\nprocfs ist ein virtuelles Dateisystem. Die Eintr\u00e4ge unter \/proc repr\u00e4sentieren Datenstrukturen und Zust\u00e4nde des laufenden Linux-Kernels; sie sind keine gew\u00f6hnlichen Dateien auf einem persistenten Datentr\u00e4ger. \/proc dient einerseits zum Auslesen von System- und Prozessinformationen, andererseits k\u00f6nnen bestimmte Kernelparameter \u00fcber \/proc\/sys zur Laufzeit konfiguriert werden. Welche Eintr\u00e4ge vorhanden sind, h\u00e4ngt unter anderem von Kernelversion, Kernelkonfiguration, Hardware, geladenen Modulen und Namespaces ab. ([docs.kernel.org](https:\/\/docs.kernel.org\/filesystems\/proc.html?utm_source=openai))\n\nDer Artikel sollte ausdr\u00fccklich zwischen drei Bereichen unterscheiden:\n\nErstens: globale, \u00fcberwiegend lesbare Statusdateien wie \/proc\/meminfo, \/proc\/stat, \/proc\/loadavg und \/proc\/diskstats.\n\nZweitens: prozessbezogene Verzeichnisse unter \/proc\/<PID>. Sie enthalten beispielsweise Statusdaten, Kommandozeile, offene Dateideskriptoren und Speicherabbildungen eines konkreten Prozesses. Der Link \/proc\/self verweist jeweils auf den Prozess, der ihn gerade liest. F\u00fcr fremde Prozesse gelten Zugriffspr\u00fcfungen; sensible Daten k\u00f6nnen au\u00dferdem durch die Mount-Option hidepid eingeschr\u00e4nkt oder verborgen sein. ([docs.kernel.org](https:\/\/docs.kernel.org\/filesystems\/proc.html?utm_source=openai))\n\nDrittens: \/proc\/sys als sysctl-Schnittstelle. Dort sind manche Werte lesbar und schreibbar. Der sp\u00e4tere Artikel sollte Lesezugriffe und \u00c4nderungen klar trennen: Das blo\u00dfe Anzeigen eines Werts ist Diagnostik, das Schreiben ver\u00e4ndert Kernelverhalten zur Laufzeit und verlangt eine fachliche Begr\u00fcndung, dokumentierte Auswirkungen sowie einen R\u00fcckweg. ([docs.kernel.org](https:\/\/docs.kernel.org\/admin-guide\/sysctl\/?utm_source=openai))\n\nVoraussetzungen und sichere Einordnung\n\nAdressiert werden Linux-Administratoren mit Shell-Grundkenntnissen. F\u00fcr viele Lesebeispiele gen\u00fcgt ein unprivilegierter Account; bei fremden Prozessen oder gesch\u00fctzten Daten k\u00f6nnen Rechte, Linux-Capabilities und die procfs-Mount-Optionen den Zugriff verhindern. Das ist kein Fehlerfall, sondern ein Sicherheitsmerkmal. ([docs.kernel.org](https:\/\/docs.kernel.org\/filesystems\/proc.html?utm_source=openai))\n\nDer Artikel sollte vorab vermitteln, dass procfs Werte in verschiedenen Einheiten und Zeitbez\u00fcgen ausgibt. Manche Z\u00e4hler gelten seit Systemstart, andere spiegeln einen aktuellen Zustand, wieder andere sind gleitende Durchschnitte. Erst zwei zeitlich getrennte Abfragen machen aus einem monotonen Z\u00e4hler eine Rate. Ein einzelner hoher Z\u00e4hler ist daher meist kein Leistungsnachweis.\n\nSichere Terminalbeispiele k\u00f6nnen konsequent nur lesend sein:\n\nTerminalbefehl:\ncat \/proc\/meminfo\n\nTerminalbefehl:\ncat \/proc\/loadavg\n\nTerminalbefehl:\ngrep -E '^(cpu|intr|ctxt|processes)' \/proc\/stat\n\nTerminalbefehl:\ncat \/proc\/$$\/status\n\nTerminalbefehl:\nls -l \/proc\/$$\/fd\n\nTerminalbefehl:\nfindmnt -T \/proc\n\nDie Beispiele verwenden $$ bewusst f\u00fcr die aktuelle Shell statt einer angenommenen PID. Sie \u00e4ndern weder Systemparameter noch Prozessdaten.\n\nKernstruktur f\u00fcr den sp\u00e4teren Artikel\n\n1. Systemzustand und Auslastung\n\n\/proc\/loadavg zeigt die Auslastungsdurchschnitte f\u00fcr 1, 5 und 15 Minuten. Anders als eine vereinfachende Erkl\u00e4rung \u201eCPU-Auslastung\u201c nahelegt, umfasst die Load Average laufbereite Scheduling-Einheiten im Zustand R und Einheiten im ununterbrechbaren Wartezustand D, h\u00e4ufig bei I\/O-Wartevorg\u00e4ngen. Der Artikel sollte daraus ableiten: Ein hoher Load-Wert beweist keine CPU-\u00dcberlastung; er ist ein Anlass, CPU-, Speicher- und I\/O-Signale zusammen zu pr\u00fcfen. Das vierte Feld zeigt aktuell ausf\u00fchrbare gegen\u00fcber insgesamt existierenden Kernel-Scheduling-Einheiten. ([man7.org](https:\/\/man7.org\/linux\/man-pages\/man5\/proc_loadavg.5.html?utm_source=openai))\n\n\/proc\/stat liefert globale Kernelstatistiken, insbesondere CPU-Zeitanteile seit dem Boot. CPU-Zeiten werden in USER_HZ gef\u00fchrt, wobei die Architektur beachtet werden muss. Der iowait-Wert verdient einen deutlichen Warnhinweis: Laut Manpage ist er aus mehreren Gr\u00fcnden nicht zuverl\u00e4ssig und kann unter bestimmten Bedingungen sogar sinken. Deshalb sollte der Artikel iowait nicht als isolierte I\/O-Latenzmessung darstellen. ([man7.org](https:\/\/www.man7.org\/linux\/man-pages\/man5\/proc_stat.5.html))\n\nErg\u00e4nzend passt \/proc\/uptime: Betriebsdauer und aggregierte Idle-Zeit liefern Kontext f\u00fcr Z\u00e4hler seit dem Boot, sind aber kein Ersatz f\u00fcr eine Zeitreihe.\n\n2. Arbeitsspeicher, Swap und Speicherdruck\n\n\/proc\/meminfo ist die zentrale Rohdatenquelle f\u00fcr die Speicher\u00fcbersicht. Die Datei liefert unter anderem MemTotal, MemFree, MemAvailable, Cached, Buffers und Swap-Werte. Besonders wichtig ist die Erkl\u00e4rung, dass MemAvailable eine Sch\u00e4tzung des Speichers ist, der f\u00fcr neue Anwendungen ohne Swapping verf\u00fcgbar sein soll. Der Artikel sollte nicht suggerieren, dass ein geringer MemFree-Wert allein Speichermangel bedeutet: Dateicache ist ein erwarteter Bestandteil der Speichernutzung. ([man7.org](https:\/\/www.man7.org\/linux\/man-pages\/man5\/proc_meminfo.5.html))\n\nF\u00fcr neuere oder entsprechend konfigurierte Systeme ist \/proc\/pressure besonders wertvoll. Die Dateien cpu, memory und io enthalten Stall-Anteile f\u00fcr 10, 60 und 300 Sekunden sowie einen kumulierten Stall-Z\u00e4hler. \u201esome\u201c bedeutet, dass mindestens einige Tasks blockiert waren; \u201efull\u201c beschreibt den Zustand, dass alle nicht-idlen Tasks gleichzeitig blockiert waren. Bei CPU-Druck ist systemweites full historisch beziehungsweise semantisch besonders einzuordnen und kann als null erscheinen. ([docs.kernel.org](https:\/\/docs.kernel.org\/accounting\/psi.html))\n\nPraxisfall: Eine Anwendung reagiert langsam, obwohl MemFree klein ist. Ablauf: MemAvailable pr\u00fcfen, anschlie\u00dfend \/proc\/pressure\/memory lesen und bei Bedarf prozessbezogen \/proc\/<PID>\/status betrachten. Erst die Kombination kann darauf hindeuten, ob echter Speicherdruck vorliegt.\n\n3. Prozesse gezielt untersuchen\n\n\/proc\/<PID>\/status ist f\u00fcr Menschen besser lesbar als die feldbasierte Datei \/proc\/<PID>\/stat. Sinnvolle Felder f\u00fcr den Artikel: Name, State, Pid, PPid, Threads, VmSize, VmRSS, FDSize, Kontextwechsel sowie gegebenenfalls Capabilities und Seccomp. Die Datei b\u00fcndelt Informationen aus stat und statm in menschenlesbarer Form. ([man7.org](https:\/\/man7.org\/linux\/man-pages\/man5\/proc_pid_status.5.html?utm_source=openai))\n\n\/proc\/<PID>\/cmdline hilft bei der Zuordnung eines Prozesses, kann aber Argumente enthalten, die vertraulich sein sollen. \/proc\/<PID>\/environ ist noch sensibler und sollte im Artikel nicht als Routinewerkzeug empfohlen werden. Der Hinweis ist wichtig, weil Kommandozeilen oder Umgebungsvariablen fehlerhaft konfigurierte Zugangsdaten enthalten k\u00f6nnen.\n\n\/proc\/<PID>\/fd zeigt die offenen Dateideskriptoren als symbolische Links. Praxisfall: Ein Dienst erreicht sein Dateideskriptor-Limit oder h\u00e4lt gel\u00f6schte Logdateien ge\u00f6ffnet. Der Artikel sollte erkl\u00e4ren, dass diese Ansicht eine Diagnosehilfe ist, aber keine pauschale Aussage \u00fcber ein Leck erlaubt: viele offene Deskriptoren k\u00f6nnen f\u00fcr Proxy-, Datenbank- oder Event-Server erwartbar sein.\n\n\/proc\/<PID>\/maps und \/proc\/<PID>\/smaps sind Spezialwerkzeuge f\u00fcr Speicheranalysen. maps listet virtuelle Speicherbereiche samt Berechtigungen, Offset, Ger\u00e4t, Inode und Pfad; smaps erg\u00e4nzt Speichernutzungswerte je Mapping. Wegen Umfang und Kosten sollte der Artikel diese Dateien als vertiefende Analyse einordnen, nicht als erste Standardabfrage. ([docs.kernel.org](https:\/\/docs.kernel.org\/filesystems\/proc.html))\n\n4. Datentr\u00e4ger und I\/O\n\n\/proc\/diskstats enth\u00e4lt I\/O-Statistiken je Blockger\u00e4t. Entscheidend ist die Einschr\u00e4nkung: Es handelt sich um kumulative Z\u00e4hler. F\u00fcr Raten, etwa gelesene Sektoren pro Sekunde, muss ein Tool zwei Stichproben vergleichen und die Differenz durch das Zeitintervall teilen. Au\u00dferdem m\u00fcssen Partitionen, virtuelle Ger\u00e4te, Device Mapper und physische Laufwerke sauber unterschieden werden. ([man7.org](https:\/\/man7.org\/linux\/man-pages\/man5\/proc_diskstats.5.html))\n\nPraxisfall: Hohe Load Average bei geringer CPU-Auslastung. Die sinnvolle Pr\u00fcfsequenz ist: \/proc\/loadavg als Symptom, \/proc\/stat mit Vorsicht beim iowait, \/proc\/diskstats als Ger\u00e4teperspektive und \/proc\/pressure\/io f\u00fcr beobachtbaren I\/O-Stall. Diese Kombination ist aussagekr\u00e4ftiger als ein einzelner Wert. ([man7.org](https:\/\/man7.org\/linux\/man-pages\/man5\/proc_loadavg.5.html?utm_source=openai))\n\n5. Laufzeitparameter unter \/proc\/sys\n\nDer Artikel sollte \/proc\/sys nicht als Tuning-Katalog behandeln. Sinnvoll sind exemplarische Lesef\u00e4lle:\n\n\/proc\/sys\/fs\/file-nr und file-max zur Einordnung systemweiter File-Handle-Nutzung und -Grenze. Bei file-nr ist das mittlere Feld auf Linux 2.6 und sp\u00e4ter stets null; dies ist laut Kernel-Dokumentation kein Fehler. ([docs.kernel.org](https:\/\/docs.kernel.org\/admin-guide\/sysctl\/fs.html?utm_source=openai))\n\n\/proc\/sys\/vm als Bereich f\u00fcr Speicherverwaltung. Warnbeispiel: drop_caches darf nicht als permanente Speicheroptimierung erscheinen. Die Kernel-Dokumentation beschreibt den Eingriff als nicht destruktiv, warnt aber vor Leistungsproblemen und empfiehlt seine Nutzung au\u00dferhalb von Test- oder Debug-Umgebungen nicht. ([docs.kernel.org](https:\/\/docs.kernel.org\/5.17\/admin-guide\/sysctl\/vm.html?utm_source=openai))\n\n\/proc\/sys\/net enth\u00e4lt netzwerkbezogene Einstellungen, wobei die vorhandenen Unterverzeichnisse von der Kernelkonfiguration abh\u00e4ngen. Statt konkrete Tuningwerte ohne Workload-Kontext zu nennen, sollte der Artikel auf die thematische Struktur und die Pflicht zur jeweiligen Kernel-Dokumentation verweisen. ([docs.kernel.org](https:\/\/docs.kernel.org\/7.1\/admin-guide\/sysctl\/net.html?utm_source=openai))\n\nEntscheidungsalternativen\n\nprocfs eignet sich f\u00fcr direkte Kernelansichten, Troubleshooting und einfache Skripte. F\u00fcr regelm\u00e4\u00dfiges Monitoring sind jedoch spezialisierte Werkzeuge und Zeitreihensysteme h\u00e4ufig geeigneter, weil sie Differenzen berechnen, Einheiten aufbereiten, Historien speichern und Schwellenwerte auswerten k\u00f6nnen. Der Artikel kann ps, top beziehungsweise htop, free, vmstat, iostat, pidstat, ss und sar als Einordnungsalternativen nennen, ohne zu behaupten, dass sie \u00fcberall identisch implementiert sind.\n\nsysfs unter \/sys ist abzugrenzen: Dort stehen prim\u00e4r Ger\u00e4te-, Treiber- und Hardwareobjekte im Vordergrund, w\u00e4hrend procfs den Prozess- und Kernelzustand sowie sysctl-Parameter sichtbar macht. F\u00fcr cgroup-bezogene Ressourcenanalysen ist die cgroup2-Schnittstelle relevant; PSI-Daten existieren bei passender Konfiguration auch pro cgroup. ([docs.kernel.org](https:\/\/docs.kernel.org\/accounting\/psi.html))\n\nGrenzen und typische Fehler\n\nWichtig ist der Hinweis auf Container und PID-Namespaces: Die sichtbare Prozesswelt kann von der Hostansicht abweichen. procfs-Instanzen k\u00f6nnen mit einem PID-Namespace verbunden sein; daraus folgt, dass \/proc in einem Container nicht automatisch den Gesamtzustand des Hosts zeigt. ([docs.kernel.org](https:\/\/docs.kernel.org\/filesystems\/proc.html?utm_source=openai))\n\nTypische Fehler, die der Artikel klar korrigieren sollte:\n\n\u201eWenig freier Speicher bedeutet RAM-Not.\u201c Korrekt ist: Cache und MemAvailable einbeziehen.\n\n\u201eHoher Load bedeutet CPU ist voll.\u201c Korrekt ist: auch blockierte D-Tasks und I\/O-Symptome pr\u00fcfen.\n\n\u201eiowait misst unmittelbar die Speicherlatenz.\u201c Korrekt ist: Der Wert hat dokumentierte Einschr\u00e4nkungen.\n\n\u201e\/proc-Dateien sind \u00fcberall gleich.\u201c Korrekt ist: Verf\u00fcgbarkeit und Felder k\u00f6nnen von Architektur, Kernelkonfiguration und Version abh\u00e4ngen.\n\n\u201eSchreiben nach \/proc\/sys ist nur tempor\u00e4res Feintuning.\u201c Korrekt ist: Es ver\u00e4ndert aktives Kernelverhalten und kann Seiteneffekte erzeugen.\n\nGeeignete Tabelleninformationen\n\nEine zentrale \u00dcbersichtstabelle sollte diese Spalten enthalten: Pfad, Zweck, typische Frage, Datencharakter, wichtige Einschr\u00e4nkung, sichere Leseabfrage.\n\nAufzunehmen sind mindestens \/proc\/loadavg, \/proc\/stat, \/proc\/meminfo, \/proc\/pressure\/cpu, \/proc\/pressure\/memory, \/proc\/pressure\/io, \/proc\/<PID>\/status, \/proc\/<PID>\/fd, \/proc\/<PID>\/maps, \/proc\/diskstats, \/proc\/sys\/fs\/file-nr und \/proc\/sys\/fs\/file-max.\n\nEine zweite, kleinere Tabelle kann die Diagnosepfade b\u00fcndeln: Symptom, zuerst lesen, danach abgleichen, Fehlinterpretation vermeiden. Ein Chart ist ohne eigene Zeitreihendaten nicht sinnvoll; stattdessen sollte der Artikel erkl\u00e4ren, welche procfs-Werte ein Monitoring-System in Intervallen erfassen m\u00fcsste.","_wh_make_sources":{"S1":{"id":"S1","url":"https:\/\/docs.kernel.org\/filesystems\/proc.html?utm_source=openai","title":"Filsystemet \/proc \u2014 Dokumentationen f\u00f6r Linux-k\u00e4rnan"},"S2":{"id":"S2","url":"https:\/\/docs.kernel.org\/admin-guide\/sysctl\/?utm_source=openai","title":"Dokumentation f\u00f6r \/proc\/sys \u2014 Dokumentationen f\u00f6r Linux-k\u00e4rnan"},"S3":{"id":"S3","url":"https:\/\/man7.org\/linux\/man-pages\/man5\/proc_loadavg.5.html?utm_source=openai","title":"proc_loadavg(5) \u2013 Linux-manualsida"},"S4":{"id":"S4","url":"https:\/\/www.man7.org\/linux\/man-pages\/man5\/proc_stat.5.html","title":"proc_stat(5) \u2013 Linux-manualsida"},"S5":{"id":"S5","url":"https:\/\/www.man7.org\/linux\/man-pages\/man5\/proc_meminfo.5.html","title":"proc_meminfo(5) \u2013 Linux-manualsida"},"S6":{"id":"S6","url":"https:\/\/docs.kernel.org\/accounting\/psi.html","title":"PSI \u2013 Information om tryckstagnation \u2014 Dokumentationen f\u00f6r Linux-k\u00e4rnan"},"S7":{"id":"S7","url":"https:\/\/man7.org\/linux\/man-pages\/man5\/proc_pid_status.5.html?utm_source=openai","title":"proc_pid_status(5) \u2013 Manualsida f\u00f6r Linux"},"S8":{"id":"S8","url":"https:\/\/docs.kernel.org\/filesystems\/proc.html","title":"Filsystemet \/proc \u2014 Dokumentationen f\u00f6r Linux-k\u00e4rnan"},"S9":{"id":"S9","url":"https:\/\/man7.org\/linux\/man-pages\/man5\/proc_diskstats.5.html","title":"proc_diskstats(5) \u2013 Linux-manualsida"},"S10":{"id":"S10","url":"https:\/\/docs.kernel.org\/admin-guide\/sysctl\/fs.html?utm_source=openai","title":"Dokumentation f\u00f6r \/proc\/sys\/fs\/ \u2014 Dokumentationen f\u00f6r Linux-k\u00e4rnan"},"S11":{"id":"S11","url":"https:\/\/docs.kernel.org\/5.17\/admin-guide\/sysctl\/vm.html?utm_source=openai","title":"Dokumentation f\u00f6r \/proc\/sys\/vm\/ \u2014 Dokumentationen f\u00f6r Linux-k\u00e4rnan"},"S12":{"id":"S12","url":"https:\/\/docs.kernel.org\/7.1\/admin-guide\/sysctl\/net.html?utm_source=openai","title":"Dokumentation f\u00f6r \/proc\/sys\/net\/ \u2014 Dokumentationen f\u00f6r Linux-k\u00e4rnan"}},"_wh_make_usage":{"research":{"input_tokens":30521,"output_tokens":3813,"response_id":"resp_073ed8ff6b382178016ab2246876cc87d2b8503366ac1664e4","model":"gpt-5.6-terra","search_calls":3},"plan_bf5ef0afe81bff06d64e1f2192080095":{"input_tokens":6058,"output_tokens":1559,"response_id":"resp_0de368bfe35cea85016ab224a353d087d28d1dd339864c9ac0","model":"gpt-5.6-terra","search_calls":0},"part1_23d7b85a19c3a588cf1ae808e44a02d5":{"input_tokens":8462,"output_tokens":1774,"response_id":"resp_08c3c732be80a763016ab224b8d5a487d28a666b4d2d7de86d","model":"gpt-5.6-terra","search_calls":0},"part2_265b0195f2bbd3fe54c408a58c583078":{"input_tokens":8587,"output_tokens":2518,"response_id":"resp_0d6f6e442e8828d9016ab224d32bc087d294d2ec6d0f53ae99","model":"gpt-5.6-terra","search_calls":0},"part3_10dd185c9e68e880cbfa341be1017e42":{"input_tokens":8569,"output_tokens":2695,"response_id":"resp_0e13b6bb3db886f2016ab224f7f0f887d29c8e52b06d1ccc26","model":"gpt-5.6-terra","search_calls":0},"package_2b344208a5cdfa03fb14b181daaacab7":{"input_tokens":13729,"output_tokens":1220,"response_id":"resp_0eab4b76e280b0c9016ab2252000ec87d29b728d74143c9b58","model":"gpt-5.6-terra","search_calls":0},"review_47b9972c3a85c20d135bb6f77968c58a":{"input_tokens":42548,"output_tokens":1816,"response_id":"resp_06b1fa8a0870acc2016ab2253577d487d2826514bcbe3f7af1","model":"gpt-5.6-sol","search_calls":3},"repair_1e91e3d00fd20b26c9ae106396ec02bf":{"input_tokens":15734,"output_tokens":5609,"response_id":"resp_05eb95a26f473ddc016ab22566298087d2aabd6ac45b7b59bb","model":"gpt-5.6-terra","search_calls":0},"review_1a13bbea094331829e89c25e79bcbca3":{"input_tokens":36697,"output_tokens":1127,"response_id":"resp_0253a1b193c86284016ab225a478bc87d290374c823bac6e4d","model":"gpt-5.6-sol","search_calls":2},"image_hero":{"input_tokens":111,"output_tokens":343,"response_id":"","model":"gpt-image-2.5-flare","search_calls":0},"image_detail1":{"input_tokens":100,"output_tokens":343,"response_id":"","model":"gpt-image-2.5-flare","search_calls":0},"image_detail2":{"input_tokens":117,"output_tokens":343,"response_id":"","model":"gpt-image-2.5-flare","search_calls":0}},"_wh_make_last_error":"","_wh_make_write_intent":{"before":{"content_md5":"b70de2ef86b367d71a1ba876dbc337ce","title":"Linux procfs f\u00f6r administrat\u00f6rer: en \u00f6versikt \u00f6ver viktiga filer","slug":"linux-procfs-foer-administratoerer","excerpt":"procfs ger direkt inblick i den aktiva Linux-k\u00e4rnan. Denna guide f\u00f6rklarar viktiga filer i katalogen \/proc, beskriver r\u00e4knare och \u00f6gonblicksbilder samt visar s\u00e4kra diagnostiska v\u00e4gar f\u00f6r belastning, minne, processer, I\/O och sysctl-parametrar.","status":"draft","featured_media":0},"expected":{"content_md5":"fe641734889fa48edfed948b0aab44cc","title":"Linux procfs f\u00f6r administrat\u00f6rer: en \u00f6versikt \u00f6ver viktiga filer","slug":"linux-procfs-foer-administratoerer","excerpt":"procfs ger direkt inblick i den aktiva Linux-k\u00e4rnan. Denna guide f\u00f6rklarar viktiga filer i katalogen \/proc, beskriver r\u00e4knare och \u00f6gonblicksbilder samt visar s\u00e4kra diagnostiska v\u00e4gar f\u00f6r belastning, minne, processer, I\/O och sysctl-parametrar.","status":"draft","featured_media":21652},"at":"2026-09-22T06:53:51+00:00"},"_wh_make_design_version":"2.1.1","rank_math_title":"Linux procfs: wichtige \/proc-Dateien erkl\u00e4rt","_wh_make_doc":{"title":"Linux procfs f\u00f6r administrat\u00f6rer: en \u00f6versikt \u00f6ver viktiga filer","slug":"linux-procfs-foer-administratoerer","excerpt":"procfs ger direkt inblick i den aktiva Linux-k\u00e4rnan. Denna guide f\u00f6rklarar viktiga filer i katalogen \/proc, beskriver r\u00e4knare och \u00f6gonblicksbilder samt visar s\u00e4kra diagnostiska v\u00e4gar f\u00f6r belastning, minne, processer, I\/O och sysctl-parametrar.","seo":{"title":"Linux procfs: en f\u00f6rklaring av viktiga \/proc-filer","description":"Viktiga procfs-filer f\u00f6r Linux-administrat\u00f6rer: Att korrekt tolka och tolka systembelastning, minne, processer, I\/O och \/proc\/sys.","focus_keyword":"Linux procfs"},"lead":[{"kind":"text","text":"Das ","ref":""},{"kind":"strong","text":"Linux procfs","ref":""},{"kind":"text","text":" zeigt den aktuellen Zustand des Kernels \u00fcber virtuelle Dateien unter \/proc. F\u00fcr die Administration sind vor allem Last, Speicher, Prozesse, Dateideskriptoren und Blockger\u00e4te relevant. Entscheidend ist die Einordnung: Manche Werte sind Momentaufnahmen, andere Z\u00e4hler seit dem Boot oder gleitende Mittelwerte. Lies deshalb nie nur einen Einzelwert, sondern gleiche ihn mit passenden Signalen und dem Kontext von Host, VM oder Container ab. ","ref":""},{"kind":"citation","text":"","ref":"S1"}],"images":{"hero":{"prompt":"Konzeptionelle technische Illustration eines Linux-Servers als transparenter Kern mit mehreren klar getrennten Datenstr\u00f6men zu virtuellen Dateiansichten: CPU-Auslastung, Arbeitsspeicher, Prozesse, Datentr\u00e4ger-I\/O und Netzwerk. Abstrakte Terminal- und Dateisystemelemente, dunkler neutraler Hintergrund, pr\u00e4ziser Editorial-Stil, keine Schrift, keine Zahlen, keine Logos.","alt":"Konzeptionelle Darstellung von Kernelzust\u00e4nden, die \u00fcber procfs sichtbar werden.","caption":"Konzeptionelle Illustration: procfs macht ausgew\u00e4hlte Zust\u00e4nde des laufenden Kernels als Dateiansichten zug\u00e4nglich.","filename_base":"linux-procfs-kernelansicht","section_id":"","after_block":0},"detail1":{"prompt":"Konzeptionelle Infografik zu kombinierter Linux-Diagnose: ein zentraler Lastindikator verzweigt zu CPU-Zeit, verf\u00fcgbarem Speicher, Speicher-Stalls und I\/O-Stalls. Zeige Zusammenh\u00e4nge durch farblich zur\u00fcckhaltende Linien und abstrahierte Systemmodule, ohne Text, Zahlen, Legenden oder Logos.","alt":"Konzeptionelle Verkn\u00fcpfung von Last-, Speicher-, CPU- und I\/O-Signalen.","caption":"Konzeptionelle Illustration: Erst mehrere Kernelindikatoren zusammen erm\u00f6glichen eine belastbare Einordnung von Last.","filename_base":"procfs-last-speicher-signale","section_id":"proc-load-memory","after_block":1},"detail2":{"prompt":"Konzeptionelle technische Darstellung mit zwei getrennten Analyseebenen: links ein einzelner Linux-Prozess mit offenen Dateideskriptoren und virtuellen Speicherbereichen, rechts systemweite Blockger\u00e4te-I\/O. Dazwischen eine abstrahierte Dateisystem-, Cache- und Device-Mapper-Schicht, die keine direkte 1:1-Verbindung suggeriert. Sachlicher dunkler Stil, keine Schrift, Zahlen oder Logos.","alt":"Getrennte Darstellung von Prozessressourcen und systemweiter Ger\u00e4te-I\/O mit abstrahierter Vermittlungsschicht.","caption":"Konzeptionelle Illustration: Prozessdaten und Blockger\u00e4te-I\/O sind getrennte Analyseebenen, die nicht direkt eins zu eins zugeordnet werden k\u00f6nnen.","filename_base":"procfs-prozess-fd-io","section_id":"proc-process-io","after_block":2}},"chart":null,"social":{"facebook":"Linux procfs richtig nutzen: Welche \/proc-Dateien bei Last, Speicherproblemen, Prozessen und I\/O wirklich weiterhelfen \u2013 und warum Einzelwerte oft t\u00e4uschen.","instagram":"procfs ist keine gew\u00f6hnliche Dateiablage: So ordnest du \/proc-Werte f\u00fcr Last, Speicher, Prozesse und I\/O korrekt ein.","tiktok":"Hoher Load ist nicht automatisch CPU-Last. Diese procfs-Dateien helfen bei der Linux-Diagnose.","youtube":"Linux procfs erkl\u00e4rt: Wichtige \/proc-Dateien f\u00fcr Last, RAM, Prozesse und I\/O richtig lesen","threads":"procfs liefert Kernel-Rohdaten, aber selten sofort eine Diagnose. Entscheidend sind Zeitbezug, Namespace und der Abgleich mehrerer Signale.","x":"Linux procfs f\u00fcr Admins: \/proc\/loadavg, meminfo, stat, pressure, Prozesspfade und diskstats richtig einordnen. Warum hohe Load, wenig MemFree oder iowait allein keine Diagnose sind."},"avatar_script":"procfs ist die direkte Dateiansicht auf viele Zust\u00e4nde des laufenden Linux-Kernels. F\u00fcr die t\u00e4gliche Diagnose ist nicht entscheidend, m\u00f6glichst viele Dateien zu kennen, sondern passende Signale zusammenzuf\u00fchren. Ein hoher Load Average kann CPU-Konkurrenz bedeuten, aber ebenso auf wartende I\/O-Tasks hinweisen. Wenig MemFree ist normal, wenn der Kernel RAM als Cache verwendet; MemAvailable und Speicher-PSI liefern den wichtigeren Kontext. Prozessverzeichnisse helfen bei einzelnen Diensten, k\u00f6nnen aber durch Rechte, hidepid oder PID-Namespaces eingeschr\u00e4nkt sein. Unter \/proc\/sys beginnt dagegen Konfiguration: Lesen ist Diagnostik, Schreiben ver\u00e4ndert aktives Kernelverhalten. F\u00fcr Trends und Alarmierung erg\u00e4nzen Monitoring-Werkzeuge die punktuelle procfs-Abfrage.","version_note":"Recherchestand: 22. September 2026. Die sichtbaren procfs-Pfade und Felder k\u00f6nnen je nach Kernelversion, Konfiguration, Hardware, Namespaces und Berechtigungen abweichen. Die f\u00fcr drop_caches und Netzwerkparameter herangezogenen Kernel-Dokumentationen sind versionsgebunden; pr\u00fcfe bei abweichender Kernelversion die Dokumentation des eingesetzten Kernels.","sections":[{"id":"proc-basics","heading":"procfs verstehen: virtuelle Kernelansicht statt Datenspeicher","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Das ","ref":""},{"kind":"strong","text":"procfs","ref":""},{"kind":"text","text":" ist ein virtuelles Dateisystem: Die Eintr\u00e4ge unter \/proc bilden Datenstrukturen und Zust\u00e4nde des laufenden Linux-Kernels ab. Sie liegen nicht als dauerhaft gespeicherte Inhalte auf einem Datentr\u00e4ger. Beim Lesen erzeugt der Kernel die jeweilige Ansicht aus seinem aktuellen Zustand; nach einem Neustart beginnen etwa viele Z\u00e4hler erneut. Deshalb ist \/proc eine Schnittstelle f\u00fcr Beobachtung und teilweise Steuerung, kein Ort f\u00fcr eigene Dateien oder persistente Konfigurationen. ","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"F\u00fcr die Administration sind drei Bereiche zu unterscheiden. Globale Statusdateien wie \/proc\/meminfo, \/proc\/stat oder \/proc\/loadavg liefern kernelweite Kennzahlen. Verzeichnisse mit numerischen Namen, etwa \/proc\/1234, liefern Details zu einem einzelnen Prozess. Unter \/proc\/sys liegen dagegen Kernelparameter, die abh\u00e4ngig von Berechtigung und Parameter sowohl lesbar als auch schreibbar sein k\u00f6nnen. Die \u00e4hnliche Dateiform darf nicht dar\u00fcber hinwegt\u00e4uschen, dass Statusabfrage und Konfigurations\u00e4nderung grundverschiedene Folgen haben. ","ref":""},{"kind":"citation","text":"","ref":"S8"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Welche Pfade und Felder vorhanden sind, ist nicht auf jedem Linux-System identisch. Kernelversion und -konfiguration, Architektur, erkannte Hardware sowie geladene Module beeinflussen die sichtbaren Eintr\u00e4ge. Auch Namespaces ver\u00e4ndern einzelne Ansichten. Ein procfs, das mit einem PID-Namespace verbunden ist, begrenzt insbesondere die Prozess- und PID-Sicht; daraus folgt jedoch nicht, dass globale Dateien automatisch container- oder cgroup-spezifische Werte zeigen. Skripte sollten Dateien und Felder pr\u00fcfen, bevor sie deren Inhalt auswerten, statt eine vollst\u00e4ndige, \u00fcberall gleiche procfs-Struktur vorauszusetzen. ","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Davon abzugrenzen ist sysfs unter \/sys: Es stellt vor allem Ger\u00e4te, Treiber und Hardwareobjekte dar. F\u00fcr Ressourcenverteilung und Grenzen von Gruppen ist au\u00dferdem cgroup2 relevant. procfs bleibt jedoch die unmittelbare Quelle f\u00fcr viele Kernel- und Prozesszust\u00e4nde, die bei einer ersten Diagnose ben\u00f6tigt werden. ","ref":""},{"kind":"citation","text":"","ref":"S8"}]}]},{"id":"proc-time-context","heading":"Z\u00e4hler, Momentaufnahmen und Sichtbarkeit richtig einordnen","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Der Wert allein erkl\u00e4rt bei procfs selten ein Problem. Zuerst ist sein Zeitbezug zu kl\u00e4ren: Einige Angaben sind ","ref":""},{"kind":"strong","text":"kumulative Z\u00e4hler","ref":""},{"kind":"text","text":" seit Systemstart, andere beschreiben einen aktuellen Zustand, wieder andere bilden gleitende Zeitfenster ab. Ein hoher Z\u00e4hlerstand zeigt zun\u00e4chst nur, dass sich ein Ereignis seit dem Boot summiert hat. Eine Rate entsteht erst aus zwei Messpunkten: Differenz der Werte geteilt durch das dazwischenliegende Zeitintervall. Das gilt beispielsweise f\u00fcr viele CPU-, Interrupt- und Datentr\u00e4gerz\u00e4hler. ","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Die Datei \/proc\/uptime liefert die vergangene Betriebsdauer und die aggregierte Idle-Zeit. Sie hilft, Z\u00e4hler seit dem Start zeitlich einzuordnen, ersetzt aber keine Messreihe. Eine einmalige Abfrage ist eine Momentaufnahme; f\u00fcr belastbare Aussagen \u00fcber Trends, Spitzen oder wiederkehrende Last braucht es wiederholte Abfragen mit Zeitstempel. Dabei k\u00f6nnen sich Werte bereits w\u00e4hrend des Lesens ver\u00e4ndern, weil der Kernel weiterarbeitet. ","ref":""},{"kind":"citation","text":"","ref":"S8"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Auch die sichtbaren Daten haben Grenzen. \/proc\/self verweist stets auf den Prozess, der den Pfad gerade aufl\u00f6st. Damit ist er f\u00fcr Skripte und interaktive Pr\u00fcfungen praktisch, ohne eine PID anzunehmen. Der Zugriff auf fremde Prozessverzeichnisse kann jedoch durch Dateirechte, Linux-Capabilities und die procfs-Mount-Option ","ref":""},{"kind":"code","text":"hidepid","ref":""},{"kind":"text","text":" eingeschr\u00e4nkt sein. Fehlende Einblicke sind in diesem Fall kein defektes procfs, sondern ein Schutz gegen das Auslesen sensibler Prozessinformationen. ","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Besondere Vorsicht gilt in Containern. Ein an einen PID-Namespace gebundenes procfs zeigt bei prozessbezogenen Pfaden nur die Prozesse dieser Namespace-Sicht. Globale Kerneldateien wie \/proc\/meminfo, \/proc\/stat oder \/proc\/diskstats k\u00f6nnen dagegen weiterhin Werte des Hosts widerspiegeln und sind nicht automatisch auf das Containerlimit begrenzt. Vor jeder Diagnose ist daher zu kl\u00e4ren, ob die Frage Prozesse, globale Kernelwerte oder die tats\u00e4chlich zugewiesenen Ressourcen betrifft; Limits und Nutzung eines Containers geh\u00f6ren zus\u00e4tzlich in die cgroup2-Analyse. ","ref":""},{"kind":"citation","text":"","ref":"S8"}]}]},{"id":"proc-sysctl-boundary","heading":"Lesen, konfigurieren und absichern unter \/proc\/sys","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Der Bereich ","ref":""},{"kind":"strong","text":"\/proc\/sys","ref":""},{"kind":"text","text":" ist die Dateisystemansicht der sysctl-Schnittstelle. Das Lesen eines Werts dient der Diagnostik. Ein Schreibzugriff ver\u00e4ndert dagegen unmittelbar das Verhalten des laufenden Kernels und kann Dienste, Ressourcenverbrauch oder Sicherheitsmerkmale beeinflussen. Dass eine \u00c4nderung ohne Neustart wirkt, macht sie nicht risikolos und auch nicht automatisch dauerhaft: Persistenz h\u00e4ngt von der gew\u00e4hlten Systemkonfiguration ab. ","ref":""},{"kind":"citation","text":"","ref":"S2"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Die Verzeichnisstruktur erleichtert die erste Einordnung. Unter \/proc\/sys\/fs stehen unter anderem globale Dateisystem- und File-Handle-Parameter. \/proc\/sys\/vm b\u00fcndelt Einstellungen der Speicherverwaltung, w\u00e4hrend \/proc\/sys\/net netzwerkbezogene Parameter enth\u00e4lt. Welche Unterverzeichnisse und Schl\u00fcssel verf\u00fcgbar sind, h\u00e4ngt wiederum von Kernelkonfiguration und Funktionen des Systems ab. Ein vorhandener Parameter ist daher kein allgemeines Tuning-Rezept; seine Dokumentation und der konkrete Workload sind ma\u00dfgeblich. ","ref":""},{"kind":"citation","text":"","ref":"S10"},{"kind":"citation","text":"","ref":"S11"},{"kind":"citation","text":"","ref":"S12"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Ein Gegenbeispiel f\u00fcr scheinbare Optimierung ist ","ref":""},{"kind":"code","text":"drop_caches","ref":""},{"kind":"text","text":" unter \/proc\/sys\/vm. Die Kernel-Dokumentation ordnet die Funktion Debugging und Tests zu und r\u00e4t von einem Einsatz au\u00dferhalb solcher Zwecke ab, weil das Leeren wiederverwendbarer Caches Leistung kosten kann. Wenig freier Speicher ist f\u00fcr sich genommen kein Grund, Caches zu verwerfen: Der Kernel nutzt RAM bewusst auch f\u00fcr Dateicache. ","ref":""},{"kind":"citation","text":"","ref":"S11"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Vor jeder \u00c4nderung sollte eine nachvollziehbare Ursache vorliegen. Sichere zuerst den Ausgangswert, dokumentiere Zweck und erwartete Nebenwirkungen, \u00e4ndere kontrolliert und beobachte anschlie\u00dfend passende Messwerte sowie Dienstverhalten. Plane den R\u00fcckweg vorab und \u00fcbernimm einen Wert erst nach fachlicher Pr\u00fcfung in eine dauerhafte Konfiguration. Weiterf\u00fchrende Grundlagen zu Parametern und ihrer kontrollierten Verwaltung behandelt der Beitrag ","ref":""},{"kind":"internal_link","text":"Kernel-Tuning im Linux-Hosting: Sysctl-Parameter im \u00dcberblick","ref":"I2"},{"kind":"text","text":".","ref":""}]}]},{"id":"proc-overview-table","heading":"Die wichtigsten procfs-Dateien nach Administrationsaufgabe","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Die Auswahl einer procfs-Datei sollte von der Administrationsfrage ausgehen, nicht von einer m\u00f6glichst vollst\u00e4ndigen Verzeichnisliste. Globale Dateien liefern oft kernelweite Werte, Prozesspfade beschreiben einen einzelnen sichtbaren Prozess, und Eintr\u00e4ge unter \/proc\/sys\/fs liefern Konfiguration und systemweite Grenzen. Einige Werte sind aktuelle Zust\u00e4nde, andere seit dem Boot kumulierte Z\u00e4hler oder gleitende Durchschnitte. Diese Unterscheidung entscheidet dar\u00fcber, ob ein einzelnes Auslesen gen\u00fcgt oder zwei Messpunkte n\u00f6tig sind.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"table","caption":"Wichtige procfs-Dateien f\u00fcr typische Verwaltungsfragen","headers":["Pfad","Zweck","Typische Frage","Datencharakter","Wichtige Einschr\u00e4nkung","Sichere Leseabfrage"],"rows":[["\/proc\/loadavg","Systemlast","Sind Aufgaben wartend?","1-, 5-, 15-Minuten-Mittel","Keine reine CPU-Auslastung","cat \/proc\/loadavg"],["\/proc\/stat","CPU- und Kernelz\u00e4hler","Wie verteilen sich CPU-Zeiten?","Seit Boot kumuliert","iowait nicht isoliert bewerten","grep -E '^(cpu|intr|ctxt|processes)' \/proc\/stat"],["\/proc\/meminfo","Speicher\u00fcbersicht","Ist Speicher verf\u00fcgbar?","Aktuelle Speicherwerte","MemFree allein gen\u00fcgt nicht; im Container nicht zwingend cgroup-spezifisch","cat \/proc\/meminfo"],["\/proc\/pressure\/cpu","CPU-Stalls","Warten Tasks auf CPU?","Zeitfenster und Z\u00e4hler","Systemweites full ist nicht interpretierbar und wird als null ausgegeben","cat \/proc\/pressure\/cpu"],["\/proc\/pressure\/memory","Speicherdruck","Blockiert Speicherknappheit Tasks?","Zeitfenster und Z\u00e4hler","PSI muss verf\u00fcgbar sein","cat \/proc\/pressure\/memory"],["\/proc\/pressure\/io","I\/O-Stalls","Warten Tasks auf I\/O?","Zeitfenster und Z\u00e4hler","Kein Ersatz f\u00fcr Ger\u00e4teanalyse","cat \/proc\/pressure\/io"],["\/proc\/<PID>\/status","Prozessstatus","Wie gro\u00df und aktiv ist ein Prozess?","Aktuelle Prozessdaten","Rechte und PID-Namespace k\u00f6nnen Zugriff begrenzen","cat \/proc\/$$\/status"],["\/proc\/<PID>\/fd","Offene Deskriptoren","Welche Objekte h\u00e4lt ein Prozess?","Aktuelle symbolische Links","Viele FDs sind nicht automatisch ein Leck","ls -l \/proc\/$$\/fd"],["\/proc\/<PID>\/maps","Virtuelle Mappings","Welche Bereiche hat ein Prozess eingebunden?","Aktuelle Mappingliste","F\u00fcr die Erstanalyse oft zu umfangreich","cat \/proc\/$$\/maps"],["\/proc\/diskstats","Blockger\u00e4te-I\/O","Welche Ger\u00e4te arbeiten?","Seit Boot kumuliert","Raten erfordern zwei Stichproben; Werte k\u00f6nnen hostweit sein","cat \/proc\/diskstats"],["\/proc\/sys\/fs\/file-nr","File-Handle-Nutzung","Wie viele Handles nutzt das System?","Aktueller Z\u00e4hler und Grenze","Mittleres Feld ist auf modernen Linux-Systemen null","cat \/proc\/sys\/fs\/file-nr"],["\/proc\/sys\/fs\/file-max","File-Handle-Grenze","Welche globale Obergrenze gilt?","Aktiver Parameter","Nicht mit Prozesslimit verwechseln","cat \/proc\/sys\/fs\/file-max"]],"source_ids":["S1","S3","S4","S5","S6","S7","S9","S10"]},{"type":"paragraph","runs":[{"kind":"text","text":"Die Tabelle ist eine Einstiegshilfe, keine Diagnosekette. Ein auff\u00e4lliger Wert verlangt stets ein unabh\u00e4ngiges Gegenzeichen: Load mit CPU- und I\/O-Daten, Speicherwerte mit Pressure Stall Information und Prozessgr\u00f6\u00dfen mit dem Verhalten des Dienstes. Besonders \/proc\/diskstats und \/proc\/stat sind ","ref":""},{"kind":"strong","text":"kumulative Z\u00e4hler","ref":""},{"kind":"text","text":"; ihre Differenz \u00fcber ein bekanntes Intervall ist f\u00fcr Raten aussagekr\u00e4ftiger als der absolute Stand. In Containern ist zus\u00e4tzlich zu pr\u00fcfen, ob eine Datei globale Kernelwerte oder eine pro cgroup verf\u00fcgbare Sicht liefert. Die folgenden Abschnitte ordnen die Signale deshalb nach Last, Speicher, Prozessen und I\/O ein.","ref":""}]}]},{"id":"proc-load-memory","heading":"Last, CPU und Speicher: Signale kombiniert bewerten","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Bei einer langsamen Anwendung ist \/proc\/loadavg ein sinnvoller Start, aber kein Urteil \u00fcber die CPU. Die drei Werte bilden die durchschnittliche Last der letzten 1, 5 und 15 Minuten ab. In die Last gehen nicht nur laufbereite Einheiten im Zustand R ein, sondern auch Tasks im ununterbrechbaren Wartezustand D, etwa bei I\/O. Das vierte Feld zeigt die aktuell ausf\u00fchrbaren gegen\u00fcber allen existierenden Scheduling-Einheiten. Hoher ","ref":""},{"kind":"strong","text":"Load Average","ref":""},{"kind":"text","text":" kann daher auf CPU-Konkurrenz, blockierte I\/O-Zugriffe oder beides hinweisen.","ref":""},{"kind":"citation","text":"","ref":"S3"}]},{"type":"code","language":"sh","code":"cat \/proc\/loadavg\ngrep -E '^(cpu|intr|ctxt|processes)' \/proc\/stat\ncat \/proc\/meminfo\ncat \/proc\/pressure\/memory","source_ids":["S3","S4","S5","S6"]},{"type":"paragraph","runs":[{"kind":"text","text":"Die CPU-Zeilen aus \/proc\/stat enthalten Zeitanteile seit dem Systemstart in USER_HZ. Um daraus Auslastungsanteile zu ermitteln, m\u00fcssen zwei Abfragen verglichen werden; ein einzelner Stand zeigt nur angesammelte Zeit. Der Wert iowait ist dabei kein unmittelbares Latenzma\u00df f\u00fcr Storage: Seine Berechnung hat dokumentierte Grenzen und kann unter bestimmten Umst\u00e4nden sogar sinken. F\u00fcr eine I\/O-Ursache sind daher zus\u00e4tzlich Ger\u00e4tewerte und I\/O-PSI sinnvoll.","ref":""},{"kind":"citation","text":"","ref":"S4"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Auch ein niedriger Wert bei MemFree beweist noch keine RAM-Not. Linux nutzt unbenutzten Arbeitsspeicher gezielt f\u00fcr Cache. MemAvailable sch\u00e4tzt, wie viel Speicher neue Anwendungen voraussichtlich ohne Swapping erhalten k\u00f6nnen, und ist f\u00fcr die erste Einordnung meist hilfreicher. Erst wenn MemAvailable knapp wird und gleichzeitig Speicher-Stalls auftreten, verdichtet sich der Hinweis auf ","ref":""},{"kind":"strong","text":"Speicherdruck","ref":""},{"kind":"text","text":". In einem Container k\u00f6nnen diese globalen Speicherwerte allerdings vom Host stammen; f\u00fcr zugesicherte oder begrenzte Ressourcen ist die cgroup2-Sicht zus\u00e4tzlich ma\u00dfgeblich.","ref":""},{"kind":"citation","text":"","ref":"S5"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Die Dateien unter \/proc\/pressure erg\u00e4nzen diese Sicht. Bei memory und io bedeutet some, dass wenigstens einige Tasks w\u00e4hrend eines Anteils des Zeitfensters nicht weiterkamen; full steht dort f\u00fcr einen Zustand, in dem alle nicht-idlen Tasks gleichzeitig blockiert waren. Die Angaben avg10, avg60 und avg300 beziehen sich auf 10, 60 und 300 Sekunden, total ist ein kumulierter Stall-Z\u00e4hler. F\u00fcr CPU ist systemweites full semantisch nicht definiert und wird seit Linux 5.13 aus Kompatibilit\u00e4tsgr\u00fcnden als null ausgegeben; als Diagnosewert ist es auf Systemebene daher nicht zu interpretieren. CPU-, memory- und io-PSI beantworten unterschiedliche Fragen und sollten nicht gegeneinander ausgetauscht werden.","ref":""},{"kind":"citation","text":"","ref":"S6"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Reagiert ein Dienst bei geringem MemFree langsam, pr\u00fcfst du zun\u00e4chst MemAvailable und \/proc\/pressure\/memory. Sind beide unauff\u00e4llig, spricht das gegen akuten systemweiten Speicherdruck. Anschlie\u00dfend kann \/proc\/<PID>\/status zeigen, ob der betroffene Prozess etwa eine hohe VmRSS-N\u00e4herung, viele Threads oder einen auff\u00e4lligen State aufweist. Diese Kombination trennt eine Cache-lastige, aber normale Speichernutzung von einem Problem, das weitere Prozessanalyse verlangt.","ref":""},{"kind":"citation","text":"","ref":"S7"}]}]},{"id":"proc-process-io","heading":"Prozesse, Dateideskriptoren und Datentr\u00e4ger-I\/O untersuchen","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"F\u00fcr eine sichere \u00dcbung mit einem garantiert vorhandenen Prozess steht $$ f\u00fcr die PID der aktuellen Shell. Die status-Datei ist menschenlesbarer als die feldorientierte stat-Datei. Name identifiziert den Prozess, State seinen Zustand, PPid den Elternprozess und Threads die Thread-Anzahl. VmRSS ist eine schnelle N\u00e4herung f\u00fcr residenten Speicher, deren RSS-Buchf\u00fchrung skalierbar und asynchron erfolgt und deshalb ungenau sein kann; VmSize beschreibt dagegen virtuellen Adressraum. FDSize beschreibt die Gr\u00f6\u00dfe der Deskriptortabelle, nicht zwingend die Zahl aktuell offener Eintr\u00e4ge. Freiwillige und unfreiwillige Kontextwechsel k\u00f6nnen bei der Einordnung von Scheduling-Verhalten helfen, sind allein aber kein Fehlerbeweis.","ref":""},{"kind":"citation","text":"","ref":"S7"},{"kind":"citation","text":"","ref":"S1"}]},{"type":"code","language":"sh","code":"cat \/proc\/$$\/status\nls -l \/proc\/$$\/fd","source_ids":["S7","S1"]},{"type":"paragraph","runs":[{"kind":"text","text":"Das fd-Verzeichnis enth\u00e4lt symbolische Links auf offene Dateien, Pipes, Ger\u00e4te oder Sockets. Es hilft etwa, einen Prozess zu finden, der eine gel\u00f6schte Logdatei weiterhin ge\u00f6ffnet h\u00e4lt. Eine gro\u00dfe Zahl offener Dateideskriptoren ist jedoch bei Proxys, Datenbanken oder ereignisorientierten Servern durchaus erwartbar. F\u00fcr gefilterte Ansichten und die Zuordnung \u00fcber Prozesse hinweg ist ","ref":""},{"kind":"internal_link","text":"lsof zur Analyse offener Dateien einsetzen","ref":"I3"},{"kind":"text","text":" eine passende Erg\u00e4nzung. Kommandozeilen aus cmdline k\u00f6nnen vertrauliche Argumente preisgeben; environ ist wegen m\u00f6glicher Zugangsdaten oder Tokens noch sensibler und keine Routineabfrage.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"maps listet virtuelle Speicherbereiche mit Berechtigungen, Offset, Ger\u00e4t, Inode und gegebenenfalls Pfad. smaps erg\u00e4nzt je Mapping detaillierte Speicherwerte und liefert gegen\u00fcber RSS-Angaben eine genauere, aber aufwendigere Momentaufnahme. Beide Dateien sind f\u00fcr vertiefte Speicheranalysen gedacht: Ihre Ausgabe kann gro\u00df sein, und die Interpretation einzelner Mappings erfordert Kontext. F\u00fcr den ersten Blick sind status und die systemweiten Speicher- und PSI-Dateien meist effizienter.","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Bei hohem Load und geringer CPU-Auslastung erweitert \/proc\/diskstats die Diagnose um die Ger\u00e4teebene. Die Datei f\u00fchrt pro Blockger\u00e4t kumulative I\/O-Statistiken. Um Aktivit\u00e4t als Rate zu bewerten, m\u00fcssen zwei Zeitpunkte verglichen werden. Dabei sind physische Laufwerke, Partitionen und virtuelle oder Device-Mapper-Ger\u00e4te sauber zu unterscheiden; Z\u00e4hler verschiedener Ebenen d\u00fcrfen nicht blind addiert werden. Ein offener Dateideskriptor eines Prozesses l\u00e4sst sich dabei nicht unmittelbar einem diskstats-Ger\u00e4tez\u00e4hler zuordnen: Dateisystem, Cache und Mapping-Schichten liegen dazwischen. Zusammen mit \/proc\/pressure\/io l\u00e4sst sich dennoch pr\u00fcfen, ob beobachtbare I\/O-Stalls und Ger\u00e4teaktivit\u00e4t zeitlich zusammenfallen.","ref":""},{"kind":"citation","text":"","ref":"S9"}]}]},{"id":"proc-monitoring","heading":"procfs im Betrieb: Abfragen, Monitoring und Datenschutz","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"F\u00fcr wiederholbare Betriebsdiagnosen behandelst du procfs-Abfragen als Messpunkte: Du notierst Zeitstempel, Systemkontext und die konkrete Abfrage. Viele Werte sind seit dem Start kumulierte Z\u00e4hler; erst die Differenz zweier Werte geteilt durch das Zeitintervall ergibt eine Rate. Das gilt etwa f\u00fcr Z\u00e4hler aus ","ref":""},{"kind":"code","text":"\/proc\/diskstats","ref":""},{"kind":"text","text":". Eine Einzelabfrage kann daher Aktivit\u00e4t belegen, aber weder Durchsatz noch eine dauerhafte Verschlechterung zuverl\u00e4ssig quantifizieren. ","ref":""},{"kind":"citation","text":"","ref":"S9"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Ein Monitoring-System sollte in festen Intervallen unter anderem Speicherwerte aus ","ref":""},{"kind":"code","text":"\/proc\/meminfo","ref":""},{"kind":"text","text":", Ger\u00e4tewerte aus ","ref":""},{"kind":"code","text":"\/proc\/diskstats","ref":""},{"kind":"text","text":", Prozess- und Systemzust\u00e4nde sowie bei verf\u00fcgbarer Kernelunterst\u00fctzung Drucksignale erfassen. Es muss Rohwerte in passende Einheiten umrechnen, bei Z\u00e4hlern Differenzen bilden und Historien speichern. In Containern darf es globale procfs-Werte nicht mit den Ressourcenlimits der Workload gleichsetzen: Prozesspfade k\u00f6nnen auf den PID-Namespace begrenzt sein, w\u00e4hrend Speicher- oder Ger\u00e4tewerte teilweise den Host abbilden. F\u00fcr Limits und Auslastung einer Gruppe sind erg\u00e4nzende cgroup2-Metriken n\u00f6tig. Erst zeitliche Verl\u00e4ufe erlauben belastbare Schwellenwerte: Ein hoher Wert kann normal sein, wenn er zum erwarteten Lastfenster passt; ein pl\u00f6tzlicher Anstieg gegen\u00fcber der eigenen Baseline ist oft relevanter. Die verf\u00fcgbaren procfs-Eintr\u00e4ge h\u00e4ngen vom laufenden Kernel und seiner Konfiguration ab. ","ref":""},{"kind":"citation","text":"","ref":"S1"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Direkte Dateien und Werkzeuge erg\u00e4nzen sich. ","ref":""},{"kind":"code","text":"ps","ref":""},{"kind":"text","text":", ","ref":""},{"kind":"code","text":"top","ref":""},{"kind":"text","text":" oder ","ref":""},{"kind":"code","text":"htop","ref":""},{"kind":"text","text":" eignen sich f\u00fcr die interaktive Prozesssicht; ","ref":""},{"kind":"code","text":"free","ref":""},{"kind":"text","text":", ","ref":""},{"kind":"code","text":"vmstat","ref":""},{"kind":"text","text":", ","ref":""},{"kind":"code","text":"iostat","ref":""},{"kind":"text","text":", ","ref":""},{"kind":"code","text":"pidstat","ref":""},{"kind":"text","text":", ","ref":""},{"kind":"code","text":"ss","ref":""},{"kind":"text","text":" und ","ref":""},{"kind":"code","text":"sar","ref":""},{"kind":"text","text":" bereiten je nach Installation Daten f\u00fcr bestimmte Fragen auf. procfs bleibt sinnvoll, wenn du die Kernelquelle direkt pr\u00fcfen oder ein kleines, nachvollziehbares Skript bauen m\u00f6chtest. F\u00fcr Alarmierung und Kapazit\u00e4tsplanung sind Zeitreihendaten meist die passendere Ebene.","ref":""}]},{"type":"callout","variant":"warning","title":"Prozessdaten nicht unbedacht weitergeben","runs":[{"kind":"text","text":"Kommandozeilen k\u00f6nnen Pfade, Mandantenkennungen oder versehentlich \u00fcbergebene Zugangsdaten enthalten. Umgebungsvariablen eines Prozesses sind h\u00e4ufig noch sensibler. Erfasse, speichere und teile diese Daten nur, wenn sie f\u00fcr die Diagnose erforderlich sind; beschr\u00e4nke Zugriffe auf berechtigte Personen.","ref":""}]},{"type":"paragraph","runs":[{"kind":"text","text":"Auch bei rein lesenden Abfragen gelten Sichtbarkeitsgrenzen. Zugriffsrechte, Mount-Optionen und PID-Namespaces k\u00f6nnen Prozessdaten ausblenden oder auf eine Containeransicht begrenzen. Umgekehrt bedeutet eine eigene \/proc-Einh\u00e4ngung nicht, dass jede globale Kerneldatei nur Daten des Containers enth\u00e4lt. Ein fehlender Prozesseintrag oder ein unerwartet hoher globaler Wert ist deshalb zun\u00e4chst ein Hinweis darauf, Ausf\u00fchrungsumgebung, Mount-Optionen und cgroup-Kontext zu kl\u00e4ren. ","ref":""},{"kind":"citation","text":"","ref":"S1"}]}]},{"id":"proc-troubleshooting","heading":"Diagnosepfade f\u00fcr langsame Dienste und Ressourcenengp\u00e4sse","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Troubleshooting beginnt mit einem Symptom, nicht mit einem vermeintlich schuldigen Einzelwert. Pr\u00fcfe danach mindestens ein unabh\u00e4ngiges Signal und halte fest, ob die Beobachtung den Host, eine virtuelle Maschine oder einen Container betrifft. So vermeidest du beispielsweise, einen hohen Load vorschnell als CPU-Problem oder eine gro\u00dfe Zahl offener Deskriptoren vorschnell als Leck zu bewerten. Die folgenden Pfade sind lesende Erstdiagnosen und ersetzen keine anwendungsbezogenen Logs.","ref":""}]},{"type":"table","caption":"Kompakte Diagnosepfade mit procfs","headers":["Symptom","Zuerst lesen","Danach abgleichen","Fehlinterpretation vermeiden"],"rows":[["Hoher Load","\/proc\/loadavg","\/proc\/stat, \/proc\/pressure\/io, \/proc\/diskstats","Load umfasst laufbereite und ununterbrechbar wartende Tasks, nicht nur CPU-Arbeit."],["Vermuteter Speicherdruck","\/proc\/meminfo","\/proc\/pressure\/memory, \/proc\/<PID>\/status","Niedriges MemFree allein beweist keinen RAM-Mangel; MemAvailable und Stalls z\u00e4hlen mit."],["Auff\u00e4llige I\/O-Wartezeit","\/proc\/stat","\/proc\/pressure\/io, \/proc\/diskstats in zwei Messpunkten","iowait ist keine direkte Latenzmessung und hat dokumentierte Einschr\u00e4nkungen."],["Viele offene Dateien","\/proc\/sys\/fs\/file-nr und \/proc\/sys\/fs\/file-max","\/proc\/<PID>\/fd, Dienstverhalten","Viele Deskriptoren k\u00f6nnen f\u00fcr einen Server normal sein; Grenzen und Wachstum sind wichtiger."],["Dienst startet nicht","\/proc\/<PID>\/status, sofern ein Prozess entsteht","\/proc\/<PID>\/fd, Dienstjournal, belegte Ressourcen","Ein nicht sichtbarer Prozess kann beendet sein oder au\u00dferhalb des sichtbaren PID-Namespace laufen."]],"source_ids":["S1","S3","S4","S5","S6","S9","S10"]},{"type":"paragraph","runs":[{"kind":"text","text":"Bei hoher Load Average pr\u00fcfst du zun\u00e4chst, ob ausf\u00fchrbare oder wartende Aufgaben die Zahl treiben. Die Load-Angaben bilden Durchschnittswerte \u00fcber ein, f\u00fcnf und 15 Minuten ab und ber\u00fccksichtigen sowohl R- als auch D-Zust\u00e4nde. Vergleiche deshalb CPU-Zeitfelder nur mit Vorsicht mit I\/O-Druck und Ger\u00e4teaktivit\u00e4t. Insbesondere ","ref":""},{"kind":"strong","text":"iowait","ref":""},{"kind":"text","text":" darf nicht isoliert als Speicherlatenz gelesen werden. ","ref":""},{"kind":"citation","text":"","ref":"S3"},{"kind":"citation","text":"","ref":"S4"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Bei einer langsamen Anwendung und kleinem MemFree ist ","ref":""},{"kind":"strong","text":"MemAvailable","ref":""},{"kind":"text","text":" der bessere erste Kontextwert. Erg\u00e4nze Speicher-PSI und den Status des betroffenen Prozesses, etwa dessen VmRSS, Threadzahl und Zustand. PSI unterscheidet bei Speicher und I\/O zwischen ","ref":""},{"kind":"code","text":"some","ref":""},{"kind":"text","text":" f\u00fcr teilweise blockierte Tasks und ","ref":""},{"kind":"code","text":"full","ref":""},{"kind":"text","text":" f\u00fcr vollst\u00e4ndige Blockierung nicht-idler Tasks. Fehlen PSI-Dateien, kann dies an Kernelkonfiguration oder Umgebung liegen; es widerlegt keinen Engpass. ","ref":""},{"kind":"citation","text":"","ref":"S5"},{"kind":"citation","text":"","ref":"S6"}]},{"type":"paragraph","runs":[{"kind":"text","text":"F\u00fcr Datei- und Prozessdiagnosen k\u00f6nnen Rechte und ","ref":""},{"kind":"strong","text":"PID-Namespaces","ref":""},{"kind":"text","text":" die Aussagekraft einschr\u00e4nken. In Containern beschreibt \/proc h\u00e4ufig nur die zugeordnete Prozesswelt. Bei verweigertem Zugriff oder unvollst\u00e4ndigen Verzeichnissen pr\u00fcfst du daher Nutzerrechte, procfs-Mount-Optionen und den Namespace-Kontext, bevor du aus der Abwesenheit von Daten eine technische Schlussfolgerung ziehst. ","ref":""},{"kind":"citation","text":"","ref":"S1"}]}]},{"id":"proc-decisions","heading":"Typische Fehlannahmen korrigieren und passende Werkzeuge w\u00e4hlen","blocks":[{"type":"paragraph","runs":[{"kind":"text","text":"Vier Kurzschl\u00fcsse f\u00fchren in der Linux-Administration h\u00e4ufig zu falschen Ma\u00dfnahmen. Wenig ","ref":""},{"kind":"code","text":"MemFree","ref":""},{"kind":"text","text":" bedeutet nicht automatisch RAM-Not, weil der Kernel Speicher unter anderem als Cache nutzt; f\u00fcr neue Anwendungen ist MemAvailable die aussagekr\u00e4ftigere Sch\u00e4tzung. Hoher Load beweist keine CPU-S\u00e4ttigung, da auch ununterbrechbar wartende Aufgaben einflie\u00dfen. Ein hoher iowait-Anteil misst keine unmittelbare Latenz eines Datentr\u00e4gers. Und procfs ist nicht \u00fcberall identisch: Kernelversion, Konfiguration, Hardware, Module und Namespaces beeinflussen Dateien und Felder. ","ref":""},{"kind":"citation","text":"","ref":"S1"},{"kind":"citation","text":"","ref":"S4"}]},{"type":"paragraph","runs":[{"kind":"text","text":"W\u00e4hle die Methode nach der Frage. F\u00fcr eine punktuelle Ursachenanalyse liefert ","ref":""},{"kind":"strong","text":"procfs","ref":""},{"kind":"text","text":" unmittelbare Rohdaten des laufenden Kernels. F\u00fcr eine schnelle, menschenlesbare \u00dcbersicht sind spezialisierte Kommandozeilenwerkzeuge meist effizienter. Wenn Trends, Alarmierung oder Kapazit\u00e4tsentscheidungen z\u00e4hlen, ben\u00f6tigst du ein Monitoring, das Messpunkte zeitlich einordnet, Z\u00e4hlerdifferenzen berechnet und historische Vergleichswerte vorh\u00e4lt. Bei Ressourcenlimits einzelner Dienste oder Container erg\u00e4nzt eine Analyse auf cgroup-Ebene die globale Hostansicht; PSI kann bei passender Konfiguration auch pro cgroup verf\u00fcgbar sein. ","ref":""},{"kind":"citation","text":"","ref":"S6"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Besondere Zur\u00fcckhaltung gilt f\u00fcr ","ref":""},{"kind":"code","text":"\/proc\/sys","ref":""},{"kind":"text","text":". Das Lesen eines Parameters ist Diagnostik, das Schreiben ver\u00e4ndert aktives Kernelverhalten. \u00c4ndere einen Wert nur, wenn die Ursache verstanden ist, der Ausgangswert dokumentiert wurde, Auswirkungen beobachtbar sind und ein R\u00fcckweg feststeht. Die Verzeichnisse ","ref":""},{"kind":"code","text":"fs","ref":""},{"kind":"text","text":", ","ref":""},{"kind":"code","text":"vm","ref":""},{"kind":"text","text":" und ","ref":""},{"kind":"code","text":"net","ref":""},{"kind":"text","text":" ordnen Parameter thematisch, liefern aber keine universellen Tuningvorgaben. ","ref":""},{"kind":"citation","text":"","ref":"S2"}]},{"type":"paragraph","runs":[{"kind":"text","text":"Das Beispiel ","ref":""},{"kind":"code","text":"drop_caches","ref":""},{"kind":"text","text":" zeigt den Unterschied zwischen Eingriff und Optimierung: Die Kernel-Dokumentation beschreibt die Schnittstelle als nicht destruktiv, warnt jedoch vor Leistungsproblemen und empfiehlt sie nicht als regul\u00e4re Betriebsma\u00dfnahme au\u00dferhalb von Test- oder Debug-Szenarien. Eine konservative Regel lautet daher: Erst messen, dann eine begr\u00fcndete \u00c4nderung begrenzt vornehmen, Wirkung und Nebenwirkungen beobachten und die Entscheidung dokumentieren. ","ref":""},{"kind":"citation","text":"","ref":"S11"}]}]}]},"_wh_make_word_report":{"words":2798,"min":2000,"max":3000,"target":2500,"ok":true,"missing":0,"excess":0,"lead_words":64,"section_words":{"proc-basics":252,"proc-time-context":269,"proc-sysctl-boundary":230,"proc-overview-table":380,"proc-load-memory":369,"proc-process-io":319,"proc-monitoring":331,"proc-troubleshooting":332,"proc-decisions":252}},"_wh_make_review":{"verdict":"pass","issues":[],"checked_source_ids":["S1","S3","S4","S5","S6","S7","S9","S10","S11","S12"],"summary":"Der Artikel ist fachlich plausibel und durch die gepr\u00fcften Kernel-Dokumentationen sowie Linux-Manpages gest\u00fctzt. Die Abgrenzung von Momentaufnahmen, gleitenden Mittelwerten und kumulativen Z\u00e4hlern ist korrekt. Load Average, iowait, MemAvailable, PSI, Prozessstatus, Dateideskriptoren, diskstats und file-nr werden mit den n\u00f6tigen Einschr\u00e4nkungen erkl\u00e4rt. Schreibzugriffe unter \/proc\/sys sind klar von lesender Diagnostik getrennt; drop_caches wird nicht als regul\u00e4re Optimierung empfohlen. Container-, Namespace- und cgroup-Grenzen sind angemessen formuliert. Die Terminalbeispiele sind lesend, die Bildkonzepte suggerieren keine falsche direkte Zuordnung zwischen Prozessdateien und Blockger\u00e4te-I\/O, und es werden keine eigenen Messungen oder Tests behauptet. Versionsgebundene Quellen werden im Versionshinweis transparent kenntlich gemacht."},"_wh_make_review_doc_hash":"170001268aa02e1f1b3ca6d6477a053be0a1d7b6c241271836a300e46634ed3c","_yoast_wpseo_primary_category":null,"rank_math_schema_blogposting":null,"rank_math_schema_videoobject":null,"_oembed_049c719bc4a9f89deaead66a7da9fddc":null,"_oembed_time_049c719bc4a9f89deaead66a7da9fddc":null,"_yoast_wpseo_focuskw":null,"inline_featured_image":null,"_yoast_wpseo_linkdex":null,"_eael_widget_elements":null,"_oembed_c3b0f6959478faf92a1f343d8f96b19e":null,"_oembed_27e3473bf8bec795fbeb3a9d38489348":null,"_trp_translated_slug_en_us":null,"_yoast_wpseo_title":null,"tldname":null,"tldpreis":null,"tldrubrik":null,"tldpolicylink":null,"tldsize":null,"tldregistrierungsdauer":null,"tldtransfer":null,"tldwhoisprivacy":null,"tldregistrarchange":null,"tldregistrantchange":null,"tldwhoisupdate":null,"tldnameserverupdate":null,"tlddeletesofort":null,"tlddeleteexpire":null,"tldumlaute":null,"tldrestore":null,"tldsubcategory":null,"tldbildname":null,"tldbildurl":null,"tldclean":null,"tldcategory":null,"tldpolicy":null,"tldbesonderheiten":null,"tld_bedeutung":null,"_oembed_d167040d816d8f94c072940c8009f5f8":null,"_oembed_b0a0fa59ef14f8870da2c63f2027d064":null,"_oembed_4792fa4dfb2a8f09ab950a73b7f313ba":null,"_oembed_33ceb1fe54a8ab775d9410abf699878d":null,"_oembed_fd7014d14d919b45ec004937c0db9335":null,"_oembed_21a029d076783ec3e8042698c351bd7e":null,"_oembed_be5ea8a0c7b18e658f08cc571a909452":null,"_oembed_a9ca7a298b19f9b48ec5914e010294d2":null,"_oembed_f8db6b27d08a2bb1f920e7647808899a":null,"_oembed_168ebde5096e77d8a89326519af9e022":null,"_oembed_cdb76f1b345b42743edfe25481b6f98f":null,"_oembed_87b0613611ae54e86e8864265404b0a1":null,"_oembed_27aa0e5cf3f1bb4bc416a4641a5ac273":null,"_oembed_time_27aa0e5cf3f1bb4bc416a4641a5ac273":null,"_tldname":null,"_tldclean":null,"_tldpreis":null,"_tldcategory":null,"_tldsubcategory":null,"_tldpolicy":null,"_tldpolicylink":null,"_tldsize":null,"_tldregistrierungsdauer":null,"_tldtransfer":null,"_tldwhoisprivacy":null,"_tldregistrarchange":null,"_tldregistrantchange":null,"_tldwhoisupdate":null,"_tldnameserverupdate":null,"_tlddeletesofort":null,"_tlddeleteexpire":null,"_tldumlaute":null,"_tldrestore":null,"_tldbildname":null,"_tldbildurl":null,"_tld_bedeutung":null,"_tldbesonderheiten":null,"_oembed_8357e2b8a2575c74ed5978f262a10126":null,"_oembed_ad96e4112edb9f8ffa35731d4098bc6b":null,"_oembed_3d5fea5103dd0d22ec5d6a33eff7f863":null,"_oembed_819a879e7da16dd629cfd15a97334c8a":null,"_oembed_time_819a879e7da16dd629cfd15a97334c8a":null,"_wh_make_writer_raw":null,"_wh_make_design_backup_204":null,"_wp_desired_post_slug":null,"_oembed_0d8a206f09633e3d62b95a15a4dd0487":null,"_oembed_time_0d8a206f09633e3d62b95a15a4dd0487":null,"_aioseo_description":null,"_eb_attr":null,"_eb_data_table":null,"_acf_changed":null,"_wpcode_auto_insert":null,"_edit_last":"1","_edit_lock":"1790075357:1","_oembed_e7b913c6c84084ed9702cb4feb012ddd":null,"_oembed_bfde9e10f59a17b85fc8917fa7edf782":null,"_oembed_time_bfde9e10f59a17b85fc8917fa7edf782":null,"_oembed_03514b67990db061d7c4672de26dc514":null,"_oembed_time_03514b67990db061d7c4672de26dc514":null,"rank_math_news_sitemap_robots":null,"rank_math_robots":null,"_eael_post_view_count":"98","_trp_automatically_translated_slug_ru_ru":null,"_trp_automatically_translated_slug_et":null,"_trp_automatically_translated_slug_lv":null,"_trp_automatically_translated_slug_fr_fr":null,"_trp_automatically_translated_slug_en_us":null,"_wp_old_slug":null,"_trp_automatically_translated_slug_da_dk":null,"_trp_automatically_translated_slug_pl_pl":null,"_trp_automatically_translated_slug_es_es":null,"_trp_automatically_translated_slug_hu_hu":null,"_trp_automatically_translated_slug_fi":null,"_trp_automatically_translated_slug_ja":null,"_trp_automatically_translated_slug_lt_lt":null,"_elementor_edit_mode":null,"_elementor_template_type":null,"_elementor_version":null,"_elementor_pro_version":null,"_wp_page_template":null,"_elementor_page_settings":null,"_elementor_data":null,"_elementor_css":null,"_elementor_conditions":null,"_happyaddons_elements_cache":null,"_oembed_75446120c39305f0da0ccd147f6de9cb":null,"_oembed_time_75446120c39305f0da0ccd147f6de9cb":null,"_oembed_3efb2c3e76a18143e7207993a2a6939a":null,"_oembed_time_3efb2c3e76a18143e7207993a2a6939a":null,"_oembed_59808117857ddf57e478a31d79f76e4d":null,"_oembed_time_59808117857ddf57e478a31d79f76e4d":null,"_oembed_965c5b49aa8d22ce37dfb3bde0268600":null,"_oembed_time_965c5b49aa8d22ce37dfb3bde0268600":null,"_oembed_81002f7ee3604f645db4ebcfd1912acf":null,"_oembed_time_81002f7ee3604f645db4ebcfd1912acf":null,"_elementor_screenshot":null,"_oembed_7ea3429961cf98fa85da9747683af827":null,"_oembed_time_7ea3429961cf98fa85da9747683af827":null,"_elementor_controls_usage":null,"_elementor_page_assets":[],"_elementor_screenshot_failed":null,"theplus_transient_widgets":null,"_eael_custom_js":null,"_wp_old_date":null,"_trp_automatically_translated_slug_it_it":null,"_trp_automatically_translated_slug_pt_pt":null,"_trp_automatically_translated_slug_zh_cn":null,"_trp_automatically_translated_slug_nl_nl":null,"_trp_automatically_translated_slug_pt_br":null,"_trp_automatically_translated_slug_sv_se":null,"rank_math_analytic_object_id":null,"_trp_automatically_translated_slug_ro_ro":null,"_trp_automatically_translated_slug_sk_sk":null,"_trp_automatically_translated_slug_bg_bg":null,"_trp_automatically_translated_slug_sl_si":null,"litespeed_vpi_list":null,"litespeed_vpi_list_mobile":null,"rank_math_seo_score":"75","rank_math_contentai_score":null,"ilj_limitincominglinks":"","ilj_maxincominglinks":"1","ilj_limitoutgoinglinks":"","ilj_maxoutgoinglinks":"1","ilj_limitlinksperparagraph":"","ilj_linksperparagraph":"1","ilj_blacklistdefinition":[],"ilj_linkdefinition":[],"_eb_reusable_block_ids":null,"rank_math_focus_keyword":"Linux procfs","rank_math_og_content_image":null,"surfer_last_post_update":null,"surfer_last_post_update_direction":null,"surfer_keywords":null,"surfer_location":null,"surfer_draft_id":null,"surfer_permalink_hash":null,"surfer_scrape_ready":null,"_thumbnail_id":"21652","_yoast_wpseo_metadesc":null,"_yoast_wpseo_content_score":null,"_yoast_wpseo_focuskeywords":null,"_yoast_wpseo_keywordsynonyms":null,"_yoast_wpseo_estimated-reading-time-minutes":null,"rank_math_description":"Wichtige procfs-Dateien f\u00fcr Linux-Administratoren: Systemlast, Speicher, Prozesse, I\/O und \/proc\/sys korrekt lesen und einordnen.","footnotes":null,"_links":{"self":[{"href":"https:\/\/webhosting.de\/sv\/wp-json\/wp\/v2\/posts\/21649","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webhosting.de\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/webhosting.de\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/webhosting.de\/sv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/webhosting.de\/sv\/wp-json\/wp\/v2\/comments?post=21649"}],"version-history":[{"count":4,"href":"https:\/\/webhosting.de\/sv\/wp-json\/wp\/v2\/posts\/21649\/revisions"}],"predecessor-version":[{"id":21657,"href":"https:\/\/webhosting.de\/sv\/wp-json\/wp\/v2\/posts\/21649\/revisions\/21657"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/webhosting.de\/sv\/wp-json\/wp\/v2\/media\/21652"}],"wp:attachment":[{"href":"https:\/\/webhosting.de\/sv\/wp-json\/wp\/v2\/media?parent=21649"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/webhosting.de\/sv\/wp-json\/wp\/v2\/categories?post=21649"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/webhosting.de\/sv\/wp-json\/wp\/v2\/tags?post=21649"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}