zoukankan      html  css  js  c++  java
  • Linux 系统初始化和服务

    系统的初始化和服务

    1. Linux 系统启动流程

    • 打开计算机,从主板 BIOS(Basic Input/Out System)读取其中所存储的程序,引导你找到存储系统的硬件(如光盘、硬盘等)
    • 接下来,机械手臂读取硬盘中起始的 512 bytes 程序,这个叫作 主引导记录MBR(master boot record),MBR 会引导你找到该硬盘中存储系统的分区(partiton),并找到加载系统的程序 boot loader
    • Boot Loader 存储系统的相关信息,如系统名称、系统内核(kernel)所在位置等,常见的 boot loader 有 GRUB(Grand Unified BootLoader 多重操作系统启动管理器) 和 LILO等
    • 随后 boot loader 会帮助我们加载系统内核 kernel,它的任务是管理计算机的硬件资源,充当软件和硬件的接口
    • 随后 kernel 会启动一个 init 进程 ,Linux 有 7 个系统级别,如果是图形界面,默认是 init 5
    • 到此计算机就完成量启动工作

    所以完整的启动流程为:BIOS —— MBR ——boot loader (GRUB)—— kernel —— init

    MBR 会在启动盘的第 1 个块中,大小为 512 bytes,前 446 b 程序代码用来选择 boot partition(分区),也就是哪个分区来装入开机用的代码。

    硬盘最小单位是一个扇区,一个扇区大小为 512 bytes

    2. init

    init 配置文件在 /etc/inittab,init 程序要做的工作:

    • 决定默认启动哪个运行级别(run levels)
    • 执行一些系统初始化的脚步(程序)来初始化操作系统
    run level 功能
    0 关机,不能设置为 initdefault(即不能设置为默认的运行级别
    1 单用户模式,只有 root 用户可以登录,用于系统维护的
    2 多用户模式,但是没有启动网络功能
    3 多用户模式,启动了网络功能,但是为文字界面
    4 用户自定义模式,默认与 run level 3 相同
    5 与 run level 3 相同,并且启动了 X11 (即图形界面)
    6 重新启动系统,不能设置为 initdefault

    2.1 怎么进入单用户模式

    在开启虚拟时,会出现有 5 s 的读秒时间,此时按下任意键,进入 GRUB 程序,在这可以选择系统进入,如下图所示:

    接着按下字母 e,进入 kernel 选项,选择相应内核(即第 2 项):

    内核选择好之后,再按字母 e,进入内核启动编辑模式,在参数末尾输入 single 或 1,回车:

    出现如图 1 同样的界面,按下字母 b,即可进入单用户模式,可以进行密码修改(passwd)或者磁盘分区修复(e2fsck -f /dev/systemvg/varlv)等等

    2.2 GRUB 加密

    GRUB(Grand Unified BootLoader 多重操作系统启动管理器) 加密,就是为了防止有人在不知道系统密码的时候,使用单用户模式,从而修改密码。

    可以通过给 GRUB 加密即可防止被其他人登录单用户模式,GRUB 有个配置文件etc/grub.conf,修改它即可

    • default = 0:表示默认选择第一个操作系统启动
    • timeout:表示读秒时间为 5 s
    • splashimage:启动时的 logo
    • hiddenmenu:隐藏文件(在进入内核启动编辑模式后出现,即按下字母 e 后出现)
    • title centOS 6(2.6.32-642.el6.x86_64):为系统版本,多个系统为多个 title

    设置 grub MD5 加密命令

    首先在 grub-md5-crypt 中生成经过 md5 加密算法的密文

    [root@hj ~]# grub-md5-crypt
    Password: 
    Retype password: 
    $1$72yxxxxxxxxxxRldziX32.		# 使用 md5 算法加密后的密码,复制
    

    复制密文,编辑 grub.conf 文件,在 title 之上,hiddenmenu 之下,新建一行 password 文件,保存退出即可

    vim /etc/grub.conf
    hiddenmenu.....
    password --md5 $1$72yxxxxxxxxxxRldziX32.
    titile...
    

    经过 GRUB 设置后,再想进入使用单用户模式,就需要输入密码(此密码为你设置的密码,非经 md5 加密的密文)

    2.3 BIOS 加密

    GRUB 加密也不是完全的安全,通过 BIOS 中的救援模式亦可破解

    00. 通过BIOS 破解 GRUB 方法:

    • 在开机时,按下 f2(或f12、esc)进入 BIOS 设置,在 boot 中选择以 CD-ROM(即光盘中启动,因为虚拟机大部分都是模拟光盘装的系统),然后会进入如下界面,选择第三个进入 救援模式

    • 进入救援模式之后,同样地进入了 root 用户登录的命令行界面,原来的系统会被挂载到 /mnt/sysimage 目录下
    • 进入 /mnt/sysimage 目录,打开 etc/grub.conf,删除 grub.conf 中的 password ,重启
    • 再设置 BIOS,以本地硬盘启动,再进入单用户模式
    basg-4.1# cd /mnt/sysimage/
    ls
    cat etc/grub.conf
    

    01. BIOS 加密方法:

    f2 进入 BIOS 后,选择 Security,里面有一个 Set Supervisor Password,输入密码,f10 保存退出即可。

    注意:即使 BIOS 加密也不是最安全的,拔掉 BIOS 电池,代码被还原,加密自然破解

    3. 关机和重启命令

    3.1 关机命令

    shutdown -h now
    halt
    poweroff
    init 0
    

    3.2 重启命令

    shutdown -r now
    reboot
    init 6
    ctrl + alt + delete 键
    

    4. 查看系统内核、版本信息命令

    cat /etc/redhat-release		# 查看系统版本信息
    uname -r		# 内核版本
    uname -a        # 内核详细信息
    
  • 相关阅读:
    tesseract的简单使用
    快速添加请求头
    1010. 一元多项式求导 (25)
    1009. 说反话 (20)
    1008. 数组元素循环右移问题 (20)
    1007. 素数对猜想 (20)
    1006. 换个格式输出整数 (15)
    素数判断
    1002. 写出这个数 (20)
    1005. 继续(3n+1)猜想 (25)
  • 原文地址:https://www.cnblogs.com/midworld/p/11049505.html
Copyright © 2011-2022 走看看