A közelmúltban belefutottam egy olyan problémába, amikor egy csatlakoztatott SSHFS fájlrendszer nem volt hajlandó leválasztani.

Megpróbáltam leválasztani a Nautiluson belülről a jobb gombbal a csatlakoztatásra kattintva és az Unmount kiválasztásával, de ez egy hibaüzenettel nem sikerült. A hiba közölte, hogy az eszközt nem lehet leválasztani, és a következő okot adta meg: “mount disagrees with the fstab”.

Ezután megszerkesztettem az fstab-ot (sudo vi /etc/fstab), és kikommentáltam az eszközre vonatkozó bejegyzést. Megpróbáltam újra lecsatolni a Nautilusban, de ezúttal azt mondta, hogy nem tudom lecsatolni az eszközt, mert nem vagyok root, és az eszköz nem szerepel az fstab-ban. Ezután kikommenteltem a korábban kommentált sort, és újra elmentettem a fájlt.

Az idő mocskolódik. Megpróbáltam manuálisan futtatni a umount, de nem sikerült:

$ sudo umount /mnt/shareumount: /mnt/share: device is busy. (In some cases useful info about processes that use the device is found by lsof(8) or fuser(1))$ 

Ez most már kezdett személyessé válni, mivel az előző üzenetek nem mondtak semmit arról, hogy az eszköz használatban van. Bezártam minden alkalmazást és újra próbálkoztam. Ugyanaz a hibaüzenet.

Követtem az utasításokat és lefuttattam a man lsof majd a man fuser parancsot, hogy többet tudjak meg ezekről az ajánlott parancsokról. a fuser volt a nyerő.

a fuser lehetővé teszi, hogy részletes információkat tudjunk meg azokról a folyamatokról, amelyek bizonyos fájlokat vagy foglalatokat használnak. Az információszerzés mellett lehetővé teszi a fájlhoz vagy foglalathoz hozzáférő folyamatok megállítását is. Pontosan ez volt az, amit kerestem.

A fuser szintaxisának elolvasása után a következőt futtattam:

$ sudo fuser -km /mnt/share/mnt/share/: 9004c$ 

Ez a parancs lényegében azt jelenti, hogy “keress meg minden folyamatot, amelyik hozzáfér a /mnt/share csatolási ponthoz, és öld meg”. Mivel nem voltam biztos a megölendő folyamatok tulajdonjogában, sudo-val futtattam, hogy megbizonyosodjak arról, hogy minden folyamat megölhető.

A /mnt/share/: 9004c válasz azt jelenti, hogy egy 9004-es azonosítójú folyamat meg lett szüntetve.

Még egyszer lefuttattam:

$ sudo umount /mnt/share$ 

Ez a parancs vidáman semmit sem válaszolt, ami jó jel, hiszen ez azt jelenti, hogy az umount parancs sikeres volt.

Végre a mount lecsatolása megtörtént. Most már csak arra kellene emlékeznem, hogy mit akartam csinálni, amikor ez a probléma történt…

Segítettem?

  • Küldjön nekem egy tippet Paypalon keresztül.
  • Segítsen az oldal tárhelyén a Linode referral kódommal.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.