Ext2 eli ext2fs on Linuxille suunniteltu tiedostojärjestelmä,[1] joka julkaistiin 1993 ja joka on ensimmäisen tiedostojärjestelmän toinen laajennos.[2] Sitä käytettiin pitkään Linuxin oletustiedostojärjestelmänä. Se järjestää ja tallentaa dataa datablokkeihin.[3] Ext2:n seuraaja on journalointia tukeva ext3.[1] Journaloinnin puutteen vuoksi ext2:n käyttö ei nykyisin kannata kuin erityisistä syistä.[4]
Edeltäjästään extfs-tiedostojärjestelmästä (joka korvasi alkuperäisen Minix-tiedostojärjestelmän) poiketen ext2 suunniteltiin alusta alkaen laajennettavaksi[1], ja niin esimerkiksi ext3-tiedostojärjestelmää voi käyttää myös ext2:na. Tiedostojärjestelmä sisältää tiedot käytetyistä laajennoksista ja siitä, onko jokin niistä epäyhteensopiva vanhojen järjestelyjen kanssa. ext-tiedostojärjestelmään verrattuna ext2 oli nopeampi, sisälsi aikaleimaamisen ja tuki 4 terabitin tiedostoja.[5]
Tiedostojärjestelmän alussa on "superblock", jossa kerrotaan tiedostojärjestelmän ominaisuuksista ja sen muiden osien sijainnista. Superblokin jälkeen on varaustaulukkoja ja inodeja ja niiden jälkeen näihin liittyvät varsinaiset datablokit. Datablokkien jälkeen on superblokin varakopio ja seuraava erä varaustaulukkoja ja inodeja.[1][6] Kiintolevyjen kasvaessa osa superblokkikopioista on jätetty pois.
Mikäli tiedostojärjestelmä vaurioituu, sen perustiedot ovat vielä luettavissa superblokkien varakopioissa ja siten tiedostojärjestelmän eri osat ovat löydettävissä. Kopiot ovat yleensä samoissa paikoissa ja tunnistettavissa myös maagisista numeroista.
inode-blokin rikkoontuessa sen osoittamat tiedostot eivät ole enää automaattisesti korjattavissa, mutta koska saman tiedoston datablokit pyritään pitämään yhdessä, tiedosto saattaa löytyä ehjänä yhdessä tai muutamassa osassa, kunhan nämä osat ovat tunnistettavissa (tekstitiedoston osalta helppoa käsin, joidenkin rakenteellisten tiedostojen osalta mahdollista automaattisesti). inoden rikkoontumisesta on oireena merkilliset tiedosto-oikeudet.
Hakemiston rikkoontuessa tiedoston nimeä ei löydy. Tiedostojärjestelmän korjausohjelma fsck siirtää löytyneen rikkoontuneen tiedoston lost+found-kansioon ja nimeää sen siellä inode-numeron mukaan.[7]
Vahingossa poistetun tiedoston palauttaminen onnistuu automaattisesti niin kauan, kun sen inodea ja datablokkeja ei ole otettu uusiokäyttöön. Yleensä inodeen merkitään tiedoston poistamisen aika ("dtime"),[8] mutta muuten inode jää ennalleen (ext3 yleensä tyhjentää inoden kokonaan).