2019-03-31

???????Day19

課堂筆記

? ? ? ? ? ? ? ? ? ? 2019年3月25日




定時任務(wù)要領(lǐng):

* * * * * ?/bin/sh /server/scripts/bak.sh &>/dev/null


如何調(diào)試定時任務(wù)?

1丝蹭、查看錯誤日志*****

/var/log/cron

學(xué)會最小化排除:

先清空漱竖,>/var/log/cron

然后在測試和觀察妖谴。

2宝穗、增加執(zhí)行任務(wù)頻率調(diào)試任務(wù) *****

把頻率調(diào)快堕澄。


3厢汹、把定時任務(wù)執(zhí)行時間比當前時間拖后5分鐘

00 03執(zhí)行霹俺,當前5:00,咱們就把時間調(diào)整 05 05,有個5分鐘提前量掰邢。

4牺陶、調(diào)整系統(tǒng)時間(測試環(huán)境還湊合)

00 03執(zhí)行,把系統(tǒng)時間調(diào)整到2:55辣之。


5掰伸、通過腳本日志輸出調(diào)試定時任務(wù)

定時任務(wù)輸出

* * * * * ?/bin/sh /server/scripts/bak.sh &>/tmp/bak.log

腳本輸出:

tar zcvf oldboy.tar.gz ?./data &>/tmp/tar.log


注意點:

有時候程序只能執(zhí)行一次。一定要在測試環(huán)境測試好怀估,然后直接復(fù)制到正式狮鸭。


代碼發(fā)布流程:

辦公室測試環(huán)境===>IDC機房測試環(huán)境===>IDC機房正式環(huán)境


防止在正式環(huán)境發(fā)生錯誤合搅,從而影響用戶體驗,業(yè)務(wù)穩(wěn)定怕篷。




企業(yè)故障案例:No space left on device常見企業(yè)故障案例

磁盤滿的報錯历筝,原因往往是inode被占滿了。

df -i

因為定時任務(wù)沒有加&>/dev/null廊谓,定時任務(wù)執(zhí)行的時候把輸出給系統(tǒng)root發(fā)郵件梳猪。

郵件服務(wù)器postfix服務(wù)默認不開,這些給系統(tǒng)發(fā)的郵件就會堆在臨時目錄(大量小文件存在)

/var/spool/clientmqueue/ ?????6

/var/spool/postfix/maildrop/ ?7



企業(yè)故障案例:程序通過手動可以執(zhí)行蒸痹,放定時任務(wù)里不執(zhí)行春弥。

export變量生產(chǎn)案例


定時任務(wù)在執(zhí)行腳本的時候,多數(shù)情況沒辦法加載環(huán)境變量叠荠,特別是/etc/profile匿沛。

登錄后怎么操作都對,但是就是放到定時任務(wù)不行榛鼎。


命令行:bash登錄方式

1.手工登錄后逃呼,加載所有環(huán)境變量(~/.bash_profile,~/.bash_rc,/etc/profile,/etc/bashrc)

2.定時任務(wù)執(zhí)行腳本屬于非登錄狀態(tài)(/etc/bashrc)。

實踐檢驗者娱,定時任務(wù)能否自動加載/etc/bashrc和/etc/profile文件抡笼。


所有運維都會把變量放到此文件/etc/profile,把這個文件里的變量定義

在執(zhí)行的腳本中重新定義黄鳍。


具體為crond執(zhí)行Shell時只能識別為數(shù)不多的系統(tǒng)環(huán)境變量推姻,普通環(huán)境變量一般是無法識別的,如果在編寫的腳本中需要使用變量框沟,最好使用export重新聲明下該變量藏古,以確保腳本正確執(zhí)行。以后要將其作為一個開發(fā)基本規(guī)范寫上忍燥。



1)在每周6的凌晨3:15執(zhí)行/home/shell/collect.pl拧晕,并將標準輸出和標準錯誤輸出到/dev/null設(shè)備,請寫出crontab中的語句梅垄。

######oldboy...

15 03 * * 6 /bin/perl /home/shell/collect.pl >/dev/null 2>&1


2)crontab在11月份內(nèi)厂捞,每天的早上6點到12點中,每隔2小時執(zhí)行一次/usr/bin/httpd.sh哎甲,

怎么實現(xiàn)?

00 6-12/2 * 11 * /bin/sh /usr/bin/httpd.sh &>/dev/null



老男孩Linux58期day18

用戶管理知識:


用戶相關(guān)文件:

/etc/passwd用戶所在文件

/etc/shadow密碼所在文件

useradd oldboy添加用戶實際上就是修改上述兩個文件

passwd oldboy改密碼實際上就是修改密碼所在文件



用戶組相關(guān)文件:

/etc/group用戶組所在文件

/etc/gshadow用戶組密碼所在文件(廢棄狀態(tài))

useradd oldboy添加用戶實際上也會修改上述兩個文件(因為要創(chuàng)建同名的用戶組)

groupadd sa添加用戶組就是修改上述兩個文件



md5sum給文件設(shè)置指紋(計算和檢查MD5數(shù)字信息)


[root@oldboyedu ~]# md5sum /etc/passwd /etc/shadow /etc/group /etc/gshadow

2fe9f002726ed0a138d67cd44722f1a6 ?/etc/passwd

c2ca41415dca17f1a3dc3c286a9b9bff ?/etc/shadow

c475144a13d87a400b5e16fe6bd70baf ?/etc/group

659ef4f533df0fa7e457f87755fb1c27 ?/etc/gshadow



[root@oldboyedu ~]# useradd bingbing


文件發(fā)生變化

[root@oldboyedu ~]# md5sum /etc/passwd /etc/shadow /etc/group /etc/gshadow

39d60eff90ecd0326fe59e6464b464ad ?/etc/passwd

0aa8d3b157f042876ec0190a2808a377 ?/etc/shadow

cee8bc6e85f9dfb9dc0a04e452e834f4 ?/etc/group

cdfd26351f409ee32fca53a22ad15912 ?/etc/gshadow


[root@oldboyedu ~]# grep bingbing ?/etc/passwd /etc/shadow /etc/group /etc/gshadow

/etc/passwd:bingbing:x:1004:1006::/home/bingbing:/bin/bash

/etc/shadow:bingbing:!!:17980:0:99999:7:::

/etc/group:bingbing:x:1006:

/etc/gshadow:bingbing:!::



/etc/passwd文件:


Linux是命令行管理饲嗽,平時輸入ls,cp炭玫,誰識別,幫我們把我們想要的輸出呢貌虾?

這個工具就是bash(命令行解釋器)吞加。 * ? [abc]



用戶登錄:輸入命令,希望哪個解釋器解釋(結(jié)尾列決定)

/etc/passwd:bingbing:x:1004:1006::/home/bingbing:/bin/bash


CentOS7默認解釋器是bash衔憨。


/etc/passwd里的解釋器

[root@oldboyedu ~]# awk -F ":" '{print $NF}' /etc/passwd|sort|uniq -c

??????6 /bin/bash

??????1 /bin/sync

??????1 /sbin/halt

?????18 /sbin/nologin

??????1 /sbin/shutdown

[root@oldboyedu ~]# cat /etc/shells

/bin/sh

/bin/bash

/usr/bin/sh

/usr/bin/bash


bash是sh的擴展叶圃,sh是bash的軟連接。


[root@oldboyedu ~]# ls -l /bin/sh

lrwxrwxrwx. 1 root root 4 Mar ?4 11:15 /bin/sh -> bash



/bin/bash /server/scripts/bak.sh


[root@oldboyedu ~]# tail -1 /etc/shadow

bingbing用戶

:!!密碼

:17980最近更改密碼的時間

:0禁止修改密碼的天數(shù)

:99999用戶必須更改口令的天數(shù)

:7警告更改密碼的期限

: 在用戶密碼過期之后到禁用賬戶的天數(shù)

: 從1970年1月1日起践图,到用戶被禁用的天數(shù)

: 保留


/etc/group

/etc/gshadow



[root@oldboyedu ~]# useradd gongli -u 888 -s /sbin/nologin -M


[root@oldboyedu ~]# tail -1 /etc/passwd

gongli:x:888:1007::/home/gongli:/sbin/nologin


bingbing:x:1004:1006::/home/bingbing:/bin/bash



[root@oldboyedu ~]# useradd gongli1 -c "beautify woman" -d /tmp -e '2020/10/20'

useradd: warning: the home directory already exists.

Not copying any file from skel directory into it.


[root@oldboyedu ~]# tail -1 /etc/passwd

gongli1:x:1005:1008:beautify woman:/tmp:/bin/bash


[root@oldboyedu ~]# chage -l gongli1

Last password change : Mar 25, 2019

Password expires : never

Password inactive : never

Account expires : Oct 20, 2020 ?=================

Minimum number of days between password change : 0

Maximum number of days between password change : 99999

Number of days of warning before password expires : 7


給開發(fā)等人員添加用戶掺冠,盡量給截止時間。



[root@oldboyedu ~]# useradd gongli2 -g incahome

[root@oldboyedu ~]# id gongli2

uid=1006(gongli2) gid=1004(incahome) groups=1004(incahome)



/etc/default/useradd文件 useradd命令的配置文件

默認shell就是/bin/bash

為什么默認的家目錄在home下

為什么默認的家目錄/home/用戶名下面有很多隱藏文件码党,從哪來的德崭。


就是/etc/default/useradd文件配置的。


[root@oldboyedu ~]# cat /etc/default/useradd

# useradd defaults file

GROUP=100

HOME=/home

INACTIVE=-1

EXPIRE=

SHELL=/bin/bash

SKEL=/etc/skel

CREATE_MAIL_SPOOL=yes


修改方法:

useradd -D -s /bin/sh相當于vim編輯/etc/default/useradd文件揖盘。

[root@oldboyedu ~]# useradd -D -s /bin/sh

You have new mail in /var/spool/mail/root

[root@oldboyedu ~]# cat /etc/default/useradd

# useradd defaults file

GROUP=100

HOME=/home

INACTIVE=-1

EXPIRE=

SHELL=/bin/sh

SKEL=/etc/skel

CREATE_MAIL_SPOOL=yes


[root@oldboyedu ~]# useradd chenglong1

You have new mail in /var/spool/mail/root

[root@oldboyedu ~]# tail -1 /etc/passwd

chenglong1:x:1007:1009::/home/chenglong1:/bin/sh

[root@oldboyedu ~]# chage -l chenglong1

Last password change : Mar 25, 2019

Password expires : never

Password inactive : never

Account expires : Oct 21, 2020

Minimum number of days between password change : 0

Maximum number of days between password change : 99999

Number of days of warning before password expires : 7



/etc/skel目錄眉厨,創(chuàng)建用戶默認就會把此目錄下的文件拷貝到/home/用戶名下。

/etc/skel為每個用戶提供用戶環(huán)境變量的目錄兽狭。

[root@oldboyedu ~]# ls /etc/skel -A

.bash_logout ?.bash_profile ?.bashrc

===================================================

.bash_logout ?.bash_profile ?.bashrc用戶環(huán)境變量


登錄系統(tǒng)后憾股,命令行出現(xiàn)如下提示:為什么?

[root@oldboyedu /home/chenglong1]# su - chenglong1

-sh-4.2$

-sh-4.2$

解答:用戶的環(huán)境變量缺失導(dǎo)致的箕慧。

執(zhí)行如下命令解決

-sh-4.2$ cp /etc/skel/.bash* .

-sh-4.2$ source ./.bash_profile ./.bashrc

[chenglong1@oldboyedu ~]$

[chenglong1@oldboyedu ~]$


-sh-4.2$ export PS1='[\[\e[34;1m\]\u@\[\e[0m\]\[\e[32;1m\]\H\[\e[0m\]\[\e[31;1m\] \w\[\e[0m\]]\$'

[chenglong1@oldboyedu ~]$


添加用戶要用的文件

/etc/login.defs了解


添加用戶要用的文件

/etc/login.defs ?/etc/skel /etc/default/useradd



編輯/etc/passwd,通過注釋來刪除服球。

#chenglong1:x:1007:1009::/home/chenglong1:/bin/sh

"/etc/passwd" 30L, 1362C written ?????????????????????????????????????????????????????????????

[root@oldboyedu ~]# su - chenglong1

su: user chenglong1 does not exist



[root@oldboyedu ~]# useradd -u 9999 -s /bin/sh -M -g sa -c "老男孩" -e "2019/5/1" zongsheng

[root@oldboyedu ~]# tail -1 /etc/passwd

zongsheng:x:9999:1003:老男孩:/home/zongsheng:/bin/sh

[root@oldboyedu ~]# id zongsheng

uid=9999(zongsheng) gid=1003(sa) groups=1003(sa)

[root@oldboyedu ~]# chage -l zongsheng

Last password change : Mar 25, 2019

Password expires : never

Password inactive : never

Account expires : May 01, 2019

Minimum number of days between password change : 0

Maximum number of days between password change : 99999

Number of days of warning before password expires : 7


usermod -u 8888 -s /bin/bash -m /home/zongsheng -g incahome -c "男孩" -e "2020/5/1"

[root@oldboyedu ~]# usermod -u 8888 -s /bin/bash -g incahome -c "男孩" -e "2020/5/1" zongsheng

[root@oldboyedu ~]# chage -l zongsheng

Last password change : Mar 25, 2019

Password expires : never

Password inactive : never

Account expires : May 01, 2020

Minimum number of days between password change : 0

Maximum number of days between password change : 99999

Number of days of warning before password expires : 7

[root@oldboyedu ~]# id zongsheng

uid=8888(zongsheng) gid=1004(incahome) groups=1004(incahome)

[root@oldboyedu ~]# tail -1 /etc/passwd

zongsheng:x:8888:1004:男孩:/home/zongsheng:/bin/bash

You have new mail in /var/spool/mail/root


usermod -u 8888 -s /bin/bash -g incahome -c "男孩" -e "2020/5/1" zongsheng

usermod -m /home/zongsheng zongsheng


不交互設(shè)置密碼:

方法1:

[root@oldboyedu ~]# echo 123456|passwd --stdin oldgirl

Changing password for user oldgirl.

passwd: all authentication tokens updated successfully.


方法2:

[root@oldboyedu ~]# echo 123456 >pass

[root@oldboyedu ~]# cat pass

123456

[root@oldboyedu ~]# passwd --stdin oldgirl <pass

Changing password for user oldgirl.

passwd: all authentication tokens updated successfully.



[root@oldboyedu ~]# tail -4 /etc/passwd|awk -F ":" '{print $1":oldboy"}' >user.log

[root@oldboyedu ~]# cat user.log

gongli1:oldboy

gongli2:oldboy

chenglong1:oldboy

zongsheng:oldboy


chpasswd對密碼文件的要求是上述user.log


方法1:

[root@oldboyedu ~]# chpasswd<user.log

方法2:

[root@oldboyedu ~]# tail -4 /etc/passwd|awk -F ":" '{print $1":oldboy"}'|chpasswd



作業(yè):批量創(chuàng)建10個用戶,oldboy01-oldboy10,請設(shè)置和用戶名相同的密碼销钝。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末有咨,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子蒸健,更是在濱河造成了極大的恐慌座享,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,188評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件似忧,死亡現(xiàn)場離奇詭異渣叛,居然都是意外死亡,警方通過查閱死者的電腦和手機盯捌,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,464評論 3 395
  • 文/潘曉璐 我一進店門淳衙,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人饺著,你說我怎么就攤上這事箫攀。” “怎么了幼衰?”我有些...
    開封第一講書人閱讀 165,562評論 0 356
  • 文/不壞的土叔 我叫張陵靴跛,是天一觀的道長。 經(jīng)常有香客問我渡嚣,道長梢睛,這世上最難降的妖魔是什么肥印? 我笑而不...
    開封第一講書人閱讀 58,893評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮绝葡,結(jié)果婚禮上深碱,老公的妹妹穿的比我還像新娘。我一直安慰自己藏畅,他們只是感情好敷硅,可當我...
    茶點故事閱讀 67,917評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著墓赴,像睡著了一般竞膳。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上诫硕,一...
    開封第一講書人閱讀 51,708評論 1 305
  • 那天坦辟,我揣著相機與錄音,去河邊找鬼章办。 笑死锉走,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的藕届。 我是一名探鬼主播挪蹭,決...
    沈念sama閱讀 40,430評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼休偶!你這毒婦竟也來了梁厉?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,342評論 0 276
  • 序言:老撾萬榮一對情侶失蹤踏兜,失蹤者是張志新(化名)和其女友劉穎词顾,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體碱妆,經(jīng)...
    沈念sama閱讀 45,801評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡肉盹,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,976評論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了疹尾。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片上忍。...
    茶點故事閱讀 40,115評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖纳本,靈堂內(nèi)的尸體忽然破棺而出窍蓝,到底是詐尸還是另有隱情,我是刑警寧澤繁成,帶...
    沈念sama閱讀 35,804評論 5 346
  • 正文 年R本政府宣布吓笙,位于F島的核電站,受9級特大地震影響朴艰,放射性物質(zhì)發(fā)生泄漏观蓄。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,458評論 3 331
  • 文/蒙蒙 一祠墅、第九天 我趴在偏房一處隱蔽的房頂上張望侮穿。 院中可真熱鬧,春花似錦毁嗦、人聲如沸亲茅。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,008評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽克锣。三九已至,卻和暖如春腔长,著一層夾襖步出監(jiān)牢的瞬間袭祟,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,135評論 1 272
  • 我被黑心中介騙來泰國打工捞附, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留巾乳,地道東北人。 一個月前我還...
    沈念sama閱讀 48,365評論 3 373
  • 正文 我出身青樓鸟召,卻偏偏與公主長得像胆绊,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子欧募,可洞房花燭夜當晚...
    茶點故事閱讀 45,055評論 2 355

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