1. netstat/lsof
  2. netstat命令用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况
  3. -a 显示一个所有的有效连接信息列表(包括已建立的连接,也包括监听连接请求的那些连接)
  4. -n 显示所有已建立的有效连接
  5. -t tcp协议
  6. -u udp协议
  7. -l 查询正在监听的程序
  8. -p 显示正在使用socket的程序识别码和程序名称
  9. 例如:netstat -ntupl|grep processname
  10. 如何只查询tomcat的连接?
  11. netstat -na|grep ESTAB |grep 80 |wc-l
  12. netstat -na|grep ESTAB |grep 8080 |wc-l
  13. 常用端口介绍:
  14. 端口:21
  15. 服务:FTP服务器所开放的端口,用于上传、下载。
  16. 端口: 22
  17. 服务:ssh
  18. 端口: 80
  19. 服务:HTTP 用于网页浏览
  20. 端口:389
  21. 服务:LDAP ILS 轻型目录访问协议和NetMeetingInternet Locator Server
  22. 端口:443
  23. 服务:网页浏览端口 能提供加密和通过安全端口传输的另一种HTTP
  24. 端口:8080
  25. 服务:代理端口
  26. 打开终端,执行如下命令,查看各进程占用端口情况:
  27. # ps -ef|wc -l //查看后台运行的进程总数
  28. # ps -fu csvn //查看csvn进程
  29. # netstat -lntp //查看开启了哪些端口
  30. # netstat -r //本选项可以显示关于路由表的信息
  31. # netstat -a //本选项显示一个所有的有效连接信息列表
  32. # netstat -an|grep 8080
  33. # netstat -na|grep -i listen //可以看到目前系统侦听的端口号
  34. # netstat -antup //查看已建立的连接进程,所占用的端口。
  35. netstat -anp|grep1487
  36. lsof -i:1487
  37. 查看哪些进程打开了指定端口1487
  38. 关闭端口实际上是关闭其对应的服务,比如80端口是HTTPD 关闭80端口可以通过关闭httpd服务来实现
  39. 每个端口都有一个守护进程,kill掉这个守护进程就可以了
  40. 主机的端口分为监听端口与随机可用的高级端口
  41. 监听端口:监听端口就是主机开启了哪些服务,这个服务会在linux系统里启用一个端口来监听客户端的请求
  42. 随机可用的高级端口:
  43. linux要向某个主机请求服务时,linux主机需要启用一个端口来对外连接linux会随机去用一个未被使用且端口号大于1024的端口进行连接
  44. 只有root用户可以开启1-1024端口表明拥有root权限
  45. netstat-n 显示连接状态
  46. netstat-tl 显示当前正在监听的服务名称
  47. linux是一个列出当前系统打开文件的工具,在linux环境下,任何事物都以文件的形式存在。
  48. lsof输出信息 即可显示系统打开的文件默认显示所有进程打开的所有文件
  49. lsof filename 显示打开指定文件的所有进程
  50. lsof -c string 显示command列中包含指定字符的进程所有打开的文件
  51. lsof -u username 显示所属user进程打开的文件
  52. lsof -g gid 显示归属gid的进程情况
  53. lsof -i 显示符合条件的进程情况
  54. lsof -d 显示指定文件描述符的进程
  55. lsof -a 标示两个参数都必须满足时才显示结果
  56. 例如: lsof-i:1487
  57. 查看所属root用户进程所打开的文件类型为txt的文件:
  58. lsof -a -u root -d txt
  59. lsof使用实例
  60. 1.查找使用文件系统
  61. 卸载文件系统时,如果文件系统中有任何打开的文件,就会出错。可以通过lsof可以找出那些进程在使用当前卸载的文件系统
  62. # lsof /GTES11/
  63. COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
  64. bash 4208 root cwd DIR 3,1 40962 /GTES11/
  65. vim 4230 root cwd DIR 3,1 40962 /GTES11/
  66. 2.恢复删除的文件
  67. 当linux计算机受到入侵时,常见的情况是日志文件被删除,管理错误也会导致意外删除重要的文件。
  68. 当进程打开了某个文件时,只要该进程保持打开该文件时,即使删除,依然存在于磁盘上。这意味着,进程并不知道文件已被删除,在/proc目录下,其中包含了反映内核和进程树的各种文件。
  69. 当系统中的某个文件被意外地删除了,只要这个时候系统中还有进程正在访问文件,可以通过lsof从/proc目录下恢复该文件
  70. 使用lsof来查看当前是否有进程打开/var/logmessages文件
  71. # lsof |grep /var/log/messages syslogd 1283 root 2w REG 3,3 5381017 1773647 /var/log/messages (deleted) 从/proc/1283/fd/2
  72. 对于许多应用程序,尤其是日志文件和数据库,这种恢复删除文件的方法非常有用

linux 通过哪个命令可以查看某个服务及其端口、进程号的更多相关文章

  1. 用kubeadm 搭建 高可用集群问题记录和复盘整个过程 - 通过journalctl -u kubelet.service命令来查看kubelet服务的日志

    1.根据  https://github.com/cookeem/kubeadm-ha/blob/master/README_CN.md  去搭建ha集群,遇到几个问题: runtime networ ...

  2. [转帖]如何在Linux上使用命令行查看硬件信息

    如何在Linux上使用命令行查看硬件信息 时间:2016-01-13   作者:admin 分类:新手入门 阅读:126次 http://embeddedlinux.org.cn/emb-linux/ ...

  3. Linux利用nc命令脚本批量检测服务器指定端口是否开放

    一.nc命令检测端口的用法 # nc -v -w 10 %IP% -z %PORT% -v 显示指令执行过程. -w <超时秒数> 设置等待连线的时间. -u 表示使用UDP协议 -z 使 ...

  4. Linux平时常用命令_查看进程_监控日志等命令

    1.查进程     ps命令查找与进程相关的PID号:    ps a 显示现行终端机下的所有程序,包括其他用户的程序.    ps -A 显示所有程序.    ps c 列出程序时,显示每个程序真正 ...

  5. 【Linux】常用命令 lsof查看打开的文件

    Linux系统把软硬件都抽象成文件,所以通过文件可以追踪到很多重要信息,如读取的配置文件.打开的端口等. 下面是常见的用法: 默认测试文件名为text.txt 1,显示打开text.txt的进程: l ...

  6. 系统中sshd进程的查看,数量统计,进程号输出,进程清理命令

    1. 查看sshd进程 ps -ef|grep sshd ps -ef:打开所有的进程 grep sshd:过滤出含有“sshd”字符的进程. 2. 查看sshd进程中的sftp进程,不含查询的进程 ...

  7. linux将程序扔到后台并获取程序的进程号

    我们经常需要写一些执行时间较长的程序,但是如果在程序执行过程中超时了,有许多原因,可能是程序已经挂起了,这时就需要杀死这样的进程,则可以通过如下的命令执行: java -jar TestProcess ...

  8. windows下端口占用解决方法-查看和杀死占用端口进程

    在Windows下启动程序时有时会遇到端口被占用的情况,由于一个端口同时只能运行一个进程,所以要想启动新的程序就要先把占用该端口的进程给kill掉,具体的命令分为以下三步, 以杀死占用了80端口的进程 ...

  9. Linux菜鸟——常见命令一 查看及创建目录文件等命令

    命令行提示符 [root@localhost ~]# [当前用户名@主机名 当前所在目录]$ linux 超级用户 root window 超级用户 administartor # 超级用户 $ 普通 ...

随机推荐

  1. SGU 410 Galaxy in danger --贪心,想法题

    题意:有n个星球,每个星球有Ai个人,每次有两种选择,第一是从每个星球上去掉1个人,第二个选择是选择一个星球放置一个科学家,将该星球的人数加倍,问最少多少次能够将所有星球上的人数同时变为0,并且如果步 ...

  2. CSU 1081 集训队分组

    题意:有n个学生,比了一场比赛,但是榜单看不到了.现在告诉你m段信息,每段信息的内容是(a,b),表示a的排名比b的高.问你能不能根据这些信息得出这场比赛的前k名. 思路:用拓扑排序找出一组符合k个人 ...

  3. ES5和ES6中对于继承的实现方法

    在ES5继承的实现非常有趣的,由于没有传统面向对象类的概念,Javascript利用原型链的特性来实现继承,这其中有很多的属性指向和需要注意的地方. 原型链的特点和实现已经在之前的一篇整理说过了,就是 ...

  4. HASHKILL

    6ac66ed89ef9654cf25eb88c21f4ecd0是flag的MD5码,(格式为ctf{XXX_XXXXXXXXXXX_XXXXX})由一个0-1000的数字,下划线,纽约的一个区,下划 ...

  5. VS2010引用App_Code下的类文件问题解决方法

    原文连接:http://blog.csdn.net/zjlovety/article/details/7658528 VS2020中“添加ASP.NET文件夹”里没有App_Code,添加普通文件夹然 ...

  6. ndk开发教程以及问题解决方案

    一.NDK产生的背景 Android平台从诞生起,就已经支持C.C++开发.众所周知,Android的SDK基于Java实现,这意味着基于Android SDK进行开发的第三方应用都必须使用Java语 ...

  7. Eclipse系列: 在Eclipse中用TODO标签管理任务(Task)(ZZ)

    Elipse为Java项目的时候,有一个很人性化的"任务管理"功能,利用这个功能可以方便地将项目中一些需要处理的任务记录下来.先来看看"任务管理"是怎么使用的吧 ...

  8. java web 的标准目录结构(zz)

    http://blog.csdn.net/bluesnail216/article/details/7744607 --yourproject    --src       --java   运行的j ...

  9. 解决-Dmaven.multiModuleProjectDirectory system property is not set. Check $M2_HOME environment variable and mvn script match.

    1.添加M2_HOME的环境变量 2.Preference->Java->Installed JREs->Edit 选择一个jdk, 添加  -Dmaven.multiModuleP ...

  10. IOS开发之——友盟社会化分享UMSocial_SDK的使用

    友盟第三方官方网址:http://dev.umeng.com/social/ios/quick-integration