• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Prayer

            在一般中尋求卓越
            posts - 1256, comments - 190, trackbacks - 0, articles - 0
              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理
            用fuser殺掉進程

            一,為什么要使用fuser?
               先說 fuser的作用,
               fuser能識別出正在對某個文件或端口訪問的進程
               大家想一下,還有哪個命令具備這個功能?
               沒錯,是lsof,
               我們前面講過, lsof能夠找出正在對指定文件訪問的進程,
               那么它們兩者之間有何區別?
               fuser有一個特別的用法在于它可以一次殺死那些正在訪問指定文件的進程
               

            二,如何使用fuser?
             
               1,如何用fuser得到正在使用指定文件的進程?
                 用法: fuser 文件
                 說明:它會把正在使用當前文件的進程id列出

                 [root@localhost lhd]# umount /
                 umount: /: device is busy.
                       (In some cases useful info about processes that use
                        the device is found by lsof(8) or fuser(1))
                 [root@localhost lhd]# fuser /
                  /:                       1rc     2rc     3rc     4rc     5rc     6rc     7rc    80rc    82rc    84rc    85rc   153rc   157rc   158rc
                                           160rc   165rc   168rc  203rc   204rc   205rc   253rc   441rc   444rc   516rc   521rc   524rc   582rc   583rc
                                           584rc   633rc  1052rc  1392rc  1394rc  1417rc  1597rc  1609rc  1617rc  1620rc  1683rc  1744rc  1783r  1785rc
                                           1788rc  1806r  1808r  1810rc  1811rc  1812rc  1813rc  1814rc  1815rc  1848rc  1886rc  1899rc  1900rc  2001rc
                                           ......太多不一一列出

                  說明:
                  這些進程號后面的rc是什么意思?
                 
                  c 將此文件作為當前目錄使用。
                  e 將此文件作為程序的可執行對象使用。
                  r 將此文件作為根目錄使用。
                  s 將此文件作為共享庫(或其他可裝載對象)使用

               2,如何列出進程的詳細信息,而不僅僅是進程id?
                 用 -v參數即可
                 說明: -v:  含義是:verbose output,詳細的輸出信息
                 例子:

                 [root@dev ~]# fuser /var/log
                 /var/log:             4196c
                 [root@dev ~]# fuser -v /var/log
                 
                                      USER        PID ACCESS COMMAND
                 /var/log:            root       4196 ..c.. bash

                3,如何列出進程所屬的用戶?
                 用 -u參數即可
                 說明: -u: 含義:display user IDs,顯示用戶id
                
                 例子:
                 [root@dev ~]# fuser -u /var/log
                 /var/log:             4196c(root)

                 4,如何殺死所有正在訪問指定文件的進程?
                 用 -k參數即可
                 說明: -k:含義: kill processes accessing the named file

                 例子:

                 [root@localhost lhd]# fuser -v /root/install.log
                                      用戶     進程號 權限   命令
                 /root/install.log:   root       3185 f.... tail
                 [root@localhost lhd]# fuser -k /root/install.log
                 /root/install.log:    3185
                 [root@localhost lhd]# fuser -v /root/install.log

                 說明: -k參數能夠殺死所有的正在訪問指定文件的進程,所以用來殺進程時非常方便
                 說明之二: fuser如何殺死的進程?
                         它發送的是這個信號:SIGKILL



            三,多學一點知識

                1,fuser可以列出它所知的信號:
                 用 -l參數即可
                
                 例子:
                 [root@dev ~]# fuser -l
                 HUP INT QUIT ILL TRAP ABRT IOT BUS FPE KILL USR1 SEGV USR2 PIPE ALRM TERM
                 STKFLT CHLD CONT STOP TSTP TTIN TTOU URG XCPU XFSZ VTALRM PROF WINCH IO PWR SYS
                 UNUSED

                2,fuser可以發送它已知的信號給訪問的指定文件進程而代替-k參數默認發送的SIGKILL
                  例如:只是掛起進程,那么發送HUP信號就可以了
                
                  例子:
                  [root@localhost lhd]# fuser -v /root/install.log
                                       用戶     進程號 權限   命令
                  /root/install.log:   root       3347 f.... tail
                  [root@localhost lhd]# fuser -k -SIGHUP /root/install.log
                  /root/install.log:    3347
                  [root@localhost lhd]# fuser -v /root/install.log
            久久精品国产一区二区三区日韩| 99久久免费国产精品热| 老司机午夜网站国内精品久久久久久久久| 一本大道久久a久久精品综合| 久久国产午夜精品一区二区三区| 国产精品VIDEOSSEX久久发布| 99精品久久精品| 午夜视频久久久久一区 | 国产激情久久久久影院老熟女免费| 久久综合中文字幕| 久久免费看黄a级毛片| 久久99精品综合国产首页| 久久香综合精品久久伊人| 亚洲国产成人久久综合碰碰动漫3d| 久久人人爽人人爽人人片AV东京热| 国产精品视频久久| 丁香色欲久久久久久综合网| 国产精品成人久久久久三级午夜电影 | 精品久久久久中文字幕日本| 亚洲国产二区三区久久| 亚洲第一极品精品无码久久| 久久无码人妻精品一区二区三区| 久久久无码人妻精品无码| 久久久国产99久久国产一| 国产精品熟女福利久久AV| 国产精品久久久久9999高清| 99精品久久久久久久婷婷| 综合久久给合久久狠狠狠97色 | 久久久久噜噜噜亚洲熟女综合| 国产精品毛片久久久久久久| 精品熟女少妇AV免费久久 | 国产成人精品久久综合 | 亚洲精品NV久久久久久久久久 | 99久久99久久久精品齐齐 | 91精品国产91久久综合| 久久影院综合精品| 色欲久久久天天天综合网 | 久久精品国产半推半就| 久久伊人精品青青草原高清| 九九99精品久久久久久| 国产成人综合久久久久久|