Spravujte otvorené súbory na súborovom serveri Windows

Správcovia súborového servera Windows musia často nútiť používateľov, aby zavreli súbory otvorené používateľmi. Taký problém vzniká, keď viacerí používatelia pracujú súčasne s jedným súborom. Ak softvér nepracuje správne alebo používateľ dokončí reláciu správne, súbory v sieťovom priečinku sa otvoria a uzamknú a ostatní používatelia v ňom nemôžu vykonať zmeny. V tomto článku si ukážeme, ako získať zoznam otvorených súborov na súborovom serveri, zistiť, ktorí používatelia ich používajú, a ako tieto relácie súborov resetovať..

obsah:

  • Zoznam otvorených súborov na súborovom serveri Windows
  • Ako zistiť, ktorý používateľ súbor otvoril
  • Ako zatvoriť otvorený súbor
  • Ako vzdialene zatvoriť otvorené súbory pomocou

Zoznam otvorených súborov na súborovom serveri Windows

Zoznam súborov otvorených používateľmi na súborovom serveri Windows je možné získať pomocou štandardnej grafickej konzoly Správa počítačov (Správa počítačov - compmgmt.msc).

Spustite konzolu Správa počítača na súborovom serveri (alebo sa k nej pripojte na diaľku pomocou konzoly z počítača) a prejdite na časť Systémové nástroje -> Zdieľané priečinky -> Otvorte súbory (Obslužné programy -> Zdieľané priečinky -> Otvorené súbory). Na pravej strane okna sa zobrazuje zoznam súborov servera otvorených na diaľku. Zoznam obsahuje lokálnu cestu k súboru, názov používateľského účtu, počet zámkov a režim otvorenia súboru (čítanie alebo zápis + čítanie).

Rovnaký zoznam otvorených súborov je možné získať pomocou zabudovaného obslužného programu konzoly Openfiles. Napríklad pomocou nasledujúceho príkazu môžete získať ID relácie, užívateľské meno a úplnú lokálnu cestu k otvorenému súboru:

Openfiles / Query / fo csv | viac

Keď používateľ vzdialene pristupuje k priečinku alebo súboru v sieťovom priečinku (SMB) na serveri, pre používateľa, ktorý definuje toto pripojenie, sa vytvorí nová relácia. Užívateľské pripojenia sa spravujú prostredníctvom týchto identifikátorov relácie..

Rovnaký príkaz je možné vykonať na diaľku, napríklad potrebujete zoznam otvorených súborov na súborovom serveri mskfs01:

Openfiles / Query / s mskfs01 / fo csv

Tím Openfiles má ďalšiu zaujímavú príležitosť na prezeranie zoznamu lokálne otvorených súborov. Aby ste ju mohli používať, musíte povoliť možnosť Zachovať zoznam objektov pomocou príkazu openfiles / local on a reštartujte server. Potom sa do zoznamu dostanú súbory otvorené miestnymi procesmi (tento režim je vhodné používať iba na ladenie, pretože to môže mať negatívny vplyv na výkon servera).

Ako zistiť, ktorý používateľ súbor otvoril

Identifikácia používateľa, ktorý otvoril (zamknutý) súbor cons.adm na serveri spustite príkaz:

Openfiles / Query / s mskfs01 / fo csv | nájsť / i "cons.adm"

kľúč / i používa sa na vyhľadávanie bez rozlišovania veľkých a malých písmen

Prirodzene môžete zadať iba časť názvu súboru. Napríklad musíme zistiť, kto otvoril súbor xlsx, ktorého názov je riadková farma, používame tento plynovod:

Openfiles / Query / s mskfs01 / fo csv | nájsť / i "farma" nájsť / i "xlsx"

Súbor môžete samozrejme nájsť v grafickej konzole Správa počítača, ale je to menej pohodlné (konzola neposkytuje možnosti vyhľadávania).

Ako zatvoriť otvorený súbor

Ak chcete zatvoriť otvorený súbor, musíte ho nájsť v zozname súborov v časti Otvoriť súbor a vybrať možnosť „Zatvorte otvorený súbor".

Ak sú na súborovom serveri stovky otvorených súborov, ich nájdenie v konzole nebude ľahké. Je pohodlnejšie používať pomôcku Openfiles. Ako sme už povedali, vracia ID relácie otvoreného súboru. Je to pre toto ID relácie, že súbor môže byť násilne zatvorený obnovením spojenia. Vyhľadajte ID požadovaného súboru:

Openfiles / Query / s mskfs01 / fo csv | nájsť / i "farma" nájsť / i ".xlsx"

Užívateľa od neho odpojíme prijatým identifikátorom:

Openfiles / Disconnect / s mskfs01 / ID 67109098

Ako vzdialene zatvoriť otvorené súbory pomocou

V systéme Windows Server 2012 / Windows 8 spoločnosť PowerShell predstavila rutiny cmdlet pre prácu s loptičkami a súbormi na serveri SMB. Tieto rutiny cmdlet sa dajú použiť na vzdialené obnovenie pripojení k otvorenému súboru..

Zoznam otvorených súborov je možné získať pomocou Get cmdlets.-SMBOpenFile , a zatvorte súbor (resetujte pripojenie) pomocou Close-SmbOpenFile.

Preto sa pripájame k vzdialenému serveru:

$ sessn = Nový-CIMSession - názov mskfs01

Nájdite a zatvorte otvorený súbor pubs.docx jedným príkazom:

Get-SMBOpenFile -CIMSession $ sessn | kde $ _. Cesta "* pubs.docx" | Zatvorte-SMBOpenFile -CIMSession $ sessn

Zatvorenie súboru potvrďte stlačením Y.

Ak chcete odstrániť potvrdenie núteného zatvorenia súboru na serveri, použite prepínač -Force

Rovnaké príkazy sa dajú použiť napríklad na zatvorenie všetkých súborov otvorených niektorým používateľom (používateľ šiel domov a súbory neuvoľnil). Napríklad, ak chcete resetovať všetky relácie súborov pre ipivanov, urobte

Get-SMBOpenFile -CIMSession $ sessn | kde $ _. ClientUserName-like "* ipivanov *" | Close-SMBOpenFile -CIMSession $ sessn