2018-11-23

Linux運(yùn)維常用腳本

一、根據(jù)PID過濾進(jìn)程所有信息


! /bin/bash
read -p "請輸入要查詢的PID: " P
n=ps -aux| awk '$2~/^'$P'$/{print $11}'|wc -l
if [ n -eq 0 ];then echo "該P(yáng)ID不存在!冗栗!" exit fi echo "--------------------------------" echo "進(jìn)程PID:P"
echo "進(jìn)程命令:ps -aux| awk '$2~/^'$P'$/{print $11}'"
echo "進(jìn)程所屬用戶: ps -aux| awk '$2~/^'$P'$/{print $1}'"
echo "CPU占用率:ps -aux| awk '$2~/^'$P'$/{print $3}'%"
echo "內(nèi)存占用率:ps -aux| awk '$2~/^'$P'$/{print $4}'%"
echo "進(jìn)程開始運(yùn)行的時刻:ps -aux| awk '$2~/^'$P'$/{print $9}'"
echo "進(jìn)程運(yùn)行的時間:ps -aux| awk '$2~/^'$P'$/{print $10}'"
echo "進(jìn)程狀態(tài):ps -aux| awk '$2~/^'$P'$/{print $8}'"
echo "進(jìn)程虛擬內(nèi)存:ps -aux| awk '$2~/^'$P'$/{print $5}'"
echo "進(jìn)程共享內(nèi)存:ps -aux| awk '$2~/^'$P'$/{print $6}'"
echo "--------------------------------"


二浴鸿、根據(jù)進(jìn)程名過濾進(jìn)程信息


! /bin/bash
read -p "請輸入要查詢的進(jìn)程名:" NAME
N=ps -aux | grep $NAME | grep -v grep | wc -l ##統(tǒng)計(jì)進(jìn)程總數(shù)
if [ N -le 0 ];then echo "該進(jìn)程名沒有運(yùn)行!" fi i=1 while [N -gt 0 ]
do
echo "進(jìn)程PID: ps -aux | grep $NAME | grep -v grep | awk 'NR=='$i'{print $0}'| awk '{print $2}'"
echo "進(jìn)程命令:ps -aux | grep $NAME | grep -v grep | awk 'NR=='$i'{print $0}'| awk '{print $11}'"
echo "進(jìn)程所屬用戶: ps -aux | grep $NAME | grep -v grep | awk 'NR=='$i'{print $0}'| awk '{print $1}'"
echo "CPU占用率:ps -aux | grep $NAME | grep -v grep | awk 'NR=='$i'{print $0}'| awk '{print $3}'%"
echo "內(nèi)存占用率:ps -aux | grep $NAME | grep -v grep | awk 'NR=='$i'{print $0}'| awk '{print $4}'%"
echo "進(jìn)程開始運(yùn)行的時刻:ps -aux | grep $NAME | grep -v grep | awk 'NR=='$i'{print $0}'| awk '{print $9}'"
echo "進(jìn)程運(yùn)行的時間:ps -aux | grep $NAME | grep -v grep | awk 'NR=='$i'{print $0}'| awk '{print $11}'"
echo "進(jìn)程狀態(tài):ps -aux | grep $NAME | grep -v grep | awk 'NR=='$i'{print $0}'| awk '{print $8}'"
echo "進(jìn)程虛擬內(nèi)存:ps -aux | grep $NAME | grep -v grep | awk 'NR=='$i'{print $0}'| awk '{print $5}'"
echo "進(jìn)程共享內(nèi)存:ps -aux | grep $NAME | grep -v grep | awk 'NR=='$i'{print $0}'| awk '{print $6}'"
echo "***************************************************************"
let N-- i++
done


三、根據(jù)用戶名查詢該用戶的相關(guān)信息


! /bin/bash
read -p "請輸入要查詢的用戶名:" A
echo "------------------------------"
n=cat /etc/passwd | awk -F: '$1~/^'$A'$/{print}' | wc -l
if [ n -eq 0 ];then echo "該用戶不存在" echo "------------------------------" else echo "該用戶的用戶名:A"
echo "該用戶的UID:cat /etc/passwd | awk -F: '$1~/^'$A'$/{print}'|awk -F: '{print $3}'"
echo "該用戶的組為:id $A | awk {'print $3'}"
echo "該用戶的GID為:cat /etc/passwd | awk -F: '$1~/^'$A'$/{print}'|awk -F: '{print $4}'"
echo "該用戶的家目錄為:cat /etc/passwd | awk -F: '$1~/^'$A'$/{print}'|awk -F: '{print $6}'"
Login=cat /etc/passwd | awk -F: '$1~/^'$A'$/{print}'|awk -F: '{print $7}'
if [ Login == "/bin/bash" ];then echo "該用戶有登錄系統(tǒng)的權(quán)限S容骸予颤!" echo "------------------------------" elif [Login == "/sbin/nologin" ];then
echo "該用戶沒有登錄系統(tǒng)的權(quán)限6诠佟!"
echo "------------------------------"
fi
fi


四蛤虐、加固系統(tǒng)的一些配置

! /bin/bash
read -p "設(shè)置密碼最多可多少天不修改:" A
read -p "設(shè)置密碼修改之間最小的天數(shù):" B
read -p "設(shè)置密碼最短的長度:" C
read -p "設(shè)置密碼失效前多少天通知用戶:" D
sed -i '/^PASS_MAX_DAYS/c\PASS_MAX_DAYS 'A'' /etc/login.defs sed -i '/^PASS_MIN_DAYS/c\PASS_MIN_DAYS 'B'' /etc/login.defs
sed -i '/^PASS_MIN_LEN/c\PASS_MIN_LEN 'C'' /etc/login.defs sed -i '/^PASS_WARN_AGE/c\PASS_WARN_AGE 'D'' /etc/login.defs

echo "已對密碼進(jìn)行加固治拿,新用戶不得和舊密碼相同,且新密碼必須同時包含數(shù)字笆焰、小寫字母劫谅,大寫字母!嚷掠!"
sed -i '/pam_pwquality.so/c\password requisite pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type= difok=1 minlen=8 ucredit=-1 lcredit=-1 dcredit=-1' /etc/pam.d/system-auth

echo "已對密碼進(jìn)行加固捏检,如果輸入錯誤密碼超過3次,則鎖定賬戶2唤浴贯城!"
n=cat /etc/pam.d/sshd | grep "auth required pam_tally2.so "|wc -l
if [ $n -eq 0 ];then
sed -i '/%PAM-1.0/a\auth required pam_tally2.so deny=3 unlock_time=150 even_deny_root root_unlock_time300' /etc/pam.d/sshd
fi

echo "已設(shè)置禁止root用戶遠(yuǎn)程登錄!霹娄!"
sed -i '/PermitRootLogin/c\PermitRootLogin no' /etc/ssh/sshd_config

read -p "設(shè)置歷史命令保存條數(shù):" E
read -p "設(shè)置賬戶自動注銷時間:" F
sed -i '/^HISTSIZE/c\HISTSIZE='E'' /etc/profile sed -i '/^HISTSIZE/a\TMOUT='F'' /etc/profile

echo "已設(shè)置只允許wheel組的用戶可以使用su命令切換到root用戶能犯!"
sed -i '/pam_wheel.so use_uid/c\auth required pam_wheel.so use_uid ' /etc/pam.d/su
n=cat /etc/login.defs | grep SU_WHEEL_ONLY | wc -l
if [ $n -eq 0 ];then
echo SU_WHEEL_ONLY yes >> /etc/login.defs
fi

echo "即將對系統(tǒng)中的賬戶進(jìn)行檢查...."
echo "系統(tǒng)中有登錄權(quán)限的用戶有:"
awk -F: '(7=="/bin/bash"){print1}' /etc/passwd
echo "********************************************"
echo "系統(tǒng)中UID=0的用戶有:"
awk -F: '(3=="0"){print1}' /etc/passwd
echo "********************************************"
N=awk -F: '($2==""){print $1}' /etc/shadow|wc -l
echo "系統(tǒng)中空密碼用戶有:N" if [N -eq 0 ];then
echo "恭喜你,系統(tǒng)中無空密碼用戶H堋踩晶!"
echo "********************************************"
else
i=1
while [ N -gt 0 ] do None=`awk -F: '(2==""){print 1}' /etc/shadow|awk 'NR=='i'{print}'echo "------------------------" echo $None echo "必須為空用戶設(shè)置密碼!枕磁!" passwd $None let N-- done M=awk -F: '(2==""){print1}' /etc/shadow|wc -l`
if [ M -eq 0 ];then echo "恭喜渡蜻,系統(tǒng)中已經(jīng)沒有空密碼用戶了!" else echo "系統(tǒng)中還存在空密碼用戶:M"
fi
fi

echo "即將對系統(tǒng)中重要文件進(jìn)行鎖定,鎖定后將無法添加刪除用戶和組"
read -p "警告:此腳本運(yùn)行后將無法添加刪除用戶和組H孜排苍!確定輸入Y,取消輸入N学密;Y/N:" i
case $i in
[Y,y])
chattr +i /etc/passwd
chattr +i /etc/shadow
chattr +i /etc/group
chattr +i /etc/gshadow
echo "鎖定成功淘衙!"
;;
[N,n])
chattr -i /etc/passwd
chattr -i /etc/shadow
chattr -i /etc/group
chattr -i /etc/gshadow
echo "取消鎖定成功!腻暮!"
;;
*)
echo "請輸入Y/y or N/n"
esac


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末幔翰,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子西壮,更是在濱河造成了極大的恐慌遗增,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,888評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件款青,死亡現(xiàn)場離奇詭異做修,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)抡草,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,677評論 3 399
  • 文/潘曉璐 我一進(jìn)店門饰及,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人康震,你說我怎么就攤上這事燎含。” “怎么了腿短?”我有些...
    開封第一講書人閱讀 168,386評論 0 360
  • 文/不壞的土叔 我叫張陵屏箍,是天一觀的道長。 經(jīng)常有香客問我橘忱,道長赴魁,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,726評論 1 297
  • 正文 為了忘掉前任钝诚,我火速辦了婚禮颖御,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘凝颇。我一直安慰自己潘拱,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,729評論 6 397
  • 文/花漫 我一把揭開白布拧略。 她就那樣靜靜地躺著芦岂,像睡著了一般。 火紅的嫁衣襯著肌膚如雪辑鲤。 梳的紋絲不亂的頭發(fā)上盔腔,一...
    開封第一講書人閱讀 52,337評論 1 310
  • 那天杠茬,我揣著相機(jī)與錄音月褥,去河邊找鬼弛随。 笑死,一個胖子當(dāng)著我的面吹牛宁赤,可吹牛的內(nèi)容都是我干的舀透。 我是一名探鬼主播,決...
    沈念sama閱讀 40,902評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼决左,長吁一口氣:“原來是場噩夢啊……” “哼愕够!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起佛猛,我...
    開封第一講書人閱讀 39,807評論 0 276
  • 序言:老撾萬榮一對情侶失蹤惑芭,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后继找,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體遂跟,經(jīng)...
    沈念sama閱讀 46,349評論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,439評論 3 340
  • 正文 我和宋清朗相戀三年婴渡,在試婚紗的時候發(fā)現(xiàn)自己被綠了幻锁。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,567評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡边臼,死狀恐怖哄尔,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情柠并,我是刑警寧澤岭接,帶...
    沈念sama閱讀 36,242評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站臼予,受9級特大地震影響亿傅,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜瘟栖,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,933評論 3 334
  • 文/蒙蒙 一葵擎、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧半哟,春花似錦酬滤、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,420評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至戒良,卻和暖如春体捏,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,531評論 1 272
  • 我被黑心中介騙來泰國打工几缭, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留河泳,地道東北人。 一個月前我還...
    沈念sama閱讀 48,995評論 3 377
  • 正文 我出身青樓年栓,卻偏偏與公主長得像拆挥,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子某抓,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,585評論 2 359

推薦閱讀更多精彩內(nèi)容

  • 理想是件厚重的衣裳 今天脫了他 明天你還會穿上他 只有低谷才能壓榨出你最原始的欲望 回到原點(diǎn) 回到原點(diǎn)
    蘇良生的墻閱讀 147評論 3 2
  • 幽靜的小道路口傳來了斷斷續(xù)續(xù)的腳步聲纸兔,道路上幾只正在拾撿松子的小松鼠停下它們習(xí)以為常的動作,齊刷刷的朝路口望去否副。一...
    一木書閱讀 369評論 0 3