Linux用戶管理(五)Linux系統的啓動

Linux系統的啓動linux

一.啓動步驟和GRUBgit

1Linux啓動過程分                                                             shell

1BIOS自檢windows

l  硬件檢測及初始化微信

l  引導啓動設備ide

2)引導啓動設備字體

l  軟盤(0磁道第一個扇區)spa

l  光盤(最外圍存儲軌道)操作系統

l  硬盤(MBR命令行

l  USB存儲設備

3)調用Linux引導程序至內存中

l Linux的引導程序能夠使用GRUB/LILO等引導軟件

l GRUB/LILO能夠安裝在MBR/引導分區的引導扇區中

4)運行Linux內核

l 內核放在/boot目錄中,Linux系統能夠同時支持多版本內核

l 解壓縮內核

l 檢測硬件

l 加載root文件系統

5)執行init進程(按「i」單步運行)

l 啓動新進程或關閉進程

l 選擇啓動模式

l 創建虛擬終端

6)用戶登陸

l 輸入用戶名及口令

l 加載用戶配置文件

l 加載shell程序

2.引導盤的建立

方法一:安裝過程當中建立

方法二:mkbootdisk

#mkbootdisk  --device  /dev/fd0    2.4.20-8

方法三:使用dd命令

# dd   if=/boot/vmlinuz  of=/dev/fd0

3GRUB

1GRUB簡介

     GRUB是一種基於intel平臺的功能強大的啓動引導器

2GRUB特色

l  支持大硬盤,突破1024柱面的限制

l  支持兩種界面(菜單,命令行)

l  開機畫面

        3)安裝GRUB

l  安裝軟件包

#rpm –ivh  grub-0.934.i386.rpm

l  使用安裝命令安裝GRUBMBR

#grub

grub>root (hdx,y)

grub>setup (hdx[,y])

4GRUB的配置

#vi  /boot/grub/grub.conf

grub.conf中經常使用的配置命令有:

default=菜單項序號/saved

設置啓動菜單的默認啓動項

hiddenmenu

隱藏菜單界面

splashp_w_picpath =圖像文件全路徑名

指定某文件做爲啓動菜單的背景圖像

timeout=延遲秒數

設置啓動菜單的啓動延時

title 菜單項名稱

開始一個菜單項的配置,設置菜單項的名稱

root (hdx,y)

設置GRUB的根設備爲linux內核所在的分區

kernel  內核文件名稱

指定內核文件的名稱及加載內核所需的參數

initrd initrd文件名

指定鏡像文件的位置

map  (hdx[,y])  (hdx[,y])

創建虛擬磁盤

rootnoverify (hdx,y)

指定windows啓動引導器的位置

makeactive

標識指定分區爲活動分區

chainloader +n/文件名稱

調用指定windows啓動文件

password 口令/--md5  口令密文

設置GRUB啓動菜單和菜單項口令

lock

利用password設置的全局口令鎖定菜單項

savedefault

保存當前啓動菜單項爲默認啓動

文件實例:

# grub-md5-crypt(產生口令的MD5密文)

           # vi  /etc/grub.conf

        default=0                  

             timeout=50               

             splashp_w_picpath=(hd0,0)/grub/splash.xpm.gz 

             password  --md5  #!dfdasdf34123!#@$!#@                        

             title  RedHat Linux 9.0          

             root   (hd0,)              

             kernel  /Vmlinuz-2.4.20-8  ro root=/LABEL=/

             initrd   /initrd-2.4.20-8.img       

             password  linux

             tile  windows 2000

             rootnoverify  (hd0,0)         

             chainloader  +1                 

             lock

5GRUBFAQ

l  編輯模式的使用

用於臨時修改菜單的選項,在菜單界面中按E鍵進入

wKioL1neFzijTXmxAABpHnU0WaY336.png-wh_50

菜單主界面

wKiom1neGfejWQwYAABxqwas9BY979.png-wh_50

編輯模式

l  命令行模式的使用

利用命令行命令設置GRUB,在菜單界面中按C鍵進入

wKioL1neF0qQWQ3XAABiLicMKys401.png-wh_50

命令模式

grub命令行中經常使用的命令有:

grub>root  (hdx,y)       //設置根設備所對應的分區

            grub>kernel 內核文件     //設置內核文件的名稱

            grub>initrd 鏡像文件名 //設置鏡像文件名

            grub>boot               //啓動指定操做系統

            grub>rootnoveify (hdx,y)  //設置根設備所對應的分區,但不檢查加載點

            grub>chainloader  文件名//加載指定的文件

grub>help               //獲取幫助

grub>reboot             //重啓系統

grub>md5-crypt         //生成口令的MD5密文

grub>setup (hdx[,y])    //安裝GURBMBR/指定分區的引導扇區中

grub>hide 分區      //隱藏分區

grub>cat 文件名     //顯示文件內容

grub>find 文件名     //查找文件

l  若是MBR中的GRUB引導程序被其它程序覆蓋,應該如該恢復

1)  放入第一張安裝啓動盤,開始啓動計算機:boot:linux rescue(啓動linux的修復模式,加載硬盤上的LINUX系統到/mnt/sysp_w_picpath

2)  #grub

grub>root  (hdx,y) 

grub>root  (hdx)

l  恢復GRUB的配置文件

因爲grub.conf設置的問題,能夠採用如下方法進行恢復:

1)  放入第一張安裝啓動盤,開始啓動計算機:boot:linux rescue(啓動linux的修復模式)

2#vi   /mnt/sysp_w_picpath/boot/grub/grub.conf

l  如何利用GRUB進入單用戶模式,找回丟失的root用戶口令

GRUB菜單界面中按e編輯linux菜單項,給內核後面添加參數single

而後回車再按b進單用戶模式、password root就能夠了。

l  如何卸載GRUB

1#rpm  -e grub

2C:\>fisk/mbr

二.init 進程

1.        init進程的做用

init進程是系統啓動第一個進程,它負責加載其它進程、管理系統的其它進程

2.        系統運行級別

運行級別

說明

0

關機

1

單用戶模式

2

多用戶模式、不支持NFS

3

多用戶模式

4

保留

5

X-WINDOWS

6

重啓

能夠使用init在各個運行級別中進行切換,init命令格式以下:

#init  <0-6,a,s,q>

3.        inittab文件的分析

/etc/inittab文件用於設置init進程在執行時加載哪些程序,inittab文件由若干個記錄構成,每條記錄格式以下:

IDRUNLEVELACTIONCOMMAND

如下爲默認inittab文件內容:

id:3:initdefault:

si::sysinit:/etc/rc.d/init.d/rc.sysinit

l0:0:wait:/etc/rc.d/rc0

l1:1:wait:/etc/rc.d/rc1

l2:2:wait:/etc/rc.d/rc2

l3:3:wait:/etc/rc.d/rc3

l4:4:wait:/etc/rc.d/rc4

l5:5:wait:/etc/rc.d/rc5

l6:6:wait:/etc/rc.d/rc6

ca ::ctrlaltdel:/sbin/shutdown  -t3 -r  now

pf::powerfail:/sbin/shutdown  -f  -h+2  「power failure;power shutting down」

pr:12345:powerokwait:/sbin/shutdown–c  「power  restored;shutdown cancelled」

1:2345:respawn:/sbin/mingetty tty1

2:2345:respawn:/sbin/mingetty tty2

3:2345:respawn:/sbin/mingetty tty3

4:2345:respawn:/sbin/mingetty tty4

5:2345:respawn:/sbin/mingetty tty5

6:2345:respawn:/sbin/mingetty tty6

x:5:respawn:/etc/X11/prefdm  -nodaemon

說明:

(1)Action用於設置調用進程的方式 

Respawn

只要進程中止,該進和便從新啓動

Wait

進程運行一次,init等待到它中止

Once

進程運行一次

Boot

系統引導過程當中,進程運行,忽略等級

Bootwait

系統引導過程當中,進程運行,init等待結束

Off

無任何行動

Initdefault

系統默認運行等級

Sysinit

系統引導則運行,優先於bootbootwait

Powerwait

電源故障後發送信號給init,等待進程終止

Ctrlaltdel

init收到SIGINT信號時,該進程運行

Powerokwait

UPS恢復則向init發送SIGINT信號

2 修改/etc/inittab文件,能夠設置默認啓動模式、各運行級別所加載的程序、CTRLALTDEL的動做、開設虛擬用戶終端

4.        /etc/rc.d 的目錄內容

1/etc/rc.d/init.d目錄

l  保存全部運行等級須要的全部腳本

l  啓動、中止、重啓某些服務

2/etc/rc.d/rc

l  系統改變運行等級,經過此腳本檢查/etc/rc.d/rcX.d目錄和文件可存在,以及是否正在運行等,以及運行/etc/rc.d/rcX.d中全部S開頭的腳本

3/etc/rc.d/rcX.d目錄

l  存放每一運行等級默認啓動項,該目錄中的文件連接到:/etc/rc.d/init.d

l  文件名格式爲K{Two-digit number}  {script name}S{Two-digit number} {script name},K:stop參數運行,S:start參數運行;Two:數字表明執行順序

4/etc/rc.d/rc.local

l  該腳本在2,3,5運行等級結束時執行

5/etc/rc.d/rc.sysinit

l  系統初始腳本,用於設置系統的時鐘、加載鍵盤、加載系統字體、加載其餘文件系統、激活交換分區、生成日誌文件

三.用戶登陸

1.用戶登陸過程

 wKioL1neF4WSuZNVAACsObq-KNw816.jpg-wh_50



2.用戶登陸命令

1su

功能:切換用戶登陸

格式#su  [參數]  [-]  [用戶名]

參數:-c  命令      :運行指定的命令

      -m          :不從新設置環境變量

      -s shell路徑 :運行指定的shell

      -             :連同工做環境一塊兒切換

實例$su  -

#su  user1

$su  -c /sbin/init 0   root

2exit

功能:退出用戶環境(ctrl+d

格式#exit

3login

功能:登陸系統 

格式:#login  [參數]  [用戶名]

參數:

p:通知login保持如今的環境參數

h:用來向遠程登陸的主機傳輸用戶名

實例:#login

4logout

功能:退出用戶環境、注消用戶

實例:#logout

5sudo

功能:以其它用戶執行指定的命令,默認是以root身份,只有/etc/sudoers文件中指定的用戶有權執行

格式:#sudo [參數命令

參數:

-b  在後臺執行指令

-H 將HOME環境變量設爲新身份的HOME環境變量。
-k  結束密碼的有效期限,也就是下次再執行sudo時便須要輸入密碼。
-l  列出目前用戶可執行與沒法執行的指令。
-p  改變詢問密碼的提示符號。
-s  執行指定的shell
-u<用戶>  以指定的用戶做爲新的身份。若不加上此參數,則預設以root做爲新的身份。
-v  延長密碼有效期限5分鐘。
實例:#sudo /sbin/init 0

說明:/etc/sudoers文件格式爲:user  host=[all/nopasswd/run as 用戶名]  command lint;其中All表明全部文件,nopasswd表明執行文件時不須要要口令

6who

功能:顯示登陸用戶信息

格式:#who  [參數]

參數:-l   顯示系統登陸進程

-b   顯示系統最後一次啓動時間

實例:#who

      #who  -l

7w

功能:顯示登陸用戶信息

格式:#w  [用戶]

實例:#w

8whoami

功能:顯示當前終端登陸的用戶名稱

實例#whoami

9last

功能:顯示最近的用戶登陸狀況

格式:#last  [參數]

參數:num    顯示指定終端上的用戶登陸信息

      -num  顯示最近n次的用戶登陸信息

  -i   顯示登陸主機的IP地址

實例:#last

#last 3

10wall

功能:向每一個用戶終端上的用戶發送消息

格式:#wall [參數]

參數:-n   不顯示消息來源

實例:#wall

#wall -n

11write

功能:向指定終端的用戶發送消息

格式:#write 用戶名 [終端

實例:#write  user1   tty1

注意:/etc/motd爲公告板文件,用於記錄全部公告信息;/etc/issue爲歡迎信息文件

12help

功能:獲取shell內置命令的幫助信息

格式:#help  [內置命令名]

實例:#help

      #help times

13man

功能:打開命令手冊文件

格式:#man  [命令名/文件名]

實例:#man  su

微信掃一掃 、關注公衆號

   不定時分享資料視頻

20191030160339365.jpg

相關文章
相關標籤/搜索