3.25 課堂筆記

調試定時任務與用戶管理


目錄

一.如何調試定時任務浑塞? 1

1涌献、查看錯誤日志***** 1

2榜田、增加執(zhí)行任務頻率調試任務 ***** 1

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

4脊凰、調整系統(tǒng)時間(測試環(huán)境還湊合) 2

5抖棘、通過腳本日志輸出調試定時任務 2

二.企業(yè)故障案例: 2

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

2.程序通過手動可以執(zhí)行,放定時任務里不執(zhí)行狸涌。 2

三.命令行:bash登錄方式 2

四.用戶相關文件: 3

五.用戶組相關文件: 3

六.md5sum 3

七./etc/passwd文件: 3

八./etc/passwd里的解釋器 3

九.用戶組相關文件 4

十./etc/default/useradd文件 5

十一./etc/skel目錄切省, 6

十二. /etc/passwd 7


一.如何調試定時任務?

1帕胆、查看錯誤日志*****

/var/log/cron

學會最小化排除:

先清空朝捆,>/var/log/cron

然后在測試和觀察。

2懒豹、增加執(zhí)行任務頻率調試任務 *****

把頻率調快芙盘。


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

00 03執(zhí)行脸秽,當前5:00何陆,咱們就把時間調整 05 05,有個5分鐘提前量。

4豹储、調整系統(tǒng)時間(測試環(huán)境還湊合)

00 03執(zhí)行,把系統(tǒng)時間調整到2:55淘这。


5剥扣、通過腳本日志輸出調試定時任務

定時任務輸出

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

腳本輸出:

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


注意點:

有時候程序只能執(zhí)行一次。一定要在測試環(huán)境測試好铝穷,然后直接復制到正式钠怯。


代碼發(fā)布流程:

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


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



二.企業(yè)故障案例:

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

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

df -i

因為定時任務沒有加&>/dev/null断国,定時任務執(zhí)行的時候把輸出給系統(tǒng)root發(fā)郵件贤姆。

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

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

/var/spool/postfix/maildrop/ ??



2.程序通過手動可以執(zhí)行稳衬,放定時任務里不執(zhí)行霞捡。

export變量生產案例


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

登錄后怎么操作都對,但是就是放到定時任務不行街夭。


三.命令行:bash登錄方式

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

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

實踐檢驗板丽,定時任務能否自動加載/etc/bashrc和/etc/profile文件呈枉。


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

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


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



四.用戶相關文件:

/etc/passwd用戶所在文件

/etc/shadow密碼所在文件

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

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



五.用戶組相關文件:

/etc/group用戶組所在文件

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

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

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



六.md5sum

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



七./etc/passwd文件:


Linux是命令行管理荧飞,平時輸入ls,cp,誰識別名党,幫我們把我們想要的輸出呢叹阔?

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



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

/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

給開發(fā)等人員添加用戶邢隧,盡量給截止時間店印。



[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



[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)境變量缺失導致的发魄。

執(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

編輯/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


不交互設置密碼:

方法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

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末俩垃,一起剝皮案震驚了整個濱河市励幼,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌口柳,老刑警劉巖苹粟,帶你破解...
    沈念sama閱讀 211,639評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異跃闹,居然都是意外死亡嵌削,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,277評論 3 385
  • 文/潘曉璐 我一進店門望艺,熙熙樓的掌柜王于貴愁眉苦臉地迎上來苛秕,“玉大人,你說我怎么就攤上這事找默⊥Ы伲” “怎么了?”我有些...
    開封第一講書人閱讀 157,221評論 0 348
  • 文/不壞的土叔 我叫張陵惩激,是天一觀的道長店煞。 經常有香客問我,道長风钻,這世上最難降的妖魔是什么顷蟀? 我笑而不...
    開封第一講書人閱讀 56,474評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮骡技,結果婚禮上鸣个,老公的妹妹穿的比我還像新娘。我一直安慰自己布朦,他們只是感情好囤萤,可當我...
    茶點故事閱讀 65,570評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著喝滞,像睡著了一般。 火紅的嫁衣襯著肌膚如雪膏秫。 梳的紋絲不亂的頭發(fā)上右遭,一...
    開封第一講書人閱讀 49,816評論 1 290
  • 那天做盅,我揣著相機與錄音,去河邊找鬼窘哈。 笑死吹榴,一個胖子當著我的面吹牛,可吹牛的內容都是我干的滚婉。 我是一名探鬼主播图筹,決...
    沈念sama閱讀 38,957評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼让腹!你這毒婦竟也來了远剩?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 37,718評論 0 266
  • 序言:老撾萬榮一對情侶失蹤骇窍,失蹤者是張志新(化名)和其女友劉穎瓜晤,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體腹纳,經...
    沈念sama閱讀 44,176評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡痢掠,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,511評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了嘲恍。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片足画。...
    茶點故事閱讀 38,646評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖佃牛,靈堂內的尸體忽然破棺而出淹辞,到底是詐尸還是另有隱情,我是刑警寧澤吁脱,帶...
    沈念sama閱讀 34,322評論 4 330
  • 正文 年R本政府宣布桑涎,位于F島的核電站,受9級特大地震影響兼贡,放射性物質發(fā)生泄漏攻冷。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,934評論 3 313
  • 文/蒙蒙 一遍希、第九天 我趴在偏房一處隱蔽的房頂上張望等曼。 院中可真熱鬧,春花似錦凿蒜、人聲如沸禁谦。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,755評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽州泊。三九已至,卻和暖如春漂洋,著一層夾襖步出監(jiān)牢的瞬間遥皂,已是汗流浹背力喷。 一陣腳步聲響...
    開封第一講書人閱讀 31,987評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留演训,地道東北人弟孟。 一個月前我還...
    沈念sama閱讀 46,358評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像样悟,于是被迫代替她去往敵國和親拂募。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,514評論 2 348

推薦閱讀更多精彩內容