天天看点

Linux运维——启动引导与修复Linux运维——启动引导与修复

Linux运维——启动引导与修复

一、系统运行级别

1、运行级别

运行级别 含义
关机
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/

[[email protected] 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 配置文件软连接路径
[[email protected] 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_MD

        a:禁用软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

则表示启动系统也需要输入密码。

注意:在远程服务器禁止使用此操作,否则会导致系统无法开机。