Linux運維——啓動引導與修復

Linux運維——啓動引導與修復

一、系統運行級別

1、運行級別

運行級別 含義
0 關機
1 單用戶模式,可以想象爲windows的安全模式,主要用於系統修復
2 不完全命令行模式,不含NFS服務
3 完全命令行模式,標準字符界面
4 系統保留
5 圖形模式
6 重啓動
  • 使用命令查看系統的運行級別
runlevel
  • 進入指定級別
init [級別]

2、修改默認啓動級別

# centos6
# 修改/etc/inittab

# centos7
命令格式:

systemctl [command] [unit.target]

command參數:
	get-default 取得當前的target
	set-default 設置指定的target爲默認的運行級別
	isolate 切換到指定的運行級別
	unit.target 上面列出的運行級別

3、開機啓動自動運行命令

/etc/rc.d/rc.local配置文件會在用戶登錄之前讀取,在此文件中寫入任何命令,在每次系統啓動時都會執行一次。有任何需要在系統啓動就運行的工作,只要寫入/etc/rc.d/rc.local這個配置文件即可。

二、啓動引導程序(Boot Loader)

1、Grub 目錄

  • 打開/boot/grub2/
[root@192 grub2]# ll 
總用量 40
-rw-r--r--. 1 root root   64 2月  12 15:54 device.map
drwxr-xr-x. 2 root root   25 2月  12 15:54 fonts
-rw-r--r--. 1 root root 5162 2月  12 16:16 grub.cfg # grub 配置文件
-rw-r--r--. 1 root root 4287 2月  12 15:55 grub.cfg.1581495172.rpmsave
-rw-r--r--. 1 root root 1024 2月  12 16:16 grubenv
drwxr-xr-x. 2 root root 8192 2月  12 15:54 i386-pc
drwxr-xr-x. 2 root root 4096 2月  12 15:54 locale
  • Grub 配置文件軟連接路徑
[root@192 grub2]# ll /etc/grub2.cfg 
lrwxrwxrwx. 1 root root 22 2月  12 16:13 /etc/grub2.cfg -> ../boot/grub2/grub.cfg

2、Grub 配置文件

2.1在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,1)
擴展分區 /dev/sdb3 hd(1,2)
第一個邏輯分區 /dev/sdb5 hd(1,4)

2.2 Grub 配置文件

vim /boot/grub/grub.conf
文件內容:
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /boot/, eg.
#          root (hd0,0)
#          kernel /vmlinuz-version ro root=/dev/sda2
#          initrd /initrd-[generic-]version.img
#boot=/dev/sda
default=0 # 默認啓動那個系統
timeout=5 # 等待時間
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS 6 (2.6.32-754.el6.x86_64)
        root (hd0,0)
        kernel /vmlinuz-2.6.32-754.el6.x86_64 ro root=UUID=265e5c19-2d77-4123-b688-9a90a3786f72 rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
        initrd /initramfs-2.6.32-754.el6.x86_64.img
  • default=0
    • 默認啓動第一個系統。也就是如果在等待世界結束後,用戶沒有選擇進入哪一個系統,那麼系統會默認進入第一個系統。如果有多系統並存,那麼每個系統都會有自己的title字段,如果想要默認進入第二個系統,這裏可以設置爲default=1
  • timeout=5
    • 等待時間,默認爲5秒。也就是進入系統時,如果5秒內用戶沒有按下任何鍵,那麼系統會進入default字段定義的系統。當然可以手動修改此等待時間,如果timeout=0則不會等待直接進入系統,timeout=-1則是一直等待用戶輸入,而不會自動進入系統。
  • splashimage=(hd0,0)/grub/splash.xpm.gz
    • 這裏指定grub啓動時的背景圖文件的保存位置,這裏的(hd0,0)表示第一個硬盤的第一個分區。
  • hiddenmenu
    • 隱藏菜單,啓動時默認只能看到讀秒,而不能看到菜單。

系統配置項:

  • title CentOS(2.6.32-279.d6.i686):系統啓動時在 GRUB 的啓動菜單中的標題。

  • root(hd0,0):啓動程序的保存分區。

  • kernel /vmlinuz-xxxx.x86_64 ro root=UUID=xxxxxxxx

    • /vmlinuz-xxxx.x86_64:指定了內核文件的位置。
    • ro:啓動時以只讀方式掛載根文件系統。
    • root=UUID=xxxxxxxx:指定根文件系統的所在位置。
    • 配置項參數:
      • rd_NO_LUKS:禁用LUKS(用於磁盤加密)。
      • rd_NO_MDa:禁用軟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-754.el6.x86_64.img:指定了initramfs內存文件系統鏡像文件所在位置。

2.3 Grub 加密

  • 生成密碼
grub-md5-crypt
  • 設置密碼
default=0
timeout=5
password --md5 XXXXXXXXX
splashimage=xxxxx

注意:密碼項必須添加在timeout下方splashimage上方纔可生效。格式:password --md5 [生成的加密後的密碼]

添加此密碼不影響操作系統正常啓動,在title下方添加lock則表示啓動系統也需要輸入密碼。

注意:在遠程服務器禁止使用此操作,否則會導致系統無法開機。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章