回覆列表
  • 1 # 使用者7272742818983

    root@localhost ~]# vim /etc/inittab

    1 #

    2 # inittab This file describes how the INIT process should set up

    3 # the system in a certain run-level.

    4 #

    5 # Author: Miquel van Smoorenburg, <[email protected]>

    6 # Modified for RHS Linux by Marc Ewing and Donnie Barnes

    7 #

    8

    9 # Default runlevel. The runlevels used by RHS are:

    10 # 0 - halt (Do NOT set initdefault to this)

    11 # 1 - Single user mode

    12 # 2 - Multiuser, without NFS (The same as 3, if you do not have networking)

    13 # 3 - Full multiuser mode

    14 # 4 - unused

    15 # 5 - X11

    16 # 6 - reboot (Do NOT set initdefault to this)

    17 #

    18 id:3:initdefault:  進入3級別執行這個動作,init要進行工作的時候,預設情況下進入3級別

    19

    20 # System initialization.

    21 si::sysinit:/etc/rc.d/rc.sysinit  進入任何級別執行sysinit這個動作,這個動作表示系統要進行初始化。要執行/etc/rc.d/rc.sysinit

    22

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

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

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

    26 l3:3:wait:/etc/rc.d/rc 3  預設是3級別,因此會執行這一行,把3作為引數傳遞給rc這個指令碼。最後的結果會進入rc3.d這個目錄。

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

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

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

    30

    31 # Trap CTRL-ALT-DELETE

    32 ca::ctrlaltdel:/sbin/shutdown -t3 -r now  無論在哪一種級別下使用者都可以使用ctrl-alt-del來啟動機器,這樣很危險,所以在用的時候最好把它禁用掉。

    33

    34 # When our UPS tells us power has failed, assume we have a few minutes

    35 # of power left. Schedule a shutdown for 2 minutes from now.

    36 # This does, of course, assume you have powerd installed and your

    37 # UPS connected and working correctly.

    38 pf::powerfail:/sbin/shutdown -f -h +2 "Power Failure; System Shutting Down"  交流電失敗後,一般重要的伺服器都是用一些後備電源的(UPS)。當伺服器檢測到交流電沒了,後備電源已經通上了,然後開始向主機上登入的所有使用者去傳送指令:/sbin/shutdown -f -h +2 "Power Failure; System Shutting Down

    39

    40 # If power was restored before the shutdown kicked in, cancel it.

    41 pr:12345:powerokwait:/sbin/shutdown -c "Power Restored; Shutdown Cancelled"  當電源恢復了,取消關機指令。

    42

    43

    44 # Run gettys in standard runlevels

    45 1:2345:respawn:/sbin/mingetty tty1

    46 2:2345:respawn:/sbin/mingetty tty2

    47 3:2345:respawn:/sbin/mingetty tty3

    48 4:2345:respawn:/sbin/mingetty tty4

    49 5:2345:respawn:/sbin/mingetty tty5

    50 6:2345:respawn:/sbin/mingetty tty6

    /sbin/mingetty  產生字元終端,在2345級別都是6個終端。Respawn表示再生的意思,只要終端一登出,還會產生一個終端。

    51

    52 # Run xdm in runlevel 5

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

    53,1 Bot

    開機指令碼: /etc/rc.d/rc.local  希望自動執行的一些指令可以編輯在這個檔案裡。

    啟動時故障排除:

      啟動的時候,故障往往表現在grub的第一階段和第二階段。

      第一階段:就是在MBR的446B可能會出現問題,一旦出現問題後面的grub選單根本看不到。

      第二階段:如果沒有grub選單的話,就無法選擇作業系統,所以第二階段往往是它的配置檔案和說明檔案。而第一階段純粹就是程式,所以這兩個階段是最容易出現問題的。

      

    現在模擬第一階段出現問題的情況:

      將載入程式覆蓋掉,重啟一下(重啟之前斷開與光碟的連線)

      重啟:

      硬碟進不了引導,進而用PXE進行網路引導。出現這種情況需要重建MBR,重建MBR

    要先使用光碟引導進去:

    出現瞭如上介面,這時不要回車,回車就成了安裝了。這時候輸入linux rescue 進入急救模式,利用引導光碟來進入急救模式。

      如果說能夠找到系統的話,將會把系統掛載到/mnt/sysimage目錄下。上面提示系統已經被掛載到/mnt/sysimage/目錄下,進去之後需要chroot /mnt/sysimage,把/mnt/sysimage這個目錄作為根目錄

      使用grub指令重建MBR裡面的446B。

    指明引導系統:這裡面支援Tab鍵

      root(hd0,0)

      之後再執行

      setup(hd0):MBR是針對一塊盤的,所以寫hd0,表示第一塊盤。

      setup是grub裡面的一個子程式,它可以用於幫助重建第一階段和第二階段。

      執行好之後,輸入quit退出,執行兩次exit之後將會自動進行啟動。

    grub引導第二階段主要生成了很多檔案,這些檔案在/boot/grub/目錄下:

    [root@Device-8C324C ~]# ll /boot/grub/

    total 234

    -rw-r--r-- 1 root root 63 Dec 21 05:06 device.map

    -rw-r--r-- 1 root root 7584 Dec 21 05:06 e2fs_stage1_5

    -rw-r--r-- 1 root root 7456 Dec 21 05:06 fat_stage1_5

    -rw-r--r-- 1 root root 6720 Dec 21 05:06 ffs_stage1_5

    -rw------- 1 root root 598 Dec 21 05:06 grub.conf

    -rw-r--r-- 1 root root 6720 Dec 21 05:06 iso9660_stage1_5

    -rw-r--r-- 1 root root 8192 Dec 21 05:06 jfs_stage1_5

    lrwxrwxrwx 1 root root 11 Dec 21 05:06 menu.lst -> ./grub.conf

    -rw-r--r-- 1 root root 6880 Dec 21 05:06 minix_stage1_5

    -rw-r--r-- 1 root root 9248 Dec 21 05:06 reiserfs_stage1_5

    -rw-r--r-- 1 root root 32428 Jan 5 2007 splash.xpm.gz

    -rw-r--r-- 1 root root 512 Dec 21 05:06 stage1  第一階段的描述資訊 共512B

    -rw-r--r-- 1 root root 104988 Dec 21 05:06 stage2  stage2的描述資訊,stage2主要包含了列出來的這些檔案。

    -rw-r--r-- 1 root root 7072 Dec 21 05:06 ufs2_stage1_5

    -rw-r--r-- 1 root root 6272 Dec 21 05:06 vstafs_stage1_5

    -rw-r--r-- 1 root root 8904 Dec 21 05:06 xfs_stage1_5

    所以第二階段可以理解為在/boot/grub/目錄下生成了很多檔案。第一階段主要是程式,第二階段主要是一些配置和說明檔案。配置檔案中最重要的是/etc/grub.conf

    模擬/boot/grub/grub.conf檔案丟失的情況:

      重啟時,發現已經啟動了grub,當看到這種資訊的時候,說明第二階段失效了,問題就是缺少了說明檔案或者是配置檔案,所以才造成無法啟動。(出現這種情況的時候要使用命令啟動第二階段,使用help可以檢視命令)

      

      這就是靠指令將它啟動起來,如果不是靜默模式,螢幕上會出現一堆資訊。

      成功啟動後,要手工建立這個第二階段的配置檔案,直接靠指令來啟動的話會產生第二階段的其他檔案,但是這個配置檔案是不會產生的。

      

      重啟:

        

      使用指令來產生grub第二階段的其他檔案:

      

      #grub-install -root-directory=/ /dev/sda

      建grub第一階段的步驟: 

      grub

      root (hd0,0)

      setup (hd0)

    模擬(把/boot/grub/目錄刪了,意味著第二階段裡面的所有說明檔案配置檔案都沒有了。實驗前記得備份)

     

      載入grub1.5,上面表示載入到grub1.5階段的時候起不來,找不到第二階段的檔案。像這種情況,只能使用急救模式。用光碟引導的時候發現光碟引導不了,說明這個階段是硬碟在引導。硬碟在引導,說明第一階段沒有問題。可以在虛擬機器的CMOS裡面設定硬碟引導。設定成光碟引導,接著進入急救模式

      /boot/grub/目錄下的檔案生成成功,但是沒有grub.conf這個檔案。由於是光碟引導的,所以先把光碟去了再退出。這時就是以硬碟的方式來引導。

      起來之後再為它建立一個grub.conf就可以了。接著再重啟試一下。

      grub是一個載入程式,分為兩階段。第一階段就在主引導記錄的446個位元組裡面,第二階段就在grub目錄下。一個完整的程式少了一段肯定是不行的。

      所以說:一階段實際上是靠grub裡面的一個子命令叫setup來建立。二階段要使用grub-install來建立。

      除了遇到這種一類故障、二類故障之外,有時候還有一種比較常見的故障:

      還有一種故障是:只要在引導過程當中牽扯到的一些檔案,在編譯的過程中可能會出現

    一些故障。

    比如/etc/fstab(檔案系統表,這裡面表明了每一個要掛載的分割槽,若誤操作了,這個檔案又是引導的時候要用的檔案)

      

      

      能走到這一步,說明grub一階段和二階段都是沒有問題的。

      

      提示輸入root密碼進入維護,或者按Control-D繼續來啟動,

      進入維護模式 修改/etc/fstab  但是提示只讀,所以這時候要將根重新掛載一次:

  • 中秋節和大豐收的關聯?
  • 120瓦汽車燈泡發光有多少溫度?