Calvin's Tech Space

          成于堅忍,毀于浮躁

             :: 首頁 :: 聯系 :: 聚合  :: 管理

          當任何目錄有 mount, 然后有程序使用/掛在那個目錄上的話, 就沒有辦法 umount 掉, 於 umount 時會出現 Device is busy 的訊息.

          要怎麼找出是哪個程序掛在那個目錄上? 然后去把那個程式砍掉呢?

          使用 fuser 的指令

          那要怎麼找出是哪個程式掛在那個目錄上?可以使用 fuser - identify processes using files or sockets

          假設現在 mount 起來的目錄是 /media/share

              * 查詢: fuser -m /media/share
              * 顯示: /media/share: 25023c

          就代表是 process 25023(pid) 有使用到此目錄, 后面 c 代表的意思可參考下述:

              * c: current directory.
              * e: executable being run.
              * f: open file. f is omitted in default display mode.
              * F: open file for writing. F is omitted in default display mode.
              * r: root directory.
              * m: mmap'ed file or shared library.

          要把這個資源釋放的話, 可以有下述做法:

              * kill -9 25023 # ps aux | grep 25023 應該就會看到它
              * fuser -m -v -i -k /media/share # 會問你是不是要把 25023 這個 kill 掉, 選 y 就會 kill 掉

                    提示信息如下:
                    USER      PID   ACCESS COMMAND
                    /meida/share: root      25023 ..c..  bash
                    Kill process 25023 ? (y/N) y

          posted on 2010-05-11 00:06 calvin 閱讀(230) 評論(0)  編輯  收藏 所屬分類: Linux
          主站蜘蛛池模板: 定兴县| 阿鲁科尔沁旗| 鹿邑县| 濮阳市| 城口县| 大新县| 青冈县| 高唐县| 博客| 普洱| 连江县| 霍邱县| 栖霞市| 诏安县| 鄱阳县| 太仓市| 大丰市| 长岛县| 定陶县| 阿拉善右旗| 汤原县| 山阴县| 延寿县| 延安市| 固始县| 玛沁县| 福建省| 丰都县| 邢台县| 盐亭县| 兴安盟| 东莞市| 白水县| 山西省| 兴城市| 胶州市| 怀集县| 阳江市| 马尔康县| 禄劝| 临潭县|