Post  |  Commenti

Post Meta

6th
MAR

Trovare file o device occupati

1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 1,00 out of 5)
Loading ... Loading ...

Posted by raphe | Filed under Appunti, Linux

Vi sarà sicuramente capitato qualche volta di dover cancellare file o directory e di non poterlo fare perché essi erano utilizzati da qualche processo. Parimente vi sarà capitato di dover smontare qualche periferica esterna ed essere impossibilitati a farlo perché ancora in uso. Se in entrambi i casi avete fatto una faccia del genere 0_0 perché non li stavate usando, questo è l’articolo che fa per voi.

Il problema è che spesso i file o i device sono aperti da processi che non vediamo oppure dei quali ci siamo dimenticati. Un paio di comandi ci possono aiutare a risolvere queste situazioni. Si tratta di lsof e fuser.

lsof
questo comando permette di vedere la lista dei file aperti nel sistema. Fornisce informazioni sul processo che lo sta usando, il pid, l’utente che lo ha aperto, di che tipo si tratta, ecc. Se lo lanciate senza parametri il risultato a video sarà un po’ caotico visto che saranno indicati anche connessioni, pipe, ecc. Personalmente consiglio di usarlo in questo modo:

lsof -u NOME_UTENTE

per avere tutti i file aperti da quel determinato utente e, meglio ancora:

lsof -u NOME_UTENTE | grep NOME_FILE

per avere direttamente a video le informazioni sul file che desiderate.

fuser
nel caso in cui il comando precedente non vi soddisfi oppure non ci capite nulla dell’output restituito, potete provare ad usare fuser. Quest’ultimo serve a comunicare il processo che usa un determinato file. Quindi l’approccio è diverso dal precedente dove si mostravano tutti i file e poi si filtrava l’output a piacere. Ciò significa che dovete conoscere il nome del file/device che volete cercare.
La sintassi che consiglio è la seguente:

fuser -av PATH_DEL_FILE

con il quale avrete a video un breve output indicante utente che ha aperto il file, processo che lo sta usando e pid di esso.

Una volta individuato il file o il device incriminato, potete agire di conseguenza. Ciò significa che dovrete chiudere il processo che lo usa e poi procedere l’operazione che precedentemente si bloccava.
AVVERTENZA: sia chiaro, non sto dicendo di killare bruscamente il processo per essere liberi di proseguire. Se qualcuno sta usando quel file un motivo ci sarà! Quindi andateci piano, cercate di capire chi lo usa e per cosa e poi proseguite.

Tags: > > > > > >

Reader's Comments

  1. DaRyL |

    …e per winzoz c’e’ “Unlocker” facile da installare e attivo come shell extension!

    Antonio

Leave a Reply


Il contenuto di questo Blog è rilasciato sotto Licenza Creative Commons (Leggi)