第九周作業(yè)

1批什、編寫腳本,接受二個位置參數(shù)链烈,magedu和/www厉斟,判斷系統(tǒng)是否有magedu,如果沒有則自動創(chuàng)建magedu用戶强衡,并自動設(shè)置家目錄為/www

#!/bin/bash
if [ $# -ne 2 ]; then
    echo "Usage: Enter user_name and user_home"
    exit 1
fi

id $1 > /dev/null > 2&>1
if [ $? -ne 0 ]; then
    useradd -d $2 $1
    echo "$1 is create successful"
else
    echo "$1 is already exist"
fi

2擦秽、使用expect實現(xiàn)自動登錄系統(tǒng)。

#!/usr/bin/expect

set IP 192.168.109.222
set PORT 22
set PASSWD test123456

spawn ssh root@$IP -p $PORT
expect {
    "yes/no" {send "yes\n";exp_continue}
    "password" {send "$PASSWD\n"}
}
interact

############################################################################################
詳解:spawn:啟動新的進程,expect和send命令都是使用spawn打開的進程進行交互
      expect:匹配spawn進程返回的字符串感挥,如果匹配到則觸發(fā)send
      send:發(fā)送指定字符串到spawn進程缩搅,代替標準輸入
      interact:退出自動交互界面,用戶開始進行交互
      exp_continue:匹配一個expect中的判斷項后触幼,繼續(xù)匹配后續(xù)的判斷項硼瓣,類似控制語句中的continue語句

3、簡述linux操作系統(tǒng)啟動流程

10958113-956a01fda8a9133d.png
#### 啟動第一步--加載BIOS

當你打開計算機電源置谦,計算機會首先加載BIOS信息堂鲤,BIOS信息是如此的重要,以至于計算機必須在最開始就找到它媒峡。這是因為BIOS中包含了CPU的相關(guān)信息瘟栖、設(shè)備啟動順序信息、硬盤信息丝蹭、內(nèi)存信息慢宗、時鐘信息坪蚁、PnP特性等等奔穿。開機時將ROM中的指令映射到RAM的低地址空間,CPU讀取到這些指令,硬件的健康狀況進行檢查,按照BIOS中設(shè)置的啟動設(shè)備來啟動。

#### 啟動第二步--讀取MBR

硬盤上第0磁道第一個扇區(qū)被稱為MBR敏晤,也就是Master Boot Record贱田,即主引導(dǎo)記錄,它的大小是512字節(jié)嘴脾,其中前446字節(jié)為主引導(dǎo)記錄,后64字節(jié)為分區(qū)表信息,最后2個字節(jié)為對應(yīng)的校驗男摧。系統(tǒng)找到BIOS所指定的硬盤的MBR后,就會將其復(fù)制到0×7c00地址所在的物理內(nèi)存中译打。被復(fù)制到物理內(nèi)存的內(nèi)容就是Boot Loader耗拓,那就是lilo或者grub了。

#### 啟動第三步--Boot Loader

Boot Loader 就是在操作系統(tǒng)內(nèi)核運行之前運行的一段小程序奏司。bootloader供一個菜單乔询,允許用戶選擇要啟動的系統(tǒng)或不同的內(nèi)核版本; 把用戶選定的內(nèi)核裝載到RAM中的特定空間中韵洋,解壓竿刁、展開,而后把系統(tǒng)控制權(quán)移交給內(nèi)核搪缨。Boot Loader有若干種食拜,其中Grub、Lilo和spfdisk是常見的副编。

#### 啟動第四步--加載內(nèi)核

根據(jù)Grub設(shè)定的內(nèi)核映像所在路徑,系統(tǒng)讀取內(nèi)存映像來解壓縮內(nèi)核,同時還會加載內(nèi)核所需的驅(qū)動程序文件,從而對內(nèi)核進行掛載以及驅(qū)動根文件系統(tǒng)负甸。
initrd(Initial RAM Disk),它在stage2這個步驟就被拷貝到了內(nèi)存中,這個文件是在安裝系統(tǒng)時產(chǎn)生的呻待,是一個臨時的根文件系統(tǒng)(rootfs)煮盼。因為Kernel為了精簡,只保留了最基本的模塊带污,因此僵控,Kernel上并沒有各種硬件的驅(qū)動程序,也就無法識rootfs所在的設(shè)備鱼冀,故產(chǎn)生了initrd這個文件报破,該文件裝載了必要的驅(qū)動模塊,當Kernel啟動時千绪,可以從initrd文件中裝載驅(qū)動模塊充易,直到掛載真正的rootfs,然后將initrd從內(nèi)存中移除荸型。
Kernel會以只讀方式掛載根文件系統(tǒng)盹靴,當根文件系統(tǒng)被掛載后,開始裝載第一個進程(用戶空間的進程)瑞妇,執(zhí)行/sbin/init稿静,之后就將控制權(quán)交接給了init程序。

#### 啟動第五步--用戶層init依據(jù)inittab文件來設(shè)定運行等級

內(nèi)核被加載后辕狰,第一個運行的程序便是/sbin/init改备,該文件會讀取/etc/inittab文件,并依據(jù)此文件來進行初始化工作蔓倍。其實/etc/inittab文件最主要的作用就是設(shè)定Linux的運行等級悬钳,其設(shè)定形式是“:id:5:initdefault:”,這就表明Linux需要運行在等級5上偶翅。

運行級別
對應(yīng)說明

0
關(guān)機,shutdown

1
單用戶模式,root用戶,無須認證,一般是維護模式

2
不帶NFS網(wǎng)絡(luò)服務(wù)的多用戶多任務(wù)模式,一般也是維護模式

3
多用戶多任務(wù)的完全功能模式,文本行界面

4
預(yù)留模式

5
多用戶多任務(wù)的完全功能模式,圖形界面

6
重啟,reboot

啟動第六步--init進程執(zhí)行rc.sysinit
在設(shè)定了運行等級后默勾,Linux系統(tǒng)執(zhí)行的第一個用戶層文件就是/etc/rc.d/rc.sysinit腳本程序,它做的工作非常多聚谁,包括設(shè)定PATH母剥、設(shè)定網(wǎng)絡(luò)配置(/etc/sysconfig/network)、啟動swap分區(qū)垦巴、設(shè)定/proc等等媳搪。
啟動第七步--啟動內(nèi)核模塊,執(zhí)行不同運行級別的腳本程序
具體是依據(jù)/etc/modules.conf文件或/etc/modules.d目錄下的文件來裝載內(nèi)核模塊骤宣。根據(jù)運行級別的不同秦爆,系統(tǒng)會運行rc0.d到rc6.d中的相應(yīng)的腳本程序,來完成相應(yīng)的初始化工作和啟動相應(yīng)的服務(wù)憔披。
啟動第八步--執(zhí)行/etc/rc.d/rc.local
/etc/rc.d/rc.local是給用戶自定義啟動時需要執(zhí)行的文件等限。
啟動第九步--啟動mingetty爸吮,進入系統(tǒng)登陸界面
執(zhí)行/bin/login程序,等待用戶登錄

centos7啟動流程

啟動流程

1.開機自檢 (BIOS)

2.MBR引導(dǎo) (Master Boot Record 主引導(dǎo)記錄 通過硬盤啟動等)

3.GRUB菜單(選擇不同模式 進入救援模式)

4.加載內(nèi)核

5.運行systemd進程

6.讀取/etc/systemd/system/default.target

7.systemd/system/sysinit.target初始化系統(tǒng)

4望门、破解centos7 密碼形娇。

(1)進入到下圖時,按上下鍵


1.jpg

(2)現(xiàn)在就沒有倒計時了筹误,按e進入


2.jpg

(3)往下翻桐早,找到以linux16開頭的一行,將光標移到行尾


3.jpg

(4)刪除行尾至ro改為rw rd.break


4.jpg

(5)ctrl+x


5.jpg

然后輸入以下幾條命令

1.  chroot sysroot/
2.  echo "這個地方填入你更改之后的密碼" | passwd --stdin root 
3.  touch /.autorelabel #selinux會重新對系統(tǒng)文件進行重新標記

(6)最后一步很重要厨剪,很多同學(xué)都容易忘記哄酝,打錯或者沒有輸入的后果就是系統(tǒng)無法正常啟動。

輸入兩遍exit退出

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末祷膳,一起剝皮案震驚了整個濱河市陶衅,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌直晨,老刑警劉巖搀军,帶你破解...
    沈念sama閱讀 221,430評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異勇皇,居然都是意外死亡罩句,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,406評論 3 398
  • 文/潘曉璐 我一進店門儒士,熙熙樓的掌柜王于貴愁眉苦臉地迎上來的止,“玉大人,你說我怎么就攤上這事着撩。” “怎么了匾委?”我有些...
    開封第一講書人閱讀 167,834評論 0 360
  • 文/不壞的土叔 我叫張陵拖叙,是天一觀的道長。 經(jīng)常有香客問我赂乐,道長薯鳍,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,543評論 1 296
  • 正文 為了忘掉前任挨措,我火速辦了婚禮挖滤,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘浅役。我一直安慰自己斩松,他們只是感情好,可當我...
    茶點故事閱讀 68,547評論 6 397
  • 文/花漫 我一把揭開白布觉既。 她就那樣靜靜地躺著惧盹,像睡著了一般乳幸。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上钧椰,一...
    開封第一講書人閱讀 52,196評論 1 308
  • 那天粹断,我揣著相機與錄音,去河邊找鬼嫡霞。 笑死瓶埋,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的诊沪。 我是一名探鬼主播悬赏,決...
    沈念sama閱讀 40,776評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼娄徊!你這毒婦竟也來了闽颇?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,671評論 0 276
  • 序言:老撾萬榮一對情侶失蹤寄锐,失蹤者是張志新(化名)和其女友劉穎兵多,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體橄仆,經(jīng)...
    沈念sama閱讀 46,221評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡剩膘,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,303評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了盆顾。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片怠褐。...
    茶點故事閱讀 40,444評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖您宪,靈堂內(nèi)的尸體忽然破棺而出奈懒,到底是詐尸還是另有隱情,我是刑警寧澤宪巨,帶...
    沈念sama閱讀 36,134評論 5 350
  • 正文 年R本政府宣布磷杏,位于F島的核電站,受9級特大地震影響捏卓,放射性物質(zhì)發(fā)生泄漏极祸。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,810評論 3 333
  • 文/蒙蒙 一怠晴、第九天 我趴在偏房一處隱蔽的房頂上張望遥金。 院中可真熱鬧,春花似錦蒜田、人聲如沸稿械。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,285評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽溜哮。三九已至滔金,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間茂嗓,已是汗流浹背餐茵。 一陣腳步聲響...
    開封第一講書人閱讀 33,399評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留述吸,地道東北人忿族。 一個月前我還...
    沈念sama閱讀 48,837評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像蝌矛,于是被迫代替她去往敵國和親道批。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,455評論 2 359

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