Kun lähetät PDF-tiedoston, valokuvan tai Word-dokumentin eteenpäin, mukana kulkee usein paljon enemmän tietoa kuin näet ruudulla. Tiedoston sisään voi jäädä kirjoittajan nimi, laitteen sarjanumero, GPS-koordinaatit tai muokkaushistoria, jota kukaan ei tarkoituksella laittanut sinne näkyviin. ExifTool tunnetaan Suomessakin jo hyvin kuvien EXIF-datan siivoajana, mutta Linux- ja Tails-käyttäjille on olemassa toinenkin työkalu, joka hoitaa saman homman laajemmalla tiedostokirjolla yhdellä komennolla: MAT2, eli Metadata Anonymisation Toolkit 2.

Tässä oppaassa asennat MAT2:n kolmelle eri Linux-jakelulle, opit lukemaan tiedoston piilotetut kentät ennen puhdistusta, puhdistat yksittäisiä tiedostoja ja kokonaisia kansioita, otat käyttöön Nautilus- ja Dolphin-laajennukset graafista käyttöä varten ja rakennat lopuksi valmiin bash-skriptin, joka puhdistaa julkaisukansion automaattisesti. Mukana on 12 konkreettista vaihetta, yli kymmenen komentoriviesimerkkiä ja kahdeksan yleisintä vianmääritystilannetta. Opas on kirjoitettu 11. syyskuuta 2026, ja se sopii Debian-, Ubuntu-, Fedora-, Arch- ja Tails-käyttäjille.

Moni tuntee jo ExifToolin, mutta MAT2 on hyödyllinen juuri niille, jotka työskentelevät Linuxilla tai Tailsissa ja haluavat yhden komennon, joka toimii yhtä lailla kuville, PDF-tiedostoille, äänitiedostoille kuin arkistoillekin. Työkalu ei vaadi kenttäkohtaista säätöä eikä erillisten lippujen opettelua jokaiselle tiedostomuodolle erikseen, mikä tekee siitä käytännöllisen valinnan toimittajille, aktivisteille, IT-tukihenkilöille ja kenelle tahansa, joka jakaa tiedostoja säännöllisesti eteenpäin.

Miksi tiedoston metatiedot ovat yksityisyysriski

Metatieto ei ole vain kuvien GPS-sijainti. PDF-tiedostoon voi jäädä yrityksen sisäinen tulostimen verkkopolku. Word-dokumenttiin tallentuu tekijän käyttäjätunnus ja usein myös aiempien muokkaajien nimet kommentteina, vaikka ne olisi näennäisesti poistettu tekstistä. MP3-tiedostoon voi jäädä alkuperäisen äänityslaitteen sarjanumero. ZIP-arkistoon jää usein pakkaajan käyttäjätunnus ja tiedoston alkuperäinen luontiaika, vaikka sisältö itsessään olisi anonyymi.

Tähän mennessä useampi toimittaja, aktivisti ja whistleblower on paljastanut lähteensä vahingossa juuri metatietojen kautta, ei itse sisällön kautta. Tiedostoa on tarkasteltu silmällä, todettu se turvalliseksi ja jaettu eteenpäin, vaikka tiedoston sisään on jäänyt kirjoittajan koneen käyttäjätunnus tai tallennuspolku, joka paljastaa organisaation nimen. Sama riski koskee tavallista arkea. Kiinteistönvälittäjä, joka lataa asuntokuvia, voi paljastaa asiakkaan tarkan osoitteen. Yritys, joka julkaisee raportin PDF-muodossa, voi paljastaa sisäisen tiedostorakenteen ja työntekijöiden nimet metatietojen kautta.

GDPR:n 5 artikla velvoittaa käsittelemään henkilötietoja vain siinä laajuudessa kuin käsittelyn tarkoitus edellyttää. Kun julkaiset tiedoston, jonka metatiedoissa on henkilötietoa, jota ei tarvita julkaisun tarkoitukseen, olet käytännössä rikkonut tätä periaatetta, vaikka itse asiakirjan sisältö olisi täysin asiallinen. Tästä syystä metatietojen siivoaminen ei ole vain teknistä hygieniaa vaan osa tietosuojan perustyötä ennen minkä tahansa tiedoston jakamista ulkopuolelle.

Miten metatieto syntyy tiedostoon ja miksi se on vaikea huomata

Metatieto ei ole virhe eikä vahinko, vaan ohjelmien tarkoituksellinen ominaisuus. Kun kamera tallentaa kuvan, se kirjoittaa tiedoston sisään kuvausasetukset, koska niistä on hyötyä jälkikäsittelyssä. Kun Word tallentaa dokumentin, se merkitsee tekijän nimen ja organisaation, koska se helpottaa yhteistyötä saman tiimin sisällä. Kun puhelin ottaa kuvan, se lisää GPS-koordinaatit, koska monet sovellukset, kuten karttapalvelut ja kuva-albumit, hyödyntävät sijaintitietoa automaattisesti.

Ongelma syntyy siitä, että nämä kentät ovat oletuksena päällä ja pysyvät tiedostossa, vaikka alkuperäinen käyttötarkoitus, esimerkiksi sisäinen yhteistyö, on jo ohi. Tiedosto lähtee liikkeelle organisaation sisältä, mutta metatiedot matkustavat mukana muuttumattomina. Tavallinen käyttäjä ei näe näitä kenttiä miltään näytöltä: kuvankatseluohjelma näyttää kuvan, ei sen taakse piilotettua dataa, ja PDF-lukija näyttää tekstin, ei tiedoston ominaisuuksiin kirjattua tekijätietoa. Tämän vuoksi metatieto jää lähes aina huomaamatta, ellei sitä erikseen tarkista työkalulla, joka on suunniteltu juuri siihen.

Osa formaateista on tässä pahempia kuin toiset. Office-tiedostot (docx, xlsx, pptx) ovat teknisesti ZIP-arkistoja, joiden sisällä on kymmeniä XML-tiedostoja, ja monet niistä sisältävät oman metatietonsa: asiakirjan ominaisuudet, mukautetut ominaisuudet, muokkaushistorian ja jopa aiempien tallennuskertojen tekijätiedot. Yhden näkyvän kentän tyhjentäminen käyttöliittymästä ei aina poista kaikkia näitä kerroksia, mikä on juuri se syy, miksi erillinen työkalu kuten MAT2 on tarpeen sen sijaan, että luottaisi pelkkään ohjelman omaan “poista henkilötiedot” -toimintoon.

Alla oleva taulukko havainnollistaa, mitä tietoa eri tiedostomuodot tyypillisesti kantavat mukanaan ja kuinka suuri yksityisyysriski niihin liittyy, jos tiedosto jaetaan puhdistamattomana.

TiedostomuotoTyypillinen metatietoYksityisyysriski
JPEG, HEIC (kuvat)GPS-sijainti, laitemalli, sarjanumero, kuvausaikaKorkea
PDFTekijä, ohjelmisto, tulostimen verkkopolku, muokkaushistoriaKeskitaso–korkea
DOCX, XLSX, PPTXTekijän käyttäjätunnus, organisaatio, kommentit, muutosjäljetKorkea
MP3, FLACÄänityslaitteen tiedot, tagitiedot, muokkausohjelmaMatala–keskitaso
ZIP, TAR (arkistot)Pakkaajan käyttäjätunnus, alkuperäiset aikaleimatKeskitaso

Mikä MAT2 on ja miten se eroaa ExifToolista

MAT2 on Julien Voisinin ylläpitämä avoimen lähdekoodin Python 3 -kirjasto ja komentorivityökalu, joka on suunniteltu yhteen tehtävään: poistaa mahdollisimman paljon metatietoa mahdollisimman monesta tiedostomuodosta yhdellä yksinkertaisella komennolla. Projektin dokumentaatio kuvaa tavoitteen suoraan: “Metadata within a file can tell a lot about you. Maybe you don’t want to disclose those information. This is precisely the job of MAT2: getting rid, as much as possible, of metadata”, kirjoittaa Voisin projektin README-tiedostossa.

Ero ExifToolin ja MAT2:n välillä on lähestymistavassa. ExifTool on Phil Harveyn kehittämä tarkkuustyökalu, jolla voi lukea ja muokata satoja yksittäisiä metatietokenttiä erikseen: voit säilyttää tekijänoikeusmaininnan mutta poistaa GPS-sijainnin, tai muokata yhtä kenttää kerrallaan. MAT2 taas on rakennettu vastakkaisesta lähtökohdasta: oletuksena se yrittää poistaa kaiken löytämänsä metatiedon kerralla, eikä tarjoa yhtä hienojakoista kenttäkohtaista hallintaa. Tämä tekee siitä nopeamman valinnan silloin, kun tavoite on yksinkertainen “poista kaikki ennen julkaisua” eikä kenttäkohtainen säätö.

Toinen keskeinen ero on käyttöliittymä. MAT2 tulee valmiiksi mukana graafisella tuella: Nautilus-laajennus tuo puhdistuksen suoraan GNOME Filesin oikean napin valikkoon, ja Dolphin-palveluvalikko tekee saman KDE-työpöydälle. ExifTool on puhtaasti komentorivityökalu, jonka päälle graafiset käyttöliittymät (kuten ExifCleaner) on rakennettu erikseen kolmannen osapuolen toimesta. MAT2:n koodi on julkaistu LGPL-3.0-lisenssillä, ja kehitystä hallinnoidaan ensisijaisesti osoitteessa 0xacab.org/jvoisin/mat2, josta löytyy myös luettavissa oleva peilirepositorio GitHubissa.

MAT2 ei ole ensimmäinen yritys ratkaista tätä ongelmaa. Sen edeltäjä, alkuperäinen MAT, syntyi 2010-luvun alussa samasta tarpeesta, mutta koodipohja osoittautui vaikeaksi ylläpitää ja laajentaa uusille tiedostomuodoille. Voisin kirjoitti työkalun uudelleen alusta asti Python 3:lla ja julkaisi sen nimellä MAT2, minkä jälkeen projektista on tullut yksi harvoista metatietotyökaluista, joka on vakiinnuttanut paikkansa privacy-yhteisön suosittelemien perustyökalujen joukossa yhdessä Toriin ja Tailsiin liittyvien ohjelmistojen kanssa. Ylläpito on jatkunut aktiivisena vuosikausia, ja projektille kertyy edelleen säännöllisin väliajoin uusia julkaisuja, joissa lisätään tukea uusille tiedostomuodoille kuten HEIC-kuville ja AIFF-äänelle.

Kehityksen keskittäminen 0xacab.org-alustalle, joka on riippumattomien aktivistien ylläpitämä Git-palvelu, kertoo omaa tarinaansa projektin arvomaailmasta: kehitys ei nojaa yhteen kaupalliseen yritykseen tai alustaan, vaan pysyy hallinnollisesti erillään kaupallisista Git-palveluista, vaikka luettavissa oleva peili GitHubissa helpottaakin löydettävyyttä ja osallistumista projektiin.

Esivaatimukset: versiot, tiedostomuodot ja käyttöjärjestelmät

MAT2 toimii Linuxilla, BSD-järjestelmillä ja Tails-käyttöjärjestelmällä. Windows- ja macOS-tukea ei ole virallisesti tarjolla, joten jos käytät niitä, kannattaa katsoa aiempi opas ExifToolin asennuksesta. Uusin virallinen yläjuoksun julkaisu on 0.15.0, mutta jakelupaketit laahaavat tyypillisesti jäljessä: Arch Linuxin extra-varastossa versio on 0.14.0, Debianin testing- ja sid-haaroissa 0.13.5 ja Fedoran sekä Debian bookwormin vakaissa julkaisuissa 0.13.3–0.13.5 välillä. Käytännön kannalta tämä ei haittaa, sillä kaikki tässä oppaassa käytetyt komennot toimivat versiosta 0.13.0 alkaen.

MAT2 tukee laajaa tiedostokirjoa: JPEG-, PNG-, GIF-, TIFF-, BMP-, SVG- ja HEIC-kuvia, PDF-tiedostoja, OpenDocument- ja Office Open XML -asiakirjoja (odt, ods, docx, xlsx), EPUB-tiedostoja, MP3-, FLAC-, OGG- ja WAV-äänitiedostoja sekä ZIP-, TAR- ja torrent-arkistoja. Kuva- ja äänimuotojen käsittely nojaa taustalla kirjastoihin kuten Mutagen (äänimerkinnät) ja GdkPixbuf sekä Poppler (kuvat ja PDF), joten näiden puuttuminen järjestelmästä voi rajoittaa tuettuja muotoja. Alla oleva taulukko kokoaa yhteen tärkeimmät asiat ennen asennusta.

OminaisuusTieto
Uusin julkaisu (yläjuoksu)0.15.0
Yleisin jakeluversio (2026)0.13.3–0.14.0 riippuen jakelusta
LisenssiLGPL-3.0
YlläpitäjäJulien Voisin (jvoisin)
Tuetut käyttöjärjestelmätLinux, BSD, Tails
Graafinen tukiNautilus-laajennus, Dolphin-palveluvalikko
Asennustapaapt, dnf, pacman, pip/pipx
Aikaa tarvitsetNoin 60 minuuttia koko oppaan läpikäyntiin

Tarvitset peruskäsityksen komentorivin käytöstä: kansiossa liikkumisen (cd), tiedostojen listaamisen (ls) ja sudo-oikeuksien käytön pakettien asennukseen. Jos et halua käyttää komentoriviä lainkaan, vaiheessa 12 käydään läpi graafinen Nautilus- ja Dolphin-integraatio, jonka avulla koko prosessin voi tehdä pelkällä hiirellä. Yksikään näistä työkaluista ei maksa mitään, joten koko oppaan voi käydä läpi ilman lisenssikuluja tai tilauksia.

MAT2:n tekninen arkkitehtuuri: mistä puhdistus koostuu

Ymmärtääksesi, miksi MAT2 toimii kuten se toimii, kannattaa tietää muutama asia sen sisäisestä rakenteesta. Varsinainen logiikka asuu libmat2-kirjastossa, jota sekä komentorivityökalu, Nautilus-laajennus että Dolphin-palveluvalikko kutsuvat taustalla. Kirjasto sisältää oman jäsentäjän (parser) jokaiselle tiedostotyypille: PNGParser kuville, MSOfficeParser Word- ja Excel-tiedostoille, PDFParser PDF:lle ja niin edelleen. Kun ajat mat2 tiedosto.jpg, työkalu tunnistaa ensin tiedoston todellisen MIME-tyypin tiedoston sisällön perusteella, ei pelkän tiedostopäätteen mukaan, ja valitsee sitten oikean jäsentäjän käsittelyyn.

Moni jäsentäjä nojaa ulkopuolisiin kirjastoihin. Kuvien käsittely käyttää GdkPixbuf- ja Cairo-kirjastoja, PDF-tiedostot Poppler-kirjastoa, ja ääni- sekä videotiedostot nojaavat pääosin Mutagen-kirjastoon tagien käsittelyssä ja FFmpegiin konttimuotojen, kuten AVI:n ja MP4:n, purkamisessa. Tästä syystä –check-dependencies-komento on hyödyllinen: jos jokin näistä ulkoisista kirjastoista puuttuu järjestelmästä, MAT2 ei osaa käsitellä kyseistä tiedostomuotoa, vaikka komentorivityökalu itsessään olisi asennettuna oikein.

Turvallisuusnäkökulmasta MAT2 ajaa oletuksena tiedostojen käsittelyn bubblewrap-nimisessä hiekkalaatikossa (sandbox), joka rajoittaa käsittelyprosessin pääsyä muuhun tiedostojärjestelmään. Tämä on tarkoituksellinen suoja tilannetta varten, jossa käsiteltävä tiedosto on itsessään haitallisesti muotoiltu ja yrittää hyödyntää jäsentäjän heikkoutta. Vasta –no-sandbox-lippu poistaa tämän suojan, minkä vuoksi sitä ei kannata käyttää oletuksena, vaan ainoastaan ympäristöissä, joissa bubblewrap ei toimi lainkaan, esimerkiksi tietyissä sisäkkäisissä konttiratkaisuissa.

Tämä arkkitehtuuri selittää myös sen, miksi MAT2 on turvallisempi vaihtoehto tuntemattomasta lähteestä saaduille tiedostoille kuin monet muut työkalut, jotka eivät eristä käsittelyä samalla tavalla. Kun lähde toimittaa tiedoston, jonka alkuperää tai eheyttä ei voi varmistaa etukäteen, hiekkalaatikointi vähentää riskiä siitä, että itse käsittelyprosessi altistaisi koko työaseman.

Vaihe 1-3: Asenna MAT2 Debianille, Ubuntulle ja Tailsille

Debian- ja Ubuntu-pohjaisissa jakeluissa MAT2 löytyy suoraan vakiopakettivarastosta nimellä mat2. Sama paketti toimii myös Tailsin taustalla, koska Tails perustuu Debianiin, mutta Tailsissa MAT2 on jo valmiiksi asennettuna (siitä lisää myöhemmin). Debian- tai Ubuntu-koneella asennus tehdään kolmella komennolla.

sudo apt update
sudo apt install mat2
mat2 --version

Onnistunut asennus tulostaa version numeron, esimerkiksi “0.13.5”. Debianin paketti sisältää valmiiksi sekä komentorivityökalun että Dolphin-palveluvalikon tiedostot, kun taas Nautilus-laajennus saattaa vaatia erillisen python3-nautilus-riippuvuuden, jos GNOME Files ei näytä puhdistusvalikkoa asennuksen jälkeen.

sudo apt install python3-nautilus
nautilus -q

Jälkimmäinen komento sammuttaa Nautilus-tiedostonhallinnan taustaprosessin, jolloin se käynnistyy uudelleen seuraavan avauksen yhteydessä ja lataa uudet laajennukset mukaan.

Jos haluat varmistaa etukäteen, minkä version pakettivarasto tarjoaa ennen asennusta, apt-cache policy näyttää saatavilla olevan version ilman että mitään asennetaan vielä. Tämä on hyödyllinen tapa tarkistaa, kannattaako käyttää jakelun pakettia vai vaiheessa 4-5 esiteltyä pip-asennusta, jos tarvitset varmasti uusimman yläjuoksun version esimerkiksi tuoreimman tiedostomuototuen vuoksi.

apt-cache policy mat2

Vaihe 4-5: Asennus Fedoralle, Archille ja pipillä

Fedoralla ja siihen pohjautuvilla jakeluilla paketti asentuu dnf:llä samannimisenä. Arch Linuxilla paketti löytyy virallisesta extra-varastosta, joten erillisiä kolmannen osapuolen varastoja ei tarvita.

# Fedora
sudo dnf install mat2

# Arch Linux
sudo pacman -S mat2

Jos käytät jakelua, jossa MAT2:ta ei ole pakattu valmiiksi, tai haluat aina uusimman yläjuoksun version, asennus onnistuu Pythonin pakettienhallinnalla. Suositeltava tapa on pipx, koska se eristää MAT2:n omaan virtuaaliympäristöönsä eikä sotke järjestelmän muita Python-paketteja.

python3 -m pip install --user pipx
pipx install mat2
mat2 --version

Huomaa, että pip- tai pipx-asennus ei tuo mukanaan Nautilus- tai Dolphin-laajennuksia, ainoastaan komentorivityökalun. Graafista integraatiota varten kannattaa käyttää jakelun omaa pakettivarastoa, koska laajennustiedostot pitää asentaa oikeisiin järjestelmäkansioihin toimiakseen.

Kummalla tahansa asennustavalla lopputulos kannattaa aina varmistaa samalla tavalla: aja mat2 –version ja vertaa tulosta tämän oppaan esivaatimukset-taulukkoon. Jos näet versionumeron 0.13.0 tai uudemman, kaikki tässä oppaassa esitellyt komennot toimivat suoraan ilman lisätoimenpiteitä.

Vaihe 6: Tarkista tuetut tiedostomuodot komennolla mat2 -l

Ennen kuin puhdistat mitään, kannattaa varmistaa, että oma tiedostomuoto todella kuuluu tuettujen listalle. Tähän on oma lippunsa, -l tai –list, joka tulostaa kaikki asennuksen tunnistamat muodot.

mat2 --list

Tuloste näyttää tältä (lyhennetty):

image/jpeg
image/png
image/gif
image/tiff
image/x-ms-bmp
application/pdf
application/vnd.oasis.opendocument.text
application/vnd.openxmlformats-officedocument.wordprocessingml.document
audio/mpeg
audio/flac
audio/ogg
application/zip
application/x-tar
application/x-bittorrent

Jos oma tiedostosi puuttuu listalta, MAT2 ei osaa käsitellä sitä lainkaan, eikä se anna virheilmoitusta hienovaraisesti: se joko ohittaa tiedoston kokonaan tai ilmoittaa selvästi tukemattomasta muodosta. Tässä tapauksessa ExifTool voi olla parempi valinta, koska sen tiedostokirjo on laajempi erikoisformaattien osalta.

Listaus on hyödyllinen myös silloin, kun asennat MAT2:n uuteen ympäristöön, esimerkiksi konttiin tai palvelimelle, jossa et tiedä etukäteen, mitkä taustakirjastot ovat asennettuina. Jos –list-tuloste näyttää lyhyemmältä kuin virallisessa dokumentaatiossa kuvattu lista, todennäköinen syy on puuttuva riippuvuus, kuten Mutagen tai FFmpeg, jolloin –check-dependencies-komento (käsitellään vaiheessa 11) kertoo tarkalleen, mikä puuttuu.

Vaihe 7: Tarkista metatiedot ilman muutoksia (–show)

Ennen puhdistusta kannattaa nähdä, mitä tiedostossa oikeasti on. Tähän on lippu -s tai –show, joka listaa löydetyn metatiedon muokkaamatta itse tiedostoa. Tämä on hyvä ensimmäinen askel, kun haluat vain tarkistaa tilanteen ilman riskiä.

mat2 --show mokki_2026.jpg

Tyypillinen tuloste voi näyttää tältä:

[mokki_2026.jpg]
  Exif.Image.Make: samsung
  Exif.Image.Model: SM-S928B
  Exif.GPSInfo.GPSLatitude: 61, 29, 30.12
  Exif.GPSInfo.GPSLongitude: 23, 45, 12.4
  Exif.Image.DateTime: 2026:08:14 16:32:07

MAT2:n dokumentaatio muistuttaa suoraan, ettei –show-lipun tyhjä tuloste tarkoita, että tiedosto olisi täysin puhdas. Jotkut monimutkaiset tiedostomuodot voivat sisältää metatietoa, jota mikään työkalu ei pysty luotettavasti havaitsemaan etukäteen, joten pelkkään tarkistukseen ei kannata luottaa päätöksenteossa siitä, tarvitseeko tiedosto puhdistuksen vai ei. Turvallisin oletus on puhdistaa aina, riippumatta siitä, mitä –show näyttää.

Vaihe 8: Puhdista yksittäinen tiedosto oletustilassa

Varsinainen puhdistus tapahtuu ajamalla MAT2 tiedostonimellä ilman erikoislippuja. Tärkeä yksityiskohta: MAT2 ei oletuksena muokkaa alkuperäistä tiedostoa, vaan luo uuden kopion, jonka nimeen lisätään sana “cleaned” ennen tiedostopäätettä.

mat2 mokki_2026.jpg
ls -la mokki_2026*

Tuloste näyttää uuden tiedoston syntyneen alkuperäisen rinnalle:

-rw-r--r-- 1 sam sam 3481204 syys 11 09:14 mokki_2026.cleaned.jpg
-rw-r--r-- 1 sam sam 3492811 syys 11 08:40 mokki_2026.jpg

Julkaisukelpoinen tiedosto on nyt mokki_2026.cleaned.jpg. Alkuperäinen tiedosto jää koskemattomaksi, mikä on tarkoituksellista: näin et menetä alkuperäistä versiota, jos jonkin ohjelman toiminta puhdistuksen jälkeen yllättää.

Vaihe 9: Kevyt puhdistus –lightweight-lipulla

Joskus täysi puhdistus on liikaa: esimerkiksi kuvatiedoston värihallintaprofiili tai PDF:n tekstin selattavuus voi kärsiä, jos MAT2 poistaa kaiken löytämänsä rakenteen. Tätä varten on olemassa -L tai –lightweight-lippu, joka poistaa vain osan metatiedosta ja jättää tiedoston rakenteen koskemattomammaksi.

mat2 --lightweight raportti.pdf

Kevyt tila sopii tilanteisiin, joissa täysi puhdistus on aiemmin rikkonut tiedoston käytettävyyden, esimerkiksi muuttanut tekstipohjaisen PDF:n kuvapohjaiseksi niin, ettei tekstiä voi enää valita tai hakea. Kevyt tila ei kuitenkaan poista yhtä paljon riskialtista dataa kuin oletustila, joten sitä ei kannata käyttää oletusarvoisesti, vaan vain silloin, kun täysi puhdistus aiheuttaa ongelmia.

Vaihe 10: Puhdista kokonainen kansio ja alikansiot kerralla

Kun tiedostoja on kymmeniä, yksittäinen komento tiedosto kerrallaan käy hitaaksi. MAT2 hyväksyy useita tiedostoja samassa komennossa, joten yhdistämällä sen find-komentoon voit puhdistaa koko kansion kerralla, mukaan lukien alikansiot.

find ./julkaisukansio -type f \( -iname "*.jpg" -o -iname "*.pdf" -o -iname "*.docx" \) -exec mat2 {} +

Komento etsii julkaisukansio-hakemistosta ja sen alikansioista kaikki JPG-, PDF- ja DOCX-tiedostot ja ajaa MAT2:n jokaiselle löydetylle tiedostolle. Lopputuloksena jokaisen alkuperäisen tiedoston rinnalle ilmestyy oma cleaned-versio, jolloin voit tarkistaa erot ennen alkuperäisten poistamista.

Isoissa kansioissa kannattaa ensin ajaa sama find-komento ilman -exec-osaa pelkkänä kuivaharjoitteluna, jotta näet, montako tiedostoa käsittely koskisi, ennen kuin päästät MAT2:n käsiksi satoihin tai tuhansiin tiedostoihin kerralla. Tämä on erityisen hyödyllistä silloin, kun kansiorakenne on tuntematon, esimerkiksi kun käsittelet ulkopuolelta saatua arkistoa etkä ole itse luonut kansiohierarkiaa.

find ./julkaisukansio -type f \( -iname "*.jpg" -o -iname "*.pdf" -o -iname "*.docx" \) | wc -l

Vaihe 11: In-place-puhdistus ja riippuvuuksien tarkistus

Jos et halua ylimääräisiä cleaned-kopioita, esimerkiksi automatisoidussa julkaisuputkessa, käytettävissä on –inplace-lippu. Se ylikirjoittaa alkuperäisen tiedoston suoraan ilman varmuuskopiota, joten sitä kannattaa käyttää vasta sen jälkeen, kun olet testannut prosessin cleaned-tiedostoilla ja luottaa lopputulokseen.

cp raportti.pdf raportti.pdf.bak
mat2 --inplace raportti.pdf

Ennen isompien ajojen käynnistämistä kannattaa myös varmistaa, että kaikki tarvittavat taustakirjastot ovat asennettuina. Tähän on oma tarkistuskomentonsa, –check-dependencies, joka listaa puuttuvat riippuvuudet ilman että mitään tiedostoja käsitellään.

mat2 --check-dependencies

Arkistotiedostoja (ZIP, TAR) käsiteltäessä MAT2 tarjoaa lisäksi –unknown-members-lipun, joka määrittää, miten työkalu käsittelee arkiston sisällä olevia tuntemattomia tiedostotyyppejä. Vaihtoehdot ovat abort (keskeytä), omit (jätä pois) ja keep (säilytä sellaisenaan). Julkaisua varten turvallisin valinta on omit, koska se estää tunnistamattoman sisällön päätymisen puhdistettuun arkistoon.

mat2 --unknown-members omit lahdeaineisto.zip

Vaihe 12: Nautilus-laajennus ja Dolphin-palveluvalikko

Kaikki edellä kuvattu toimii myös ilman yhtään komentoa, jos käytät GNOME- tai KDE-työpöytää. GNOME Filesissa (Nautilus) puhdistus löytyy oikean napin valikosta, kun tiedosto tai useampi tiedosto on valittuna. Valikkoon ilmestyy uusi kohta, joka käynnistää MAT2:n taustalla samoilla oletusasetuksilla kuin komentorivikin.

KDE:n Dolphin-tiedostonhallinnassa vastaava toiminto tulee mukana palveluvalikkona (service menu). Sen sai alun perin aikaan Miguel A. Marco-Buzunariz, ja se toimii samalla periaatteella: valitse tiedostot, avaa oikean napin valikko ja etsi metatietojen poisto -vaihtoehto. Jos valikkoa ei näy asennuksen jälkeen, käynnistä tiedostonhallinta uudelleen tai kirjaudu ulos ja takaisin sisään, jotta työpöytäympäristö lataa uudet palveluvalikkotiedostot.

Graafinen reitti sopii erityisesti tilanteisiin, joissa käsittelet vain muutaman tiedoston kerrallaan etkä halua avata päätettä lainkaan. Isompiin, toistuviin erätöihin komentorivi ja tämän oppaan lopussa esiteltävä automatisointiskripti ovat silti nopeampia.

Jos vastaat useamman työaseman ylläpidosta organisaatiossa, kannattaa harkita MAT2:n ja python3-nautilus-riippuvuuden lisäämistä osaksi vakiotyöasemakuvaa tai konfiguraationhallintatyökalua, kuten Ansiblea. Näin jokainen uusi työasema saa graafisen puhdistustoiminnon valmiiksi käyttöön ilman, että jokaisen käyttäjän tarvitsee asentaa sitä itse. Yksinkertainen Ansible-tehtävä hoitaa tämän muutamalla rivillä.

- name: Asenna MAT2 ja Nautilus-laajennus
  apt:
    name:
      - mat2
      - python3-nautilus
    state: present
    update_cache: true

MAT2 Tails-käyttöjärjestelmässä toimittajille ja aktivisteille

Tails on käyttöjärjestelmä, joka on rakennettu alusta asti anonymiteetin ja jälkien peittämisen ympärille, ja MAT2 on siinä oletuksena mukana ilman erillistä asennusta. Tailsin oma dokumentaatio suosittelee metatietojen poistoa aina ennen kuvien, ääni-, video- tai toimistotiedostojen julkaisemista, koska käyttöjärjestelmä on suunnattu nimenomaan käyttäjille, joilla lähteen paljastuminen voi olla vakava riski, kuten Tailsin salaus- ja yksityisyysoppaissa kuvataan.

Käytännössä työnkulku Tailsissa on sama kuin tavallisessa Debian-pohjaisessa jakelussa: avaa Files-sovellus, valitse tiedostot, klikkaa oikeaa nappia ja valitse metatietojen poisto valikosta, tai käytä Tailsin sisäänrakennettua päätettä samoilla komennoilla kuin tässä oppaassa. Koska Tails ei tallenna mitään pysyvästi levylle oletustilassa, puhdistetut tiedostot kannattaa siirtää heti käytön jälkeen USB-tikulle tai salattuun tallennustilaan, ennen kuin istunto suljetaan ja väliaikainen muisti tyhjenee.

Tails-käyttäjille kannattaa muistaa myös, että käyttöjärjestelmän mukana tuleva MAT2-versio seuraa Debianin pakettivarastoa, joten se voi olla muutaman kuukauden jäljessä uusimmasta yläjuoksun julkaisusta. Tämä ei yleensä haittaa, koska ydintoiminnallisuus, tiedoston puhdistus ja tuettujen muotojen kirjo, on pysynyt vakaana versiosta 0.13.0 lähtien.

MAT2 verkkopalveluna: mat2-web tiimikäyttöön

Yksittäisen käyttäjän komentorivi ja Nautilus-laajennus riittävät useimmille, mutta toimitukselle, oikeustoimistolle tai kansalaisjärjestölle, jossa useampi ihminen jakaa tiedostoja säännöllisesti, projektiin kuuluu myös mat2-web, kevyt selainpohjainen käyttöliittymä MAT2:n ympärille. Sen avulla kuka tahansa organisaatiossa voi ladata tiedoston selaimen kautta, saada puhdistetun version takaisin, eikä jokaisen tarvitse asentaa tai osata komentorivityökalua itse. Tämä on hyödyllinen ratkaisu esimerkiksi silloin, kun toimituksen ulkopuoliset avustajat tai lähteet lähettävät materiaalia, jonka pitää kulkea puhdistuksen läpi ennen arkistointia.

mat2-webiä käyttäessä kannattaa muistaa, että se on itsessään palvelin, johon pätevät samat perusvarotoimet kuin mihin tahansa tiedostoja vastaanottavaan verkkopalveluun: käytä HTTPS-yhteyttä, rajaa pääsy tunnetuille käyttäjille ja pidä palvelin ajan tasalla, koska aiempi arkistonkäsittelyyn liittynyt haavoittuvuus (käsitellään myöhemmin UKK-osiossa) koski juuri palvelinkäyttöä eikä paikallista komentorivikäyttöä. Pienelle tiimille riittää usein kevyt sisäverkon palvelin, jota ei julkaista avoimeen internetiin lainkaan.

Sisäverkon testauksessa mat2-web käynnistyy tyypillisesti Python-kehityspalvelimena, jota voi ajaa lyhyen kokeilun ajaksi paikallisesti ennen tuotantokäyttöön viemistä. Tuotantoon vietäessä sen eteen kannattaa laittaa varsinainen web-palvelin, kuten nginx, joka hoitaa HTTPS-terminoinnin ja pääsynhallinnan, koska mat2-webin oma sisäänrakennettu palvelin ei ole suunniteltu suoraan julkiseen internetiin altistettavaksi tuotantoympäristöksi.

Pohjoismainen näkökulma: kuka tarvitsee metatietojen poistoa

Suomessa ja muissa Pohjoismaissa metatietojen poisto koskettaa laajempaa joukkoa kuin pelkkiä toimittajia. Julkishallinnon virastot julkaisevat vuosittain suuria määriä PDF-raportteja ja liitteitä, joiden metatiedoissa kulkee usein sisäisiä tiedostopolkuja ja valmistelijoiden nimiä, vaikka lopullinen dokumentti olisi julkinen jo sellaisenaan. Sama koskee kuntia, jotka jakavat kaavakuvia ja liitteitä asukkaille, sekä yrityksiä, jotka julkaisevat vuosikertomuksia ja tiedotteita verkkosivuillaan.

Journalistiliiton jäsenistössä ja tietosuojasta vastaavien IT-osastoilla metatietojen poisto on noussut osaksi julkaisua edeltävää tarkistuslistaa monissa organisaatioissa, samalla tavalla kuin oikoluku tai kuvan tekijänoikeuksien tarkistus. Koska Suomi ja muut Pohjoismaat käyttävät Linux-pohjaisia palvelinympäristöjä laajalti julkishallinnossa ja tutkimuslaitoksissa, MAT2 sopii tähän ympäristöön luontevasti: se voidaan liittää suoraan osaksi julkaisuputkea ilman kaupallista lisenssiä tai erillistä Windows-konetta pelkkää metatietojen poistoa varten.

Avoimen lähdekoodin luonne on myös itsessään etu julkishallinnolle. Kun työkalun koodi on kokonaan luettavissa ja auditoitavissa, virasto tai kunta voi arvioida sen soveltuvuuden itse ilman riippuvuutta yhden valmistajan tuotepäätöksistä tai lisenssimalleista. Tämä on erityisen tärkeää tilanteissa, joissa käsiteltävä materiaali on itsessään arkaluontoista, kuten sosiaali- ja terveydenhuollon liitteet tai poliisin julkaisemat aineistot, joissa metatietojen huolellinen poisto ei ole vapaaehtoista vaan osa lakisääteistä tietosuojavelvoitetta.

Valmis projekti: automatisoitu julkaisua edeltävä puhdistusskripti

Kokoa nyt kaikki opitut vaiheet yhdeksi valmiiksi bash-skriptiksi, jonka voit ajaa aina ennen tiedostojen julkaisua. Skripti tarkistaa riippuvuudet, listaa löydetyt metatiedot lokitiedostoon, puhdistaa tiedostot ja siirtää valmiit tiedostot omaan julkaistava-kansioon, jolloin alkuperäiset pysyvät koskemattomina.

#!/bin/bash
# puhdista_ennen_julkaisua.sh
# Käyttö: ./puhdista_ennen_julkaisua.sh lahdekansio

set -e

LAHDE="$1"
JULKAISTAVA="./julkaistava"
LOKI="./mat2_loki_$(date +%Y%m%d).txt"

if [ -z "$LAHDE" ]; then
  echo "Käyttö: $0 "
  exit 1
fi

mat2 --check-dependencies

mkdir -p "$JULKAISTAVA"
echo "MAT2-puhdistus alkoi" > "$LOKI"

find "$LAHDE" -type f \( -iname "*.jpg" -o -iname "*.png" -o -iname "*.pdf" \
  -o -iname "*.docx" -o -iname "*.mp3" -o -iname "*.zip" \) | while read -r tiedosto; do
  echo "Käsitellään: $tiedosto" | tee -a "$LOKI"
  mat2 --show "$tiedosto" >> "$LOKI" 2>&1 || true
  mat2 "$tiedosto"
  puhdas="${tiedosto%.*}.cleaned.${tiedosto##*.}"
  if [ -f "$puhdas" ]; then
    mv "$puhdas" "$JULKAISTAVA/"
    echo "  -> siirretty kansioon $JULKAISTAVA" | tee -a "$LOKI"
  fi
done

echo "Valmis. Katso loki: $LOKI"

Aja skripti antamalla lähdekansio parametrina, esimerkiksi ./puhdista_ennen_julkaisua.sh ~/Kuvat/loma2026. Skripti kirjoittaa jokaisen tiedoston löydetyn metatiedon lokiin ennen puhdistusta, jotta voit jälkikäteen todentaa, mitä oikeasti poistettiin. Voit ajastaa skriptin cronilla, jos julkaisuprosessi on toistuva, esimerkiksi viikoittainen kuvapankin päivitys.

Esimerkkitapaus: freelance-toimittajan työnkulku ennen julkaisua

Katsotaan käytännön esimerkki, jossa freelance-toimittaja on saanut lähteeltä 14 kuvatiedostoa ja kolme PDF-liitettä, jotka pitää julkaista osana juttua ilman, että lähteen henkilöllisyys vaarantuu. Ensimmäinen askel on siirtää tiedostot omaan työkansioon ja ajaa mat2 –show jokaiselle tiedostolle, jotta nähdään, mitä kentät sisältävät ennen mitään muutoksia. Tässä esimerkissä osa kuvista paljasti GPS-koordinaatit muutaman metrin tarkkuudella ja yhden PDF:n ominaisuuksista löytyi lähteen työsähköposti tekijätietona.

mkdir -p ~/tyot/juttu_syyskuu/lahdemateriaali
cd ~/tyot/juttu_syyskuu/lahdemateriaali
for f in *.jpg *.pdf; do mat2 --show "$f"; done > ~/tyot/juttu_syyskuu/metatieto_ennen.txt

Kun havainnot on tallennettu talteen, toimittaja ajaa varsinaisen puhdistuksen koko kansiolle kerralla, tarkistaa lopputuloksen vielä uudella –show-ajolla (jonka pitäisi nyt olla tyhjä tai lähes tyhjä) ja siirtää vasta sitten cleaned-tiedostot julkaisujärjestelmään. Alkuperäiset tiedostot jäävät erilliseen, salattuun kansioon arkistoksi siltä varalta, että niitä tarvitaan myöhemmin oikeudellisessa prosessissa, mutta niitä ei koskaan lähetetä eteenpäin sellaisenaan.

find . -type f \( -iname "*.jpg" -o -iname "*.pdf" \) -exec mat2 {} +
for f in *.jpg *.pdf; do mat2 --show "$f"; done
mkdir -p ../julkaistava
mv *.cleaned.* ../julkaistava/

Tämä kolmivaiheinen malli, tarkista ennen, puhdista, tarkista jälkeen, toimii pohjana lähes mihin tahansa julkaisua edeltävään prosessiin riippumatta siitä, onko kyse yhdestä kuvasta vai sadan tiedoston erästä.

Sama malli sopii yhtä hyvin muillekin ammattiryhmille kuin toimittajille. Kiinteistönvälittäjä voi ajaa saman prosessin asuntokuville ennen myynti-ilmoituksen julkaisua, jolloin asiakkaan kotiosoite ei paljastu tarkemmin kuin ilmoituksessa on tarkoitus. Kunnan tiedottaja voi liittää skriptin osaksi vakiotyönkulkua ennen kokouspöytäkirjojen liitteiden julkaisua verkkosivustolla, jolloin valmistelijoiden nimet eivät kulkeudu PDF:n ominaisuuksiin vahingossa. Periaate pysyy samana riippumatta toimialasta: tiedoston näkyvä sisältö ja sen mukana kulkeva metatieto ovat kaksi eri asiaa, ja vain jälkimmäisen tarkistaminen erikseen paljastaa koko kuvan.

Yleisimmät virheet MAT2:n käytössä

Nämä viisi virhettä toistuvat useimmin, kun MAT2:ta käytetään ensimmäisiä kertoja.

  • –inplace ilman varmuuskopiota. Ylikirjoitat alkuperäisen tiedoston pysyvästi. Jos puhdistus rikkoo tiedoston, alkuperäistä ei enää ole. Kopioi tiedosto aina ennen –inplace-käyttöä.
  • Luottaminen pelkkään –show-tulokseen. Tyhjä lista ei todista, että tiedosto on täysin puhdas. Puhdista silti, älä vain tarkista.
  • Tukemattoman tiedostomuodon olettaminen toimivaksi. MAT2 ei ilmoita aina selkeästi, jos muoto puuttuu tuettujen listalta. Tarkista mat2 –list etukäteen, jos tiedostotyyppi on epätavallinen.
  • Cleaned-tiedostojen unohtaminen alkuperäisten sekaan. Kansio täyttyy nopeasti kaksinkertaisista tiedostoista, jos et siirrä puhdistettuja versioita omaan kansioonsa erätöiden jälkeen.
  • Nautilus- tai Dolphin-laajennuksen puuttuminen asennuksen jälkeen. Pelkkä paketin asennus ei aina riitä, koska tiedostonhallinta pitää usein käynnistää uudelleen (nautilus -q), jotta valikko ilmestyy.
  • Kaikkien tiedostojen puhdistaminen samalla asetuksella. Tekstipohjainen PDF ja tavallinen valokuva eivät tarvitse samaa käsittelyä. Käytä oletustilaa arkaluontoisimmille tiedostoille ja –lightweight-tilaa niille, joissa rakenteen säilyminen on tärkeämpää kuin täydellinen puhdistus.

Yhteinen nimittäjä näissä virheissä on kiire: MAT2:n peruskomennot ovat yksinkertaisia, mutta juuri yksinkertaisuus houkuttelee ohittamaan tarkistusvaiheen. Kannattaa ottaa tavaksi ajaa –show ennen jokaista isompaa erää ja lukea tuloste, ei vain luottaa siihen, että oletusasetukset hoitavat kaiken automaattisesti oikein. Toinen hyvä tapa on pitää testikansio, jossa kokeilet uutta lippua tai asetusta muutamalla harmittomalla tiedostolla ennen kuin ajat sen tuotantodataan tai arkaluontoiseen lähdemateriaaliin.

Vianmääritys: kahdeksan yleistä ongelmaa

Kokosimme tähän kahdeksan yleisintä ongelmaa, joita käyttäjät kohtaavat MAT2:n kanssa, sekä niiden ratkaisut. Suurin osa näistä ratkeaa muutamassa minuutissa, kun tietää mistä etsiä.

OngelmaTodennäköinen syyRatkaisu
“command not found: mat2”Pakettia ei ole asennettu tai PATH ei löydä pipx-binääriäAja sudo apt install mat2 tai lisää pipx-kansio PATH-muuttujaan (pipx ensurepath)
Cleaned-tiedostoa ei synnyTiedostomuoto ei ole tuettujen listallaTarkista mat2 –list ja vertaa tiedoston MIME-tyyppiin
PDF muuttuu kuvapohjaiseksi puhdistuksen jälkeenOletustila poisti myös rakenteellista dataaKäytä –lightweight-lippua tekstipohjaisille PDF-tiedostoille
Nautilus-valikossa ei näy puhdistusvaihtoehtoapython3-nautilus puuttuu tai laajennusta ei ladattu uudelleenAsenna python3-nautilus ja aja nautilus -q
Dolphin-palveluvalikko puuttuuPalveluvalikkotiedostoja ei asennettu oikeaan kansioonAsenna paketti uudelleen ja kirjaudu ulos ja takaisin sisään
–check-dependencies ilmoittaa puuttuvista kirjastoistaÄänen tai kuvan käsittelykirjastot puuttuvatAsenna jakelun tarjoamat lisäpaketit, esimerkiksi ffmpeg ja python3-mutagen
ZIP-arkiston sisältö katoaa puhdistuksessa–unknown-members-asetus oli abort tai omitKäytä keep, jos haluat säilyttää tunnistamattomat tiedostot arkistossa
Puhdistus kestää poikkeuksellisen kauan isoissa kansioissafind-komento käy läpi myös piilokansiot ja välimuistinRajaa haku -maxdepth-parametrilla tai kohdista se vain tarvittaviin alikansioihin

Jos ongelma ei löydy tästä listasta, seuraava askel on ajaa sama komento –verbose-lipulla (mat2 -V tiedosto), jolloin työkalu tulostaa yksityiskohtaisemman lokin siitä, mitä se yritti tehdä ja missä kohtaa käsittely pysähtyi. Tämä tuloste kannattaa liittää mukaan, jos päädyt raportoimaan ongelman projektin GitHub-peilissä tai 0xacab.org-repositoriossa.

Edistyneet vinkit tehokäyttäjille

Kun perusvaiheet ovat hallussa, muutama lisävinkki nopeuttaa työtä isommissa projekteissa ja auttaa välttämään yllätyksiä tuotantokäytössä. Ensinnäkin, jos työskentelet arkaluontoisen aineiston kanssa palvelimella, harkitse –no-sandbox-lipun jättämistä pois käytöstä: oletuksena MAT2 ajaa tiedostojen käsittelyn bubblewrap-hiekkalaatikossa, mikä rajoittaa vahingollisen tiedoston mahdollisuuksia vaikuttaa muuhun järjestelmään. Poista sandboxaus vain, jos ympäristösi ei tue sitä lainkaan, esimerkiksi tietyissä konttiympäristöissä, joissa bubblewrapin vaatimat kernel-oikeudet eivät ole käytettävissä.

Toiseksi, yhdistä MAT2 versionhallintaan git-hookin avulla, jos julkaiset kuvia tai dokumentteja toistuvasti samasta repositoriosta. Pre-commit-hook, joka ajaa mat2 –check-dependencies ja sen jälkeen puhdistuksen kaikille lisätyille kuville, estää vahingot jo ennen kuin tiedosto päätyy versionhallintaan asti, mikä on erityisen tärkeää, koska git säilyttää historian pysyvästi eikä puhdistamattoman tiedoston metatietoja saa enää poistettua pelkällä myöhemmällä commitilla ilman koko historian uudelleenkirjoittamista.

Kolmanneksi, muista, ettei MAT2 poista sisältöä, vain metatietoa. Se ei sumenna kasvoja kuvista, ei poista vesileimoja eikä anonymisoi dokumentin leipätekstissä olevia nimiä tai osoitteita. Jos julkaisemasi materiaali sisältää arkaluontoista tietoa itse sisällössä, tarvitset erillisen prosessin sen käsittelyyn ennen tai jälkeen MAT2-ajon.

Neljänneksi, jos ylläpidät jaettua palvelinta, jossa useampi käyttäjä ajaa MAT2:ta samoihin kansioihin, harkitse omien käyttöoikeuksien asettamista julkaistava-kansiolle. Näin vältetään tilanne, jossa yksi käyttäjä vahingossa ylikirjoittaa toisen jo puhdistamat tiedostot, ja lokitiedosto (kuten tämän oppaan skriptissä) auttaa jäljittämään, kuka käsitteli mitäkin tiedostoa ja milloin.

Viidenneksi, jos tiedosto sisältää sekä puhdistettavaa metatietoa että salattavaa sisältöä, tee järjestys oikein päin: puhdista tiedosto MAT2:lla ensin ja salaa vasta sen jälkeen esimerkiksi GPG:llä tai VeraCryptillä. Jos teet toisin päin, salaamisohjelmisto voi lisätä oman metatietonsa salatun paketin ympärille, eikä MAT2 pysty enää käsittelemään sisällä olevaa alkuperäistä tiedostoa lainkaan.

MAT2 vs ExifTool: kumpi valita

Kumpikaan työkalu ei ole yksiselitteisesti parempi, vaan valinta riippuu käyttötarkoituksesta ja käyttöympäristöstä. Jos tarvitset kenttäkohtaista hallintaa, esimerkiksi säilytät tekijänoikeusmaininnan mutta poistat sijainnin, tai käsittelet satoja erikoisia tiedostomuotoja kuten kameravalmistajien RAW-tiedostoja, ExifTool tarjoaa enemmän säätövaraa ja laajemman muotokirjon. Jos taas tavoite on yksinkertainen “poista kaikki mahdollinen metatieto ennen julkaisua” ja käytät Linuxia tai Tailsia, MAT2:n oletuskäyttäytyminen ja graafinen integraatio Nautilukseen ja Dolphiniin tekevät siitä nopeamman valinnan arkikäyttöön, koska et joudu opettelemaan lippuja tai kenttänimiä erikseen jokaiselle tiedostomuodolle.

OminaisuusMAT2ExifTool
KäyttöjärjestelmätLinux, BSD, TailsWindows, macOS, Linux
HallintatarkkuusKarkea, poistaa kaiken kerrallaKenttäkohtainen, tarkka
Graafinen käyttöliittymäSisäänrakennettu (Nautilus, Dolphin)Ei sisäänrakennettua, kolmannen osapuolen työkaluja
Tiedostomuotojen määräLaaja mutta rajattu listaErittäin laaja, satoja muotoja
LisenssiLGPL-3.0Perl Artistic License
Sopii parhaitenNopea kaiken poistava käsittely LinuxillaTarkka kenttäkohtainen muokkaus monialustaisesti

Moni Tails- ja Linux-käyttäjä pitää molempia työkaluja asennettuna: MAT2 nopeaan arkikäyttöön ja ExifTool niihin harvinaisempiin tilanteisiin, joissa tarvitaan kenttäkohtaista tarkkuutta tai tukea muodolle, jota MAT2 ei tunnista.

Käytännön nyrkkisääntö on tämä: jos työskentelet toimituksellisen materiaalin, lähdesuojan tai aktivistityön parissa Linuxilla tai Tailsissa, aloita MAT2:sta, koska se on siihen käyttötarkoitukseen suunniteltu alusta asti ja integroitu suoraan käyttöjärjestelmän työkaluihin. Jos taas tarvitset tarkkaa kontrollia yksittäisiin kenttiin, työskentelet Windows- tai macOS-ympäristössä, tai käsittelet erikoisia kameravalmistajakohtaisia RAW-muotoja, ExifTool on todennäköisesti parempi valinta. Kumpikaan valinta ei sulje toista pois, ja moni organisaatio päätyy lopulta käyttämään molempia rinnakkain eri tilanteissa.

Usein kysytyt kysymykset

Toimiiko MAT2 Windowsilla tai macOS:llä?

Ei virallisesti. MAT2 on suunniteltu ja testattu Linux- ja BSD-järjestelmille sekä Tailsille. Windows- ja macOS-käyttäjien kannattaa käyttää ExifToolia tai muuta monialustaista vaihtoehtoa vastaavaan tehtävään.

Poistaako MAT2 metatiedot pysyvästi vai voiko ne palauttaa?

Poisto on pysyvä cleaned-tiedostosta, mutta oletustilassa alkuperäinen tiedosto säilyy koskemattomana. Vain –inplace-lippua käytettäessä alkuperäinen ylikirjoitetaan eikä poistettua dataa saa enää takaisin ilman erillistä varmuuskopiota.

Onko MAT2:ssa tunnettuja tietoturva-aukkoja?

Vuonna 2022 julkaistu CVE-2022-35410 koski hakemistojen ylikävelyä ZIP-arkistojen käsittelyssä versioita ennen 0.13.0. Ongelma korjattiin versiossa 0.13.0, ja kaikki tässä oppaassa suositellut jakeluversiot ovat sitä uudempia, joten haavoittuvuus ei koske niitä. Ongelma vaikutti käytännössä lähinnä mat2-web-palvelinkäyttöön, jossa hyökkääjä pystyi muotoilemaan ZIP-arkiston niin, että purku pääsi kirjoittamaan tiedostoja pyydetyn kansion ulkopuolelle. Paikallinen komentorivikäyttö tavallisella työasemalla ei altistanut samalla tavalla, koska hyökkääjä tarvitsi tähän etäyhteyden käsittelevään palveluun.

Voiko MAT2:n asentaa ilman komentoriviä?

Itse asennus vaatii yleensä pakettienhallinnan komentorivin kautta, koska useimmilla jakeluilla ei ole graafista sovelluskauppaa, josta MAT2 löytyisi valmiina. Asennuksen jälkeen käyttö onnistuu kuitenkin kokonaan graafisesti Nautiluksen tai Dolphinin kautta.

Mitä eroa on –show- ja –lightweight-lippujen välillä?

–show vain näyttää löydetyn metatiedon muuttamatta tiedostoa lainkaan. –lightweight sen sijaan muokkaa tiedostoa ja poistaa osan metatiedosta, mutta ei yhtä paljon kuin oletustila. Käytä –show tarkistukseen ja –lightweight silloin, kun täysi puhdistus rikkoo tiedoston käytettävyyden.

Poistaako MAT2 myös vesileimat tai kuvassa näkyvät kasvot?

Ei. MAT2 käsittelee ainoastaan tiedoston metatietokenttiä, ei näkyvää sisältöä. Vesileimojen, kasvojen tai tekstin sumentaminen vaatii erillisen kuvankäsittelytyökalun.

Kannattaako yrityksen käyttää MAT2:ta GDPR-vaatimusten täyttämiseen?

MAT2 on hyödyllinen tekninen apuväline, mutta se ei yksin riitä GDPR-vaatimustenmukaisuuteen. Se auttaa vähentämään julkaistavien tiedostojen mukana kulkevaa henkilötietoa, mikä tukee tietosuoja-asetuksen 5 artiklan tietojen minimoinnin periaatetta, mutta yrityksen pitää silti dokumentoida käsittelyprosessinsa ja arvioida riskit kokonaisuutena.

Kuinka paljon tilaa cleaned-tiedostot vievät lisää levyltä?

Yleensä hyvin vähän, koska MAT2 vain poistaa dataa eikä lisää sitä. Käytännössä cleaned-tiedosto on usein hieman pienempi kuin alkuperäinen, koska ylimääräiset metatietokentät katoavat. Jos käsittelet kymmeniä tuhansia tiedostoja, kannattaa kuitenkin varata tilapäisesti kaksinkertainen levytila, koska alkuperäiset ja puhdistetut versiot ovat hetken aikaa rinnakkain.

Voiko MAT2:ta käyttää osana CI/CD-putkea?

Kyllä. Koska MAT2 on komentorivityökalu, joka palauttaa selkeän poistumiskoodin onnistumisesta tai epäonnistumisesta, sen voi lisätä osaksi automatisoitua julkaisuputkea samaan tapaan kuin tämän oppaan bash-skriptin. Monet organisaatiot ajavat MAT2:n osana tiedostojen käsittelyvaihetta ennen kuin kuvat tai dokumentit julkaistaan verkkosivustolle tai lähetetään ulkopuolelle.

Kuinka usein MAT2 päivittyy ja pitääkö version pysyä ajan tasalla?

Yläjuoksun julkaisuja ilmestyy epäsäännöllisin väliajoin, tyypillisesti muutaman kerran vuodessa, kun tukea lisätään uusille tiedostomuodoille tai korjataan havaittuja ongelmia. Jakelupaketit päivittyvät hitaammin, koska Debian, Fedora ja Arch testaavat versiot ennen vakaisiin julkaisuihin sisällyttämistä. Tavalliselle käyttäjälle riittää, että pitää järjestelmän pakettivaraston ajan tasalla tavanomaisilla päivityskomennoilla (apt upgrade, dnf upgrade, pacman -Syu), sillä versiosta 0.13.0 alkaen ydintoiminnallisuudessa ei ole ollut tunnettuja tietoturvaongelmia.