0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

運(yùn)維必備的17個(gè)技巧

馬哥Linux運(yùn)維 ? 來源:cnblogs ? 2023-10-24 12:45 ? 次閱讀

1、查找當(dāng)前目錄下所有以.tar結(jié)尾的文件然后移動(dòng)到指定目錄:

find.-name“*.tar”-execmv{}./backup/;

?

注解:find –name 主要用于查找某個(gè)文件名字,-exec 、xargs 可以用來承接前面的結(jié)果,然后將要執(zhí)行的動(dòng)作,一般跟 find 在一起用的很多,find 使用我們可以延伸 -mtime 查找修改時(shí)間、-type 是指定對(duì)象類型(常見包括 f 代表文件、d代表目錄),-size 指定大小,例如經(jīng)常用到的:查找當(dāng)前目錄30天以前大于100M的LOG文件并刪除。

find.-name"*.log"–mtime+30–typef–size+100M|xargsrm–rf{};

2、批量解壓當(dāng)前目錄下以 .zip 結(jié)尾的所有文件到指定目錄:

foriin`find.–name“*.zip”–typef`

do

unzip–d$i/data/www/img/

done

?

注解:for i in (command); do … done 為 for 循環(huán)的一個(gè)常用格式,其中I為變量,可以自己指定。

3、sed常用命收集:test.txt做測試

如何去掉行首的.字符:

sed-i‘s/^.//g’test.txt

在行首添加一個(gè)a字符:

sed’s/^/a/g’test.txt

在行尾添加一個(gè)a字符:

sed’s/$/a/‘tets.txt

在特定行后添加一個(gè)c字符:

sed‘/wuguangke/ac’test.txt

在行前加入一個(gè)c字符:

sed’/wuguangke/ic’test.txt

更多sed命令請查閱相關(guān)文檔。

4、如何判斷某個(gè)目錄是否存在,不存在則新建,存在則打印信息。

if

[!–d/data/backup/];then

Mkdir–p/data/backup/

else

echo"TheDirectoryalreadyexists,pleaseexit"

fi

注解:if…;then …else ..fi:為if條件語句,!嘆號(hào)表示反義“不存在“,-d代表目錄。

5、監(jiān)控linux磁盤根分區(qū),如果根分區(qū)空間大于等于90%,發(fā)送郵件給Linux SA

(1)、打印根分區(qū)大小

df-h|sed-n'//$/p'|awk'{print$5}'|awk–F”%”'{print$1}'

注解:awk ‘{print $5}’意思是打印第5個(gè)域,-F的意思為分隔,例如以%分隔,簡單意思就是去掉百分號(hào),awk –F. ‘{print $1}’分隔點(diǎn).號(hào)。

(2)、if條件判斷該大小是否大于90,如果大于90則發(fā)送郵件報(bào)警

whilesleep5m

do

foriin`df-h|sed-n'//$/p'|awk'{print$5}'|sed's/%//g'`

do

echo$i

if[$i-ge90];then

echo“Morethan90%Linuxofdiskspace,PleaseLinuxSACheckLinuxDisk!”|mail-s“WarnLinux/Partsis$i%”

XXX@XXX.XX

fi

done

done

6、統(tǒng)計(jì) Nginx 訪問日志,訪問量排在前20 的 ip地址:

cataccess.log|awk'{print$1}'|sort|uniq-c|sort-nr|head-20

?

注解:sort排序、uniq(檢查及刪除文本文件中重復(fù)出現(xiàn)的行列 )

7、sed另外一個(gè)用法找到當(dāng)前行,然后在修改該行后面的參數(shù)

sed-i'/SELINUX/s/enforcing/disabled/'/etc/selinux/config

Sed冒號(hào)方式 sed -i ‘s:/tmp:/tmp/abc/:g’test.txt意思是將/tmp改成/tmp/abc/。

8、打印出一個(gè)文件里面最大和最小值:

cata.txt|sort-nr|awk‘{}END{print}NR==1′

cata.txt|sort-nr|awk‘END{print}NR==1′

這個(gè)才是真正的打印最大最小值:sed ‘s/ / /g’ a.txt |sort -nr|sed -n ’1p;$p’

9、使用snmpd抓取版本為v2的cacti數(shù)據(jù)方式:

snmpwalk-v2c-cpublic192.168.0.241

10、修改文本中以jk結(jié)尾的替換成yz:

sed-e‘s/jk$/yz/g’b.txt

11、網(wǎng)絡(luò)抓包:Tcpdump

tcpdump -nn host 192.168.56.7 and port 80抓取56.7通過80請求的數(shù)據(jù)包。

tcpdump -nn host 192.168.56.7 or ! host 192.168.0.22 and port 80排除0.22 80端口!

tcp/ip 7層協(xié)議物理層–數(shù)據(jù)鏈路層-網(wǎng)絡(luò)層-傳輸層-會(huì)話層-表示層-應(yīng)用層。

12、顯示最常用的20條命令:

cat.bash_history|grep-v^#|awk‘{print$1}’|sort|uniq-c|sort-nr|head-20

13、寫一個(gè)腳本查找最后創(chuàng)建時(shí)間是3天前,后綴是*.log 的文件并刪除。

find.-mtime+3-name"*.log"|xargsrm-rf{};

14、寫一個(gè)腳本將某目錄下大于100k的文件移動(dòng)至/tmp下。

find.-size+100k-execmv{}/tmp;

15、寫一個(gè)防火墻配置腳本,只允許遠(yuǎn)程主機(jī)訪問本機(jī)的80端口。

iptables-F

iptables-X

iptables-AINPUT-ptcp--dport80-jaccept

iptables-AINPUT-ptcp-jREJECT

或者

iptables-AINPUT-mstate--stateNEW-mtcp-ptcp--dport80-jACCEPT

16、寫一個(gè)腳本進(jìn)行 Nginx 日志統(tǒng)計(jì),得到訪問 IP 最多的前10個(gè)(nginx日志路徑:

/home/logs/nginx/default/access.log)。

cd/home/logs.nginx/default

sort-m-k4-oaccess.logokaccess.1access.2access.3.....

cataccess.logok|awk'{print$1}'|sort-n|uniq-c|sort-nr|head-10

17、替換文件中的目錄

sed's:/user/local:/tmp:g'test.txt

或者

sed-i's//usr/local//tmp/g'test.txt

編輯:黃飛

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 端口
    +關(guān)注

    關(guān)注

    4

    文章

    916

    瀏覽量

    31856
  • nginx
    +關(guān)注

    關(guān)注

    0

    文章

    139

    瀏覽量

    12115
  • 運(yùn)維
    +關(guān)注

    關(guān)注

    1

    文章

    230

    瀏覽量

    7497

原文標(biāo)題:運(yùn)維必備的17個(gè)技巧

文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    linux運(yùn)命令大全

    Linux高端運(yùn)學(xué)習(xí)需要掌握大量的命令及相關(guān)工具,通讀bash man page、掌握VIM使用、了解SSH是Linux高端運(yùn)工程師必備
    發(fā)表于 03-15 16:36

    Linux運(yùn)都要會(huì)哪些shell技能

    更適合處理復(fù)雜的業(yè)務(wù)邏輯,以及開發(fā)復(fù)雜的運(yùn)軟件工具,實(shí)現(xiàn)通過web訪問等。Shell是一個(gè)命令解釋器,解釋執(zhí)行用戶所輸入的命令和程序。一輸入命令,就立即回應(yīng)的交互的對(duì)話方式。Shell應(yīng)該怎么學(xué)呢
    發(fā)表于 11-30 17:38

    何為智能運(yùn)?

    一、何為智能運(yùn)?生產(chǎn)設(shè)備/裝備是工業(yè)的重要生產(chǎn)工具,其可靠性、性能對(duì)工業(yè)生產(chǎn)有重大影響。隨著工業(yè)大數(shù)據(jù)推進(jìn),設(shè)備的智能運(yùn)被定義為一個(gè)重要
    發(fā)表于 07-12 06:34

    利用6 個(gè) Linux 運(yùn)典型問題來分析處理問題的思路

    結(jié)合上面介紹的 Linux 運(yùn)問題的解決思路后,下面我們挑選了6個(gè)比較典型的 Linux 運(yùn)問題,來看看是如何分析和解決的。
    的頭像 發(fā)表于 01-13 10:37 ?2860次閱讀

    運(yùn)工程師的四個(gè)階段

    Linux系統(tǒng)目前主要應(yīng)用在企業(yè)服務(wù)器上,學(xué)習(xí)Linux,更多的是向Linux系統(tǒng)/運(yùn)工程師方向進(jìn)軍。比如云計(jì)算系統(tǒng)工程師,大數(shù)據(jù)運(yùn)工程師,運(yùn)
    的頭像 發(fā)表于 03-26 16:22 ?5760次閱讀

    怎樣成為一個(gè)合格的運(yùn)工程師

    如果想成為一名合格的運(yùn)工程師,首先我們需要了解運(yùn)主要是做什么的?如何成為一個(gè)合格的運(yùn)工程師
    的頭像 發(fā)表于 04-28 15:52 ?3759次閱讀

    如何定義linux運(yùn)工程師

    相信讀者們必定聽說過linux,也聽說過運(yùn)工程師。那么運(yùn)工程師是個(gè)什么概念呢?
    的頭像 發(fā)表于 08-21 15:51 ?3000次閱讀

    遠(yuǎn)程運(yùn)是什么?運(yùn)是什么?運(yùn)工程師是干嘛的?

    運(yùn)工程師擁有服務(wù)器的各項(xiàng)權(quán)限,一條錯(cuò)誤的命令、一個(gè)錯(cuò)誤的回車操作,可能就將導(dǎo)致企業(yè)蒙受巨大的損失,坊間各種“刪庫跑路”、“rm -rf /”之類的事情在國內(nèi)外屢有發(fā)生,因此運(yùn)
    的頭像 發(fā)表于 04-30 11:53 ?1w次閱讀

    個(gè)運(yùn)工程師有話說:運(yùn)工作非常忙、很忙、比較忙

    個(gè)運(yùn)狗有話說,經(jīng)歷了手動(dòng)運(yùn)、腳本運(yùn)、自動(dòng)化
    的頭像 發(fā)表于 10-19 11:09 ?8101次閱讀

    Linux運(yùn)經(jīng)常使用的40個(gè)命令總結(jié)

    本文檔的主要內(nèi)容詳細(xì)介紹的是Linux運(yùn)經(jīng)常使用的40個(gè)命令總結(jié)
    的頭像 發(fā)表于 11-22 11:14 ?2478次閱讀

    運(yùn)常用的34個(gè)Linux Shell腳本

    Shell 腳本編程是在 Linux 下學(xué)習(xí)或練習(xí)編程的最簡單的方式。尤其對(duì)運(yùn)工程師處理著自動(dòng)化任務(wù),且要開發(fā)新的簡單的實(shí)用程序或工具等(這里只是僅舉幾例)更是必備技能。
    的頭像 發(fā)表于 05-09 15:26 ?1434次閱讀

    17個(gè)linux高效運(yùn)操作技巧

    今天浩道跟大家分享17個(gè)linux高效運(yùn)操作技巧 ! 1、查找當(dāng)前目錄下所有以.tar結(jié)尾的文件然后移動(dòng)到指定目錄: ? find?.?-name?“*.tar”?-exec?mv
    的頭像 發(fā)表于 11-01 09:40 ?1151次閱讀

    基于分布式運(yùn)管理平臺(tái)的智能電網(wǎng)運(yùn)案例

    一、引言 隨著智能電網(wǎng)的快速發(fā)展,電網(wǎng)系統(tǒng)的復(fù)雜性和運(yùn)難度也在不斷增加。傳統(tǒng)的運(yùn)方式已難以滿足智能電網(wǎng)的需求,因此,分布式運(yùn)
    的頭像 發(fā)表于 03-26 16:24 ?406次閱讀

    智能化運(yùn)維新標(biāo)桿:訊運(yùn)管理平臺(tái)深度解讀

    在信息化、數(shù)字化快速發(fā)展的今天,企業(yè)對(duì)于運(yùn)管理的需求日益增強(qiáng)。傳統(tǒng)的運(yùn)方式已經(jīng)無法滿足復(fù)雜多變的業(yè)務(wù)需求,智能化運(yùn)
    的頭像 發(fā)表于 04-16 16:24 ?354次閱讀

    運(yùn)管理平臺(tái):從基礎(chǔ)運(yùn)到智能運(yùn)的飛躍

    運(yùn)管理平臺(tái)為企業(yè)提供了從基礎(chǔ)運(yùn)到智能運(yùn)的飛
    的頭像 發(fā)表于 04-16 16:26 ?295次閱讀