nslookup
nslookup 这个命令在 有 ip 地址时,可以用这个命令来显示主机名,可以找到给定域名的所有 ip 地址。而你必须连接到互联网才能使用这个命令。
你也可以使用 nslookup 从 ip 获得主机名或从主机名获得 ip。
traceroute
一个方便的工具。可用来查看数据包在提交到远程系统或者网站时候所经过的路由器的 IP 地址、跳数和响应时间。同样你必须链接到互联网才能使用这个命令。
telnet
通过 telnet 协议连接目标主机,如果 telnet 连接可以在任一端口上完成即代表着两台主机间的连接良好。telnet hostname port – 使用指定的端口 telnet 主机名。这通常用来测试主机是否在线或者网络是否正常。
netstat
发现主机连接最有用最通用的 Linux 命令。你可以使用”netstat -g”查询该主机订阅的所有多播组(网络)
netstat -nap | grep port 将会显示使用该端口的应用程序的进程 id
netstat -a or netstat –all 将会显示包括 TCP 和 UDP 的所有连接
netstat –tcp or netstat –t 将会显示 TCP 连接
netstat –udp or netstat –u 将会显示 UDP 连接
netstat -g 将会显示该主机订阅的所有多播网络。
ifup
ifup命令用于重新启动指定的网络设备。ifup命令的格式为:ifup 网络设备文件名。
linux系统很卡的排查方法:
1.查看内存使用情况
free -g
当观察到free栏已为0的时候,表示内存基本被吃完了,那就释放内存吧。
释放内存:
sync
echo 3 > /proc/sys/vm/drop_caches
sync表示将内存缓存区内容立即同步到磁盘,为了保证安全可以多执行几次。
2.查看磁盘使用情况
df -h
当发现磁盘使用率很高时,那就要释放磁盘空间了,删除一些不必要的文件(查看各个目录占用磁盘空间)
du命令:查看目录和文件的磁盘占用情况
查看指定目录的磁盘占用情况:
du -sh /home/zhubao
查看当前目录下的所有一级子目录和文件的磁盘使用情况:
du -sh *
-h或–human-readable 以K,M,G为单位,提高信息的可读性;
-s或–summarize 仅显示总计,即当前目录的大小。
3.查看磁盘IO使用情况
iostat -x 1
1表示1秒刷新一次
当发现最右侧%util很高时,表示IO就很高了,若想看哪个进程占用IO,执行iotop命令查看
4.查看cpu使用情况
top
图中红框里表是cpu使用情况,最右侧的%id表示剩余,若很低,则表示cpu被吃完了,在top界面按shift+p对进程使用cpu排序,能看到哪些进程占用cpu较多。
当然,top命令也能查看内存等信息,比较强大,后续再做详细介绍。
atop工具
atop是一个用来查看Linux系统负载的交互式监控工具。它能展现系统层级的关键硬件资源(从性能角度)的使用情况,如CPU、内存、硬盘和网络。
它也可以根据进程层级的CPU和内存负载显示哪个进程造成了特定的负载;如果已经安装内核补丁可以显示每个进程的硬盘和网络负载。输入下面的命令启动atop:
tail -n 1000行 怎么找关键字?
用| grep例: tail -n 1000 log-api.txt | grep jedis