Windows - Hálózatról megnyitott fájlok kezelése XP alatt

Főleg rendszergazdáknak sokszor hasznos lehet tudni, hogy egy gépen kik és milyen fájlokat nyitnak meg a hálózat egy másik gépéről. További hasznos tulajdonság, ha ezeket a munkameneteket le is tudjuk zárni, megakadályozva ezzel, hogy a felhasználó tovább használja őket. Cikkünkben bemutatunk egy segédprogramot, amely képes a fenti feladatok elvégzésére.
A Windows XP sok újítása között megtalálható egy parancssori segédprogram, amely a hálózaton megnyitott fájlok kezelését valósítja meg. Láthatóvá teszi, hogy kik, milyen mappában, milyen fájlokat nyitottak meg. Mindegyiket ellátja egy azonosítószámmal és lehetővé teszi ez alapján a bezárásukat is. A program neve OPENFILES.EXE és a %systemroot%\system32 könyvtárban kapott helyet. Kétféle üzemmódban képes működni, az egyikkel lekérdezi az aktuális megnyitásokat a másikkal pedig bezárja őket.
Megnyitott fájlok listázása
Ahhoz, hogy megtudjuk, hogy az adott gépen milyen fájlokat nyitottak meg a hálózatról adjuk ki a következő utasítást.
openfiles /query
Az adatok táblázatos formában jelennek meg a képernyőn, de nem ez az egyetlen lehetőség. A /fo kapcsolóval további formátumok is előcsalhatók.
Listaszerű megjelenítés:
openfiles /query /fo list
Táblázatkezelőbe importálható CSV formátum előállítása:
openfiles /query /fo csv
Az alapértelmezett táblázatos forma szerinti megjelenítés:
openfiles /query /fo table
A "Table" vagy "CSV" másodkapcsolók után egy /nh (No Header) is a rendelkezésünkre áll. Feladata, hogy kikapcsolja az oszlopfejlécek megjelenítését.
openfiles /query /fo table /nh
Lehetőségünk van bővíteni a megnyitásokról megjelenő információk mennyiségét. Megtudhatjuk például a zárolások számát, a megnyitás módját (írás, olvasás) ha alkalmazzuk a /v kapcsolót.
openfiles /query /v
Eddig a helyi gépen dolgoztunk, de a parancs képes a hálózat egy távoli gépének lekérdezésére is. Ha ott is érvényes a felhasználói nevünk és jelszavunk, akkor nem kell mást tenni, mint a /s kapcsoló után megadni a célgép nevét.
openfiles /query /s Clementina
Ha viszont nem érvényes, akkor meg kell adnunk egy érvényes fiók adatait.
openfiles /query /s Clementina /u felhasználói_név /p jelszó
Ha batch fájlból vagy szkriptből futtatjuk a parancsot, akkor minden esetben figyeljünk oda, hogy a jelszó titkosítás nélkül tárolódik.
Felhasználók és megnyitott fájlok leválasztása
A fenti listák minden bejegyzéséhez (sorához) tartozott egy azonosítószám. Erre most a munkamenetek leválasztásánál lesz szükség. Például zárjuk le 11-es azonosítószámmal ellátott állományt.
openfiles /disconnect /id 11
Itt már nem a "/query", hanem a "/disconnect" kapcsolóval dolgoztunk. Másik lehetőség, hogy egy adott felhasználóhoz tartozó összes munkamenetet lezárunk.
openfiles /disconnect /a Tibor
Példánkban a Tibor nevű felhasználó által megnyitott fájlokat zártuk be. A bezárás történhet a fájl neve szerint is, de azonosítót ekkor is kell megadni, mert lehet, hogy többen nyitották meg ugyanazt az állományt.
openfiles /disconnect /op "c:\share\readme.doc" /id 12
Helyileg megnyitott fájlok listázása
Visszatérve a /query kapcsolóhoz érdekesség, hogy a helyileg megnyitott fájlokat is képes megjeleníteni, ha be van kapcsolva ez a funkció. Az alábbi utasítás kiadásával kapcsolhatjuk be.
openfiles /local on
Indítsuk újra a számítógépet a változtatás érvényesítéséhez és a fenti módszerek valamelyikével kérjük le ismét a megnyitások listáját. Rövid várakozás után a helyi fájlokkal bővített eredményt is látni fogjuk. A szolgáltatás kikapcsolását így végezhetjük el:
openfiles /local off