zoukankan      html  css  js  c++  java
  • 查看进程打开了哪些文件

    1. 查看进程打开了哪些文件

      sudo lsof -p PID

      如果是分析一个你不太了解的进程,这个命令比较有用。

      可以使用 lsof -p PID | grep TCP 查看进程中的 TCP 连接信息。

    1. 查看文件被哪个进程使用

    使用这个命令查看一个文件被哪些进程正在使用 sudo lsof /path/to/file,示例如下:

    > sudo lsof /home/tu/.virtualenvs/mic/bin/uwsgi

    COMMAND   PID USER  FD   TYPE DEVICE SIZE/OFF     NODE NAME

    uwsgi    2071 tu txt    REG 253,17  1270899 13240576 /home/tu/.virtualenvs/mic/bin/uwsgi

    uwsgi   13286 tu txt    REG 253,17  1270899 13240576 /home/tu/.virtualenvs/mic/bin/uwsgi

    uwsgi   13287 tu txt    REG 253,17  1270899 13240576 /home/tu/.virtualenvs/mic/bin/uwsgi

    uwsgi   13288 tu txt    REG 253,17  1270899 13240576 /home/tu/.virtualenvs/mic/bin/uwsgi

    1. 查看进程当前状态

    当我们发现一个进程启动了,端口也是正常的,但好像这个进程就是不“干活”。比如我们执行的是数据更新进程,这个进程不更新数据了,但还是在跑着。可能数据源有问题,可能我们写的程序有BUG,也可能是更新时要写入到的数据库出问题了(数据库连接不上了,写数据死锁了)。我们这里主要说下第二种,我们自己的程序如果有BUG,导致工作不正常,我们怎么知道它当前正在干什么呢,这时候就要用到Linux中的调试分析诊断strace,可以使用 sudo strace -p PID这个命令。

    通过执行后输出的一些信息,推测分析看是哪些出了问题。

  • 相关阅读:
    [MacOS]Sublime text3 安装(一)
    [RHEL8]开启BBR
    PAT Advanced 1136 A Delayed Palindrome (20分)
    PAT Advanced 1144 The Missing Number (20分)
    PAT Advanced 1041 Be Unique (20分)
    PAT Advanced 1025 PAT Ranking (25分)
    PAT Advanced 1022 Digital Library (30分)
    PAT Advanced 1019 General Palindromic Number (20分)
    PAT Advanced 1011 World Cup Betting (20分)
    PAT Advanced 1102 Invert a Binary Tree (25分)
  • 原文地址:https://www.cnblogs.com/Paul-watermelon/p/10407541.html
Copyright © 2011-2022 走看看