Linux常用命令總結(jié)

如何生成SSH keys

SSH key 可以讓你在你的電腦和Code服務(wù)器之間建立安全的加密連接。 先執(zhí)行以下語(yǔ)句來(lái)判斷是否已經(jīng)存在本地公鑰:

cat ~/.ssh/id_rsa.pub

如果你看到一長(zhǎng)串以ssh-rsassh-dsa開頭的字符串, 你可以跳過(guò)ssh-keygen的步驟。
提示: 最好的情況是一個(gè)密碼對(duì)應(yīng)一個(gè)ssh key,但是那不是必須的。你完全可以跳過(guò)創(chuàng)建密碼這個(gè)步驟。請(qǐng)記住設(shè)置的密碼并不能被修改或獲取。
你可以按如下命令來(lái)生成ssh key:

ssh-keygen -t rsa -C "xxxxx"

這個(gè)指令會(huì)要求你提供一個(gè)位置和文件名去存放鍵值對(duì)和密碼,你可以點(diǎn)擊Enter鍵去使用默認(rèn)值。

SSH免密配置

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

遠(yuǎn)程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   被壓縮文件名

可先切換到當(dāng)前目錄下。壓縮文件名和被壓縮文件名都可加入路徑。

  1. 解壓縮命令:
      命令格式:
tar  -zxvf   壓縮文件名.tar.gz

命令說(shuō)明

tar
-c: 建立壓縮檔案
-x:解壓
-t:查看內(nèi)容
-r:向壓縮歸檔文件末尾追加文件
-u:更新原壓縮包中的文件

這五個(gè)是獨(dú)立的命令,壓縮解壓都要用到其中一個(gè),可以和別的命令連用但只能用其中一個(gè)。
下面的參數(shù)是根據(jù)需要在壓縮或解壓檔案時(shí)可選的。

-z:有g(shù)zip屬性的
-j:有bz2屬性的
-Z:有compress屬性的
-v:顯示所有過(guò)程
-O:將文件解開到標(biāo)準(zhǔn)輸出

下面的參數(shù)-f是必須的

-f: 使用檔案名字,切記,這個(gè)參數(shù)是最后一個(gè)參數(shù),后面只能接檔案名。

查找大文件

du -h -d 1 /home

AWK日志分析

分析接口調(diào)用次數(shù)

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

接口的調(diào)用次數(shù)和平均時(shí)間,按調(diào)用次數(shù)倒序

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}'

接口的調(diào)用次數(shù)和平均時(shí)間,按平均時(shí)間排序倒序

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}'

查詢請(qǐng)求耗時(shí)大于100毫秒的日志

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

查看防火墻是否開啟
systemctl status firewalld

若沒(méi)有開啟則是開啟狀態(tài)
systemctl start firewalld 關(guān)閉則start改為stop

查看所有開啟的端口
firewall-cmd --list-ports

注:?jiǎn)?dòng)防火墻后,默認(rèn)沒(méi)有開啟任何端口,需要手動(dòng)開啟端口

防火墻開啟端口訪問(wèn)
firewall-cmd --zone=public --add-port=80/tcp --permanent
命令含義: --zone #作用域 --add-port=80/tcp #添加端口,格式為:端口/通訊協(xié)議 --permanent #永久生效,沒(méi)有此參數(shù)重啟后失效

注:開啟后需要重啟防火墻才生效

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

image

再執(zhí)行 firewall-cmd --list-ports查看一次,則發(fā)現(xiàn)已開啟:

image

其他常用命令:

firewall-cmd --state ##查看防火墻狀態(tài),是否是running
firewall-cmd --reload ##重新載入配置,比如添加規(guī)則之后,需要執(zhí)行此命令
firewall-cmd --get-zones ##列出支持的zone
firewall-cmd --get-services ##列出支持的服務(wù),在列表中的服務(wù)是放行的
firewall-cmd --query-service ftp ##查看ftp服務(wù)是否支持,返回yes或者no
firewall-cmd --add-service=ftp ##臨時(shí)開放ftp服務(wù)
firewall-cmd --add-service=ftp --permanent ##永久開放ftp服務(wù)
firewall-cmd --remove-service=ftp --permanent ##永久移除ftp服務(wù)
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 ##查看規(guī)則,這個(gè)命令是和iptables的相同的
man firewall-cmd

1、開放端口

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

**firewall-cmd --zone=public --remove-port=5672/tcp --permanent ** #關(guān)閉5672端口

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

2、查看防火墻所有開放的端口

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

3.、關(guān)閉防火墻

如果要開放的端口太多,嫌麻煩,可以關(guān)閉防火墻,安全性自行評(píng)估

systemctl stop firewalld.service

4、查看防火墻狀態(tài)

** firewall-cmd --state**

5、查看監(jiān)聽的端口

netstat -lnpt

image

PS:centos7默認(rèn)沒(méi)有 netstat 命令,需要安裝 net-tools 工具,yum install -y net-tools

6、檢查端口被哪個(gè)進(jìn)程占用

netstat -lnpt |grep 5672

image

7、查看進(jìn)程的詳細(xì)信息

ps 6832

image
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容