1、編寫腳本蜡励,接受二個(gè)位置參數(shù),magedu和/www,判斷系統(tǒng)是否有magedu凉倚,如果沒有則自動(dòng)創(chuàng)建magedu用戶兼都,并自動(dòng)設(shè)置家目錄為/www
2、使用expect實(shí)現(xiàn)自動(dòng)登錄系統(tǒng)
3稽寒、簡(jiǎn)述linux操作系統(tǒng)啟動(dòng)流程?
4扮碧、破解centos7?密碼
1、編寫腳本杏糙,接受二個(gè)位置參數(shù)慎王,magedu和/www,判斷系統(tǒng)是否有magedu宏侍,如果沒有則自動(dòng)創(chuàng)建magedu用戶赖淤,并自動(dòng)設(shè)置家目錄為/www
vim magedu_create.sh
#!/bin/bash
USERNAME=$1
USER_DIR=$2
[[ $# -lt 2 ]] && echo "You need to input two arguments:username and directory!"
if id -u $USERNAME > /dev/null 2>&1;then
? ? echo $USERNAME already exists!
else
? ? useradd -d $USER_DIR $USERNAME
echo "$USERNAME created,home directory is $USER_DIR."
fi
unset USERNAME
unset USER_DIR
2、使用expect實(shí)現(xiàn)自動(dòng)登錄系統(tǒng)
#!/usr/bin/expect
set?timeout 30
spawn ssh -l USERNAME 192.168.1.23
expect "password:"
send "PASSWORD\r"
interact
3负芋、簡(jiǎn)述linux操作系統(tǒng)啟動(dòng)流程
1漫蛔、POST加電自檢
當(dāng)給計(jì)算機(jī)上電,主板上的CMOS芯片獲得電源旧蛾,會(huì)執(zhí)行其上的BIOS(基本輸入輸出系統(tǒng)Basic I/O System)程序 莽龟。BIOS程序會(huì)根據(jù)CMOS上的硬件配置信息,去檢查硬件是否存在及是否能正常工作锨天,最后進(jìn)行硬件初始化毯盈。
2、加載bootloader
? ? ? ? 根據(jù)啟動(dòng)順序找到第一個(gè)可以啟動(dòng)的磁盤病袄,加載其MBR中的BootLoader 搂赋; BootLoader就是將內(nèi)核加載至內(nèi)存中、解壓展開益缠。
? ? ? ? 由于MBR只有512byte,Bootloader占用前446bytes脑奠,這么小的空間不可能放置很多的程序,所以Bootloader(grub)就分為3個(gè)階段(stage)完成:
? ? ? ? stage1: 加載Bootloader的主程序(位于MBR中)用于加載stage 1.5的代碼幅慌;
? ? ? ? stage1.5: 位于MBR之后的扇區(qū)宋欺,讓statge1中的bootloader能夠識(shí)別stage2所在的分區(qū)文件系統(tǒng);
? ? ? ? stage2:通過(guò)Bootloader加載所有的配置文件及相關(guān)參數(shù)胰伍,這些參數(shù)都位于磁盤/boot/grub中齿诞;
3、內(nèi)核初始化
? ? ? ?此時(shí)BootLoader需要將內(nèi)核程序加載至內(nèi)存骂租,并進(jìn)行解壓祷杈,展開,控制權(quán)也移交給內(nèi)核渗饮;內(nèi)核需要檢測(cè)硬件設(shè)備但汞,并加載硬件驅(qū)動(dòng)宿刮;但是內(nèi)核程序本身也是放在硬盤的/boot分區(qū)上,這就需要先加載硬盤驅(qū)動(dòng)特占;
? ? ? ?此時(shí)就需要一個(gè)臨時(shí)根文件系統(tǒng)代替一個(gè)真正的文件系統(tǒng)行使權(quán)力糙置,即initrd.? ?Bootloader會(huì)將initrd程序加載至內(nèi)存,initrd會(huì)模擬出一個(gè)虛擬的根文件系統(tǒng)是目,這樣就可以加載硬件驅(qū)動(dòng)等啟動(dòng)過(guò)程中需要的程序谤饭,加載完成后,并完成根切換懊纳;然后內(nèi)核運(yùn)行用戶空間第一個(gè)程序/sbin/init 揉抵,至此,系統(tǒng)將交由init進(jìn)行管理嗤疯;
4冤今、init 初始化
? ? ? ? init 主要是進(jìn)行軟件環(huán)境初始化,它會(huì)讀取配置文件/init/inittab(cent5/6)或systemd(centos7)茂缚,讀取默認(rèn)運(yùn)行級(jí)別戏罢;運(yùn)行 /etc/rc.d/rc.sysinit 進(jìn)行系統(tǒng)初始化;關(guān)閉相應(yīng)級(jí)別的需要停止的服務(wù),啟動(dòng)對(duì)應(yīng)級(jí)別下需要開啟的服務(wù)--->設(shè)置登錄終端脚囊;至此龟糕,系統(tǒng)啟動(dòng)完畢。
4悔耘、破解centos7?密碼
第一步
開機(jī)第一屏讲岁,也就是啟動(dòng)選擇項(xiàng),按字母“e”鍵衬以,如下圖:
進(jìn)入系統(tǒng)引導(dǎo)編輯模式缓艳,按向下箭頭直到最后,如下圖:
將“ro”改為“rw init=/sysroot/bin/sh”看峻,取得系統(tǒng)讀寫權(quán)限阶淘。
按ctrl+x系統(tǒng)正常啟動(dòng),進(jìn)入命令模式
第二步
輸入“chroot? /sysroot”命令互妓,指定系統(tǒng)root目錄舶治,否則相關(guān)命令無(wú)法使用。
第三步
輸入passwd按回車车猬,設(shè)置系統(tǒng)root用戶新密碼。
第四步
輸入命令touch? /.autorelabel尺锚,按回車珠闰,創(chuàng)建隱藏文件,跳過(guò)系統(tǒng)防火墻檢測(cè)瘫辩。(非常重要伏嗜,否則系統(tǒng)無(wú)法正常啟動(dòng))
第五步
按ctrl+d退出坛悉,輸入reboot重新系統(tǒng)后(系統(tǒng)自動(dòng)重啟2次),輸入新密碼即可承绸。