1、top 命令
实时显示系统中各个进程的资源占用状况
2、mv 命令
mv 命令既可以重命名,又可以移动文件或文件夹
mv abc 1234
3、scp 远程复制
从本地复制到远程服务器
复制文件
scp local_file remote_username@remote_ip:remote_folder
或者
scp local_file remote_username@remote_ip:remote_file
或者
scp local_file remote_ip:remote_folder
或者
scp local_file remote_ip:remote_file
复制文件夹
scp -r local_folder remote_username@remote_ip:remote_folder
或者
scp -r local_folder remote_ip:remote_folder
从远程复制到本地
从远程复制到本地,只要将从本地复制到远程的命令的后2个参数调换顺序即可
scp local_file root@10.168.2.16:/usr/local/jar/sjzl/jar/mdm
4、df 命令
#查看磁盘命令有:
#查看当前磁盘总量、剩余、已用
df -h
# 查看当前文件大小
du -sh
# 查看当前文件及所有子文件或子文件夹大小
du -h 或者 du -m
#查找大文件命令如下:
# 查询大文件目录
du -h --max-depth=找文件的层级数 指定查找文件路径
目录下面有哪些大文件夹,那么可以将参数max-depth=2 ,如果你想对搜索出来的结果进行排序,那么可以借助于sort命令
du -h --max-depth=2 | sort -n
du -hm --max-depth=2 | sort -n
只想查出最大的12个文件夹
du -hm --max-depth=2 | sort -nr | head -12
当报错信息:java.io.IOException: No space left on device
df -h查看 磁盘空间,使用磁盘空间未满
通过 df -i 分析,根目录 / 下inode空间已满了
inode在linux中,每个文件,不管大小是多少都会对应一个inode,inode就是一个专门用来保存文件属性,权限和指针。在linux中,有两个概念,就是block和inode,block:用于存放实际数据inode:存放文件属性,只要这两个其中一个占满空间了,都会导致提示报错"No space left on device"磁盘空间不足。
通过根目录进行排查
find 查找
find / -type d -size +10M |xargs ls -lhd
查询到文件目录后,统计目录下文件
对该目录文件数量统计
ls /目录/ |wc -l
定位好目录后删除小文件
rm -rf /test/*
#直接 rm -rf * 的话是删除不了大量的小文件
-bash: /usr/bin/rm: Argument list too long
进入目录,删除大量的小文件,使用该命令删除
ls |xargs rm -f
统计目录下文件数
ls /目录/ |wc -l
小文件已经删除
5、find 查找
# 按文件名查询
# 在root目录下查询文件名为info.log
find /root -name info.log
# 在root目录下查询以.log为后缀的文件
find /root -name '*.log'
# 搜索当前目录下,超过800M大小的文件
find . -type f -size +800M
# 搜索当前目录下,超过800M大小的文件详细信息
find . -type f -size +800M -print0 | xargs -0 ls -l
# 只需要查找超过800M大小文件,并显示查找出来文件的具体大小
find . -type f -size +800M -print0 | xargs -0 du -hm | sort -n
# 需要对查找结果按照文件大小做一个排序
find . -type f -size +800M -print0 | xargs -0 du -h | sort -nr
#有时候排列的顺序并不完全是按大小一致,这个是因为du命令的参数h所致,你可以统一使用使用MB来显示,这样就能解决这个问题
find . -type f -size +800M -print0 | xargs -0 du -h | sort -nr
6、ps 查看服务进程
-e:等价于 ‘-A’ ,表示列出全部的进程
-f:显示全部的列(显示全字段)
# 查询所有java进程
ps -ef | grep java
# 查询指定jar的进程
ps -ef | grep xxx.jar
ps -aux | grep xxx.jar
7、netstat 查看端口
netstat -alnp | grep 端口
8、查询僵尸进程
# 查询僵尸进程
lsof /目录 | grep 'deleted'
#查询并删除僵尸进程
lsof /目录 | grep 'deleted' lsof /目录 | grep 'deleted' | grep -v grep | awk '{print $2}' | sort|xargs kill -9
9、查看服务器并发连接状态数量
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
# 查看正在建立的连接
netstat -nat|grep ESTABLISHED|wc -l
# 查看某个端口号的并发连接数
netstat -antp | grep 8080 | grep ESTABLISHED -c
解释:
状态:描述
CLOSED:无连接是活动的或正在进行
LISTEN:服务器在等待进入呼叫
SYN_RECV:一个连接请求已经到达,等待确认
SYN_SENT:应用已经开始,打开一个连接
ESTABLISHED:正常数据传输状态
FIN_WAIT1:应用说它已经完成
FIN_WAIT2:另一边已同意释放
ITMED_WAIT:等待所有分组死掉
CLOSING:两边同时尝试关闭
TIME_WAIT:另一边已初始化一个释放
LAST_ACK:等待所有分组死掉
10、查看正在建立的连接
netstat -nat|grep ESTABLISHED|wc -l