Linux常用命令总结

如何生成SSH keys

SSH key 可以让你在你的电脑和Code服务器之间建立安全的加密连接。 先执行以下语句来判断是否已经存在本地公钥:

cat ~/.ssh/id_rsa.pub

如果你看到一长串以ssh-rsassh-dsa开头的字符串, 你可以跳过ssh-keygen的步骤。
提示: 最好的情况是一个密码对应一个ssh key,但是那不是必须的。你完全可以跳过创建密码这个步骤。请记住设置的密码并不能被修改或获取。
你可以按如下命令来生成ssh key:

ssh-keygen -t rsa -C "xxxxx"

这个指令会要求你提供一个位置和文件名去存放键值对和密码,你可以点击Enter键去使用默认值。

SSH免密配置

ssh-copy-id -i ~/.ssh/id_rsa.pub page@192.168.1.10

远程copy

scp root@192.168.1.10:/opt/template-server.tar /opt/template-server.tar

拷贝文件夹

scp -r

查找文件并删除

find /opt -regextype awk -regex [\.\/a-zA-Z\-]+[0-9]+\.jar | xargs rm -r

*.tar.gz文件解压缩命令

  1. 压缩命令:
      命令格式:
tar  -zcvf   压缩文件名.tar.gz   被压缩文件名

可先切换到当前目录下。压缩文件名和被压缩文件名都可加入路径。

  1. 解压缩命令:
      命令格式:
tar  -zxvf   压缩文件名.tar.gz

命令说明

tar
-c: 建立压缩档案
-x:解压
-t:查看内容
-r:向压缩归档文件末尾追加文件
-u:更新原压缩包中的文件

这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。
下面的参数是根据需要在压缩或解压档案时可选的。

-z:有gzip属性的
-j:有bz2属性的
-Z:有compress属性的
-v:显示所有过程
-O:将文件解开到标准输出

下面的参数-f是必须的

-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。

查找大文件

du -h -d 1 /home

AWK日志分析

分析接口调用次数

awk '{print $4"."$5}' monitor2018-10-17.log 
|awk '{a[$1]+=1;} END {for(i in a){print a[i]" "i;}}'
| sort -t " " -k 1 -n -r

接口的调用次数和平均时间,按调用次数倒序

awk '{print $4"."$5,$10}' monitor.log
|awk '{sum[$1]++; time[$1]+=$2} 
END{for(i in sum){print i,sum[i],time[i]/sum[i]}}'
|sort -t " " -k 2 -n -r
|awk '{printf "%-120s %-8s %-8s\n",$1,$2,$3}'

接口的调用次数和平均时间,按平均时间排序倒序

awk '{print $4"."$5,$10}' monitor.log
|awk '{sum[$1]++; time[$1]+=$2} 
END{for(i in sum){print i,sum[i],time[i]/sum[i]}}'
|sort -t " " -k 3 -n -r
|awk '{printf "%-120s %-8s %-8s\n",$1,$2,$3}'

查询请求耗时大于100毫秒的日志

awk '$10>5000 {print $0}' monitor.log

查看防火墙是否开启
systemctl status firewalld

若没有开启则是开启状态
systemctl start firewalld 关闭则start改为stop

查看所有开启的端口
firewall-cmd --list-ports

注:启动防火墙后,默认没有开启任何端口,需要手动开启端口

防火墙开启端口访问
firewall-cmd --zone=public --add-port=80/tcp --permanent
命令含义: --zone #作用域 --add-port=80/tcp #添加端口,格式为:端口/通讯协议 --permanent #永久生效,没有此参数重启后失效

注:开启后需要重启防火墙才生效

【重启命令】: firewall-cmd --reload

image

再执行 firewall-cmd --list-ports查看一次,则发现已开启:

image

其他常用命令:

firewall-cmd --state ##查看防火墙状态,是否是running
firewall-cmd --reload ##重新载入配置,比如添加规则之后,需要执行此命令
firewall-cmd --get-zones ##列出支持的zone
firewall-cmd --get-services ##列出支持的服务,在列表中的服务是放行的
firewall-cmd --query-service ftp ##查看ftp服务是否支持,返回yes或者no
firewall-cmd --add-service=ftp ##临时开放ftp服务
firewall-cmd --add-service=ftp --permanent ##永久开放ftp服务
firewall-cmd --remove-service=ftp --permanent ##永久移除ftp服务
firewall-cmd --add-port=80/tcp --permanent ##永久添加80端口
firewall-cmd --remove-port=80/tcp --permanent ##永久移除80端口
firewall-cmd --zone=public --list-ports ##查看已开放的端口

iptables -L -n ##查看规则,这个命令是和iptables的相同的
man firewall-cmd

1、开放端口

**firewall-cmd --zone=public --add-port=5672/tcp --permanent ** # 开放5672端口

**firewall-cmd --zone=public --remove-port=5672/tcp --permanent ** #关闭5672端口

firewall-cmd --reload # 配置立即生效

2、查看防火墙所有开放的端口

firewall-cmd --zone=public --list-ports

3.、关闭防火墙

如果要开放的端口太多,嫌麻烦,可以关闭防火墙,安全性自行评估

systemctl stop firewalld.service

4、查看防火墙状态

** firewall-cmd --state**

5、查看监听的端口

netstat -lnpt

image

PS:centos7默认没有 netstat 命令,需要安装 net-tools 工具,yum install -y net-tools

6、检查端口被哪个进程占用

netstat -lnpt |grep 5672

image

7、查看进程的详细信息

ps 6832

image
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容