91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux運維技巧實例分析

發布時間:2022-10-19 15:03:53 來源:億速云 閱讀:110 作者:iii 欄目:建站服務器

這篇文章主要講解了“Linux運維技巧實例分析”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Linux運維技巧實例分析”吧!

一、生成隨機字符串

# 去掉/\兩個字符,取第5到14位。
openssl rand -base64 40 | sed 's/[/\]//g' | cut -c 5-14
# 或者生成16位隨機字符,1個,要包含數字-n和特殊字符-y。

二、文件名批量修改

  • 法一

#!/bin/bash
Filename=_faster.html
Dirname="/test"
cd $Dirname||exit 1
for n in `ls`
do
  name=$(echo ${n}|awk -F '_' '{print $1}')
  mv $n ${name}${Filename}
done
  • 法二

#!/bin/bash
Path="/test"
cd $Path && \
ls | awk -F '_' '{print "mv " "$0" "$1"_faster.html"}' | bash
  • 法三

rename

三、并發ping

#!/bin/bash
CMD="ping -W 2 -c 2"
IP="192.168.74."
for n in $(seq 254);do
        {
                $CMD $IP$n > /dev/null 2>&1
                if [ $? -eq 0 ];then
                        echo "$IP$n
                fi
        }&
done
wait # 主shell進程需要等待各并發子進程的結束返回
echo

四、解決DOS攻擊

file=$1
while true; do
  awk '{print $1}' $1 | grep -v "^$" | sort | uniq -c > /tmp/tmp.log
  exec < /tmp/tmp.log
  while read line; do
    ip=`echo $line | awk '{print $2}'`
    count=`echo $line | awk {print $1}`
    if [ $count -gt 500 ] && [ `iptables -nL | grep "$ip" | wc -l` -lt 1  ]; then
      iptables -I INPUT -s $ip -j DROP
      echo "$line >> /tmp/droplist_$(date +%F).log
    fi
  done
  sleep 3600
done

五、MySQL備份

  • 不登錄數據庫如何執行sql命令

#!/bin/sh
MYUSER=root
MYPASS=123456
MYCMD="mysql -u$MYUSER -p$MYPASS
for db in db1 db2 db3; do
  $MYCMD "use $db;show tables;"
done
  • 分庫備份

#!/bin/sh
MYUSER=root
MYPASS=123456
DBPATH=/root/test/db_bak
MYCMD="mysql -u$MYUSER -p$MYPASS
MYDMP="mysqldump -u$MYUSER -p$MYPASS"
[ ! -d $DBPATH ] && mkdir $DBPATH
for db in `$MYCMD "show databases;" | sed '1d' |egrep -v "mysql|schema|sys"`; do
    if [ -z `echo $db|grep "test"` ];then # 不包含test字符串
      $MYDMP $db | gzip >$DBPATH/${db}_$(date +%F).sql.gz
    fi
done

注意文中包含字符串的判斷可有多種方式Shell判斷字符串包含關系的幾種方法 其中“$A =~ $B”是判斷A包含B最簡單的方式。

六、入侵檢測與報警

  • 建立初始的文件指紋庫

find /var/html/www -type f | xargs md5sum >
  • 利用指紋庫檢查文件是否被篡改

md5sum -c --quiet /opt/checksum.bak
  • 監測文件數量及文件名的變化

find /var/html/www -type f > /opt/filename.bak
find /var/html/www -type f > /opt/filename.now
diff
  • cron

* /3 * * * * /bin/sh /path/to/monitor.sh > /dev/null 2>&1

七、產生隨機數

# 0~32767
echo $RANDOM
echo "bulabula$RANDOM" | md5sum | cut -c 8-15
openssl rand -base64 8
date +%s%N
head /dev/urandom|cksum
cat /proc/sys/kernel/random/uuid

apt install expect
expect_mkpasswd -l 8 -d 2 -c 3 -C 2 -s 1

yum install expect
mkpasswd -l 8 -d 2 -c 3 -C 2 -s 1

# 參數說明

八、子腳本的調用方式

  • fork方式(分身,復制——產生新的PID)
    執行方式

/path/script.sh
/bin/sh /path/script.sh

系統啟動一個子shell執行調用的腳本(生成新的PID——子shell)。子shell執行的時候父shell處于Sleep狀態(S)。子shell執行完畢后返回到父shell。子shell可以繼承父shell的環境變量,但反之不然。

  • exec方式(變身——沿用原來的PID)
    執行方式

exec

被調用的腳本與父腳本在同一個shell內運行(不產生新的PID),但使用exec調用一個新腳本后,父腳本中exec之后的內容就不會再執行了——變身。

  • source方式(類似exec方式,沿用原來的PID)
    執行方式

source /path/script.sh
.

source方式開啟的腳本和父腳本在同一個shell中運行(不產生新的PID)。source調用一個新腳本,執行完成后,父腳本source之后的內容還會再執行。

九、shell逐行讀取文件

  • 法一

exec <file
while read line; do
  echo $line
done
  • 法二

cat file | while read line; do
  echo $line
done
  • 法三

while read line; do
  echo $line
done < file
  • 法四

for line in `cat  test.txt`; do
    echo $line
done

十、測試表達式區別

測試表達式符號

[ ]

test

[[ ]]

(())

邊界是否需要空格

Y

Y

Y

N

支持的邏輯運算符

!,-a,-o

!,-a,-o

!,&&,┃┃

!,&&,┃┃

支持的算數運算符

-eq,-gt,-lt,-ge,-le

-eq,-gt,-lt,-ge,-le

-eq,-gt,-lt,-ge,-le和=,>,<,>=,<=

-eq,-gt,-lt,-ge,-le和=,>,<,>=,<=

字符串比較

=,==,!=

=,==,!=

=,==,!=

=,==,!=

是否支持通配*

N

N

Y

N

感謝各位的閱讀,以上就是“Linux運維技巧實例分析”的內容了,經過本文的學習后,相信大家對Linux運維技巧實例分析這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

大埔区| 田林县| 疏附县| 宝丰县| 彝良县| 定日县| 咸丰县| 清新县| 凤城市| 泾阳县| 永丰县| 盐津县| 长垣县| 通河县| 田阳县| 忻城县| 梅河口市| 宁远县| 松溪县| 中超| 久治县| 新龙县| 平顶山市| 平潭县| 阿巴嘎旗| 凤山市| 辉县市| 招远市| 天全县| 抚州市| 西畴县| 青浦区| 溆浦县| 社会| 军事| 镇安县| 阜城县| 新绛县| 阿合奇县| 汾阳市| 台山市|