1. 程式人生 > 其它 >|NO.Z.00003|——————————|ManageMent|——|Linux&系統管理.V03|

|NO.Z.00003|——————————|ManageMent|——|Linux&系統管理.V03|

一、Grub 的配置檔案:在 grub 中分割槽的表示方法
  分割槽 Linux中裝置檔名 Grub中裝置檔名
第一塊SCSI硬碟 第一個主分割槽 /dev/sda1 hd(0,0)
第二個主分割槽 /dev/sda2 hd(0,1)
擴充套件分割槽 /dev/sda3 hd(0,2)
第一個邏輯分割槽 /dev/sda5 hd(0,4)
第二塊SCSI硬碟 第一個主分割槽 /dev/sdb1 hd(1,0)
第二個主分割槽 .dev.sdb2 hd(1,2)
擴充套件分割槽 /dev/sdb3 hd(1,2)
第一個邏輯 /dev/sdb5 hd(1,4)

二、grub 的配置檔案

### --- grub 的配置檔案
### --- 根下的檔案;前面定義了主目錄,這些檔案就位於哪個主目錄之下

[root@server21 ~]# vi /boot/grub/grub.conf
#boot=/dev/sda
default=0                                                       // 預設啟動第一個作業系統
timeout=5                                                       // 5秒會讓你選擇進入那個系統,若是寫成-1會一直等待;需要回車才可以執行;遠端是不可以執行操作的。0時間太短。
hiddenmenu                                              
~~~     以上為 grub 整體設定
title CentOS (2.6.32-279.el6.i686)
root (hd0,0)
kernel           /vmlinuz-2.6.32-279.el6.i686
root=UUID=b9a7a1a8-767f-4a87-8a2b-a535edb362c9 rd_NO_LUKS  KEYBOARDTYPE=pc KEYTABLE=us
rd_NO_MD crashkernel=auto LANG=zh_CN.UTF-8 rd_NO_LVM rd_NO_DM rhgb quiet
~~~     以上 4 行為一行,只是內容過多的自動換行
initrd /initramfs-2.6.32-279.el6.i686.img
default=0
~~~     預設啟動第一個系統。也就是如果在等待時間結束後,使用者沒有選擇進入哪一個系統,
~~~     那麼系統會預設進入第一個系統。如果有多系統並存,那麼每個系統都會有自己的 title 欄位,
~~~     如果想要預設進入第二個系統,這裡就可以設為 default=1。
timeout=5
~~~     等待時間,預設是 5 秒。也就是進入系統時,如果 5 秒內使用者沒有按下任意鍵,
~~~     那麼系統會進入 default 欄位定義的系統。當然可以手工修改這個等待時間,
~~~     如果 timeout=0 則不會等待直接進入系統,timeout=-1 則是一直等待使用者輸入,
~~~     而不會自動進入系統。
splashimage=(hd0,0)/grub/splash.xpm.gz                          // 背景影象
~~~     這裡是指定 grub 啟動時的背景影象檔案的儲存位置的。
~~~     記得 CentOS 6.x 啟動時後臺的藍色影象吧,就是這個檔案的作用哦。不過這個檔案具體在哪裡啊?
~~~     已經說過了 hd(0,0)代表第一個硬碟的第一個分割槽,
~~~     而超哥的系統安裝時/boot 分割槽就是第一個分割槽,
~~~     所以這個背景影象的實際位置就是/boot/grub/splash.xpm.gz。
hiddenmenu                                                      // 背景影象隱藏起來了。
~~~     隱藏選單。啟動時預設只能看到讀秒,而不能看到選單,如果想要看到選單需要按任意鍵。
~~~     如果註釋了這句話,那麼啟動時就能直接看到選單了。
~~~     以上就是 grub 的整體設定,下面我們介紹 CentOS 系統的啟動設定:
title CentOS (2.6.32-279.el6.i686)                              // 這裡系統什麼,在啟動的時候,就會顯示什麼
~~~     title 就是標題的意思,也就是說在 title 後面寫入的是什麼,那麼系統啟動時在 grub 的啟
~~~     動選單中看到的就是什麼。
root (hd0,0)                                                    // 主目錄的意思
~~~     是指啟動程式的儲存分割槽。這裡要注意啊,這個 root 並不是管理員哦。
~~~     在我的系統中,/boot分割槽是獨立劃分的,
~~~     而且裝置檔名為/dev/sda1,所以在 grub 中,就被描述為 hd(0,0)。
kernel           /vmlinuz-2.6.32-279.el6.i686
root=UUID=b9a7a1a8-767f-4a87-8a2b-a535edb362c9
rd_NO_LUKS   KEYBOARDTYPE=pc
KEYTABLE=us rd_NO_MD crashkernel=auto LANG=zh_CN.UTF-8 rd_NO_LVM rd_NO_DM rhgbquiet 
### --- grub 的配置檔案

[root@server21 ~]# vi /boot/grub/grub.conf
#boot=/dev/sda
default=0                                                       // 預設啟動第一個作業系統
timeout=5                                                       // 5秒會讓你選擇進入那個系統,若是寫成-1會一直等待;需要回車才可以執行;遠端是不可以執行操作的。0時間太短。
hiddenmenu                                              
~~~     以上為 grub 整體設定
title CentOS (2.6.32-279.el6.i686)
root (hd0,0)
kernel           /vmlinuz-2.6.32-279.el6.i686
root=UUID=b9a7a1a8-767f-4a87-8a2b-a535edb362c9 rd_NO_LUKS  KEYBOARDTYPE=pc KEYTABLE=us
rd_NO_MD crashkernel=auto LANG=zh_CN.UTF-8 rd_NO_LVM rd_NO_DM rhgb quiet
~~~     以上 4 行為一行,只是內容過多的自動換行
initrd /initramfs-2.6.32-279.el6.i686.img
default=0
~~~     預設啟動第一個系統。也就是如果在等待時間結束後,使用者沒有選擇進入哪一個系統,
~~~     那麼系統會預設進入第一個系統。如果有多系統並存,
~~~     那麼每個系統都會有自己的 title 欄位,如果想要預設進入第二個系統,
~~~     這裡就可以設為 default=1。
timeout=5
~~~     等待時間,預設是 5 秒。也就是進入系統時,如果 5 秒內使用者沒有按下任意鍵,
~~~     那麼系統會進入 default 欄位定義的系統。當然可以手工修改這個等待時間,
~~~     如果 timeout=0 則不會等待直接進入系統,timeout=-1 則是一直等待使用者輸入,
~~~     而不會自動進入系統。
splashimage=(hd0,0)/grub/splash.xpm.gz                          // 背景影象
~~~     這裡是指定 grub 啟動時的背景影象檔案的儲存位置的。
~~~     記得 CentOS 6.x 啟動時後臺的藍色影象吧,就是這個檔案的作用哦。
~~~     不過這個檔案具體在哪裡啊?已經說過了 hd(0,0)代表第一個硬碟的第一個分割槽,
~~~     而超哥的系統安裝時/boot 分割槽就是第一個分割槽,
~~~     所以這個背景影象的實際位置就是/boot/grub/splash.xpm.gz。
hiddenmenu                                                      // 背景影象隱藏起來了。
~~~     隱藏選單。啟動時預設只能看到讀秒,而不能看到選單,如果想要看到選單需要按任意鍵。
~~~     如果註釋了這句話,那麼啟動時就能直接看到選單了。
~~~     以上就是 grub 的整體設定,下面我們介紹 CentOS 系統的啟動設定:
~~~     title CentOS (2.6.32-279.el6.i686)                      // 這裡系統什麼,在啟動的時候,就會顯示什麼
~~~     title 就是標題的意思,也就是說在 title 後面寫入的是什麼,
~~~     那麼系統啟動時在 grub 的啟動選單中看到的就是什麼。
root (hd0,0)                                                    // 主目錄的意思
~~~     是指啟動程式的儲存分割槽。這裡要注意啊,這個 root 並不是管理員哦。
~~~     在我的系統中,/boot分割槽是獨立劃分的,而且裝置檔名為/dev/sda1,所以在 grub 中,
~~~     就被描述為 hd(0,0)。
kernel           /vmlinuz-2.6.32-279.el6.i686
root=UUID=b9a7a1a8-767f-4a87-8a2b-a535edb362c9
rd_NO_LUKS   KEYBOARDTYPE=pc
KEYTABLE=us rd_NO_MD crashkernel=auto LANG=zh_CN.UTF-8 rd_NO_LVM rd_NO_DM rhgbquiet #根下的檔案;前面定義了主目錄,這些檔案就位於哪個主目錄之下
~~~     /vmlinuz-2.6.32-279.el6.i686:指定了核心檔案的位置,這裡的/是指/boot 分割槽。
~~~     ro:啟動時以只讀方式掛載根檔案系統,這是為了不讓啟動過程影響磁碟內的檔案系統。
~~~     root=UUID=b9a7a1a8-767f-4a87-8a2b-a535edb362c9:指定根檔案系統的所在位置。
~~~     這裡和以前的 Linux 版本不太一樣了,不再是通過分割槽的裝置檔名或卷標號
~~~     來指定,而是通過分割槽的 UUID 來進行指定。那麼如何查詢分割槽的 UUID 號呢?
~~~     方法有很多種,最簡單的辦法就是查詢/etc/fstab 檔案,命令如下:
[root@server21 ~]# cat /etc/fstab | grep "/ "
UUID=abf5e308-010f-4335-bb61-1c1e773452fa /                       ext4    defaults        1 1
~~~     可以看到“/”分割槽的 UUID 和 kernel 行中的 UUID 是匹配的。注意一下,grep 後的“/ ”,在/後是有空格的。
### --- rd_NO_LUKS:禁用 LUKS,LUKS 用於給磁碟加密。            // 啟動過程中的禁用,為了加速啟動過程。
~~~     rd_NO_MD:禁用軟 RAID。
~~~     rd_NO_DM:禁用硬 RAID。
~~~     rd_NO_LVM:禁用 LVM。以上禁用都只是在啟動過程中禁用,是為了加速系統啟動的。
~~~     KEYBOARDTYPE=pc KEYTABLE=us:鍵盤型別。
~~~     crashkernel=auto:自動為 crashkernel 預留記憶體。
~~~     LANG=zh_CN.UTF-8:語言環境
~~~     rhgb:(redhat graphics boot)用圖片來代替啟動過程中的文字資訊。
~~~     啟動完成之後可以使用 dmesg 命令來檢視這些文字資訊。
~~~     quiet:隱藏啟動資訊,只顯示重要資訊。
~~~     initrd /initramfs-2.6.32-279.el6.i686.img:
~~~     指定了 initramfs 記憶體檔案系統映象檔案的所在位置。

三、grub 加密

### --- grub 加密

[root@server21 ~]# grub-md5-crypt
Password: 123456
Retype password: 123456
~~~     輸入兩次密碼
$1$tA48J1$tIXJQjAn3zSuQf4F5cJSs/
~~~     生成加密密碼字串
~~~     這樣就可以生成加密密碼字串,這個字串是採用 md5 加密的,
~~~     就是你的密碼經 md5 編碼之後的。我們會利用這個加密密碼字串來加密 grub 配置檔案。
 
### --- grub 選單整體加密
~~~     如果只是加密單個啟動選單,grub 的編輯模式是不能鎖定的,
~~~     還是可以按“e”鍵進入編輯模式。
~~~     而且進入編輯模式後,是可以刪除 password 欄位的,
~~~     再按“b”(boot 啟動)鍵就可以不用密碼直接進入系統。這時就需要給 grub 選單整體加密了,整體加密後,
~~~     如果想進入 grub 編輯介面必須輸入正確的密碼。
~~~     加密方法其實只是把 password 欄位換個位置而已,具體方法如下:

[root@server21 ~]# vim /boot/grub/grub.conf
default=0
timeout=5
password --md5 $1$tA48J1$tIXJQjAn3zSuQf4F5cJSs/
~~~     password 選項放在整體設定處。
splashimage=(hd0,0)/grub/splash.xpm.gz
~~~     如果只是加密單個啟動選單,grub 的編輯模式是不能鎖定的,
~~~     還是可以按“e”鍵進入編輯模式。
~~~     而且進入編輯模式後,是可以刪除 password 欄位的,
~~~     再按“b”(boot 啟動)鍵就可以不用密碼直接進入系統。這時就需要給 grub 選單整體加密了,
~~~     整體加密後,如果想進入 grub 編輯介面必須輸入正確的密碼。
~~~     加密方法其實只是把 password 欄位換個位置而已,具體方法如下:

[root@server21 ~]# vim /boot/grub/grub.conf
default=0
timeout=5
password --md5 $1$tA48J1$tIXJQjAn3zSuQf4F5cJSs/
~~~     password 選項放在整體設定處。
splashimage=(hd0,0)/grub/splash.xpm.gz
### --- 重啟

[root@server21 ~]# reboot
### --- 預設是e鍵,現在變成p鍵
~~~     但是這樣加密,啟動 CentOS 時,是不需要密碼就能正常啟動的。
~~~     那我如果既需要 grub 的整體加密,又需要系統啟動時輸入正確的密碼。那應該怎麼做呢?
~~~     很簡單,方法如下:

default=0
timeout=5
password --md5 $1$tA48J1$tIXJQjAn3zSuQf4F5cJSs/
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.32-279.el6.i686)
lock                                                            // 此操作不可以配置;在 title 欄位,加入 lock。代表鎖死,如果不輸入正確的 grub 密碼也不能啟動

 

 

 

 

 

 

 

   
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart                                                                                                                                                    ——W.S.Landor