centos6及centos7系统启动排错及常见的启动设置

文章目录

    • 1、centos6破解root口令,并为grub设置保护功能
    • 2、破坏本机grub stage1,而后在救援模式下修复之
    • 3、删除vmlinuz和initramfs文件后无法启动,两种方法恢复之
    • 4、增加新硬盘,在其上制作能单独运行kernel和bash的系统
    • 5、在U盘上定制linux,使其可启动系统,并具有网络功能
    • 6、删除/etc/fstab和/boot目录的所有文件,并恢复之
    • 7、编译安装kernel,启用支持ntfs文件系统功能
    • 8、删除/sbin/init的后修复
    • 10、为编译安装的httpd服务,实现service unit文件
    • 11、破解centos7 口令
    • 12、修改默认的启动内核为新编译内核
    • 13、查看selinux状态、永久禁用、临时禁用selinux
    • 15、卸载编译安装的新内核
    • 16、为centos7设置grub保护功能
    • 17、设置centos7 grub默认启动项
    • 18、删除centos7 /grub2目录内容 并修复
    • 19、修改centos7默认启动级别
    • 20、centos6 下/etc/fstab 有一项错误无法启动 修复之

1、centos6破解root口令,并为grub设置保护功能

root口令破解步骤
①在grub引导界面按a修改内核参数

②在quiet后面加上数字1,(s S single都可以),并按回车确认

③输入passwd命令修改密码

grub口令设置步骤:
使用grub-md5-crpt命令生成密码
①使用vim打开/boot/grub/grub.conf
②在vim末行模式输入:r!grub-md5-crypt 生成加密的口令
③添加选项password --md5 PASSWORD

使用grub-crypt口令生成密码
①使用vim打开/boot/grub/grub.conf
②在vim末行模式输入:r!grub-crypt 生成加密的口令

③添加选项password --encrypted PASSWORD
启动之后提示需要输入grub口令
centos6及centos7系统启动排错及常见的启动设置_第1张图片

2、破坏本机grub stage1,而后在救援模式下修复之

1、破坏grub stage1阶段的数据
使用命令 dd if=/dev/zero of=/dev/sda bs=1 count=446

2、使用命令hexdump -n 512 -C -v /dev/sda查看对应的数据为0
3、重启之后不能通过硬盘启动自动进入救援模式

修复grub stage1阶段的步骤
①选择Rescue installed system
②进入shell Start shell
③使用命令 chroot /mnt/sysimage切换根目录
④使用grub-install /dev/sda修复grub stage1阶段的数据

3、删除vmlinuz和initramfs文件后无法启动,两种方法恢复之

在这里插入图片描述
方法一:安装kernel包,重新安装kernel包之后会自动生成这2个文件

①按ESC进入救援模式,光盘启动
②挂载光盘
③安装kernel包

rpm -ivh /mnt/Packages/kernel-2.6.32-696.x86_64.rpm -force

4、增加新硬盘,在其上制作能单独运行kernel和bash的系统

5、在U盘上定制linux,使其可启动系统,并具有网络功能

6、删除/etc/fstab和/boot目录的所有文件,并恢复之

centos6及centos7系统启动排错及常见的启动设置_第2张图片
说明:需要回复fstab,initramfs,vmlinuz,grub.conf 文件
1、恢复/etc/fstab
进入救援模式测试那个是根文件系统
重写/etc/fstab文件

2、恢复/boot目录
使用rpm 命令安装 kernel包

3、恢复/boot/grub目录以及编写grub.conf文件
①使用grub-install命令生成/boot/grub目录下文件
②编写grub.conf文件

在这里插入图片描述

7、编译安装kernel,启用支持ntfs文件系统功能

步骤:
1、获取内核源代码包

www.kernel.org

2、解压源码文件

tar xf linux- 3.10.67.tar.xz  -C /usr/src

3、软链接解压后的文件

cd /usr/src   
ln -sv linux3.10.67 linux

4、copy当前系统的配位模板文件到新内核目录

cp /boot/config-$(uname -r) ./.config

5、选择配置

cd /usr/src/linux   
make help      
make menuconfig

6、编译内核

make  -j 2 

7、安装模块

make modules_install

8、安装内核

make install

9、重启

reboot

8、删除/sbin/init的后修复

centos6及centos7系统启动排错及常见的启动设置_第3张图片
1、救援模式
2、切换根目录

chroot /mnt/sysimage

3、如果之前在/dev/sda3有init的备份,则挂载/dev/sda3.并恢复备份

mount /dev/sda3 /app
mv /app/init /sbin

如果没有备份,可以直接重装upstart.

3.1、挂载光盘/mnt/cdrom

3.2、安装

rpm -ivh /mnt/cdrom/CentOS_6.9_Final/Packages/upstart.xxxxxxxx.rpm --force

10、为编译安装的httpd服务,实现service unit文件

步骤:
1、
2、
3、
4、
5、
6、
7、
8、
9、

11、破解centos7 口令

方法一:
1、启动时任意键暂停启动
2、按e键进入编辑模式
3、将光标移动linux16开始的行,添加内核参数rd.break
4、按ctrl-x启动进入救援模式
5、重新挂载根目录,并添加读写权限

mount –o remount,rw /sysroot

6、切换到真实根目录上

chroot /sysroot

7、重写设置root密码

passwd root

8、创建.autorelabel隐藏文件

touch /.autorelabel

9、exit
10、reboot

方法二:
1、启动时任意键暂停启动
2、按e键进入编辑模式
3、将光标移动linux16开始的行,改为rw init=/sysroot/bin/sh
4、按ctrl-x启动
5、chroot /sysroot
6、passwd root
7、touch /.autorelabel
8、exit
9、reboot

12、修改默认的启动内核为新编译内核

步骤:
1、
2、
3、
4、
5、
6、
7、
8、
9、

13、查看selinux状态、永久禁用、临时禁用selinux

1、getenforce ##查看selinux状态

2、永久禁用selinux
centos 6:

vim /etc/sysconfig/selinux

centos7

vim /etc/selinux/config

把SELINUX=enforcing 改为 SELINUX=disabled

3、临时禁用selinux
setenforce 0 ##设置SELinux 成为permissive模式
setenforce 1 ##设置SELinux 成为enforcing模式

15、卸载编译安装的新内核

步骤:
1、
2、
3、
4、
5、
6、
7、
8、
9、

16、为centos7设置grub保护功能

一:设置明文密码
1、以root权限登录到系统

sudo su -

或者

su -

2、备份文件以防配置错误可以恢复

cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg.bak

3、以明文方式设置grub的密码

在/etc/grub.d/01_users文件中指定超级用户,其中root为超级用户的用户名,PassRoot+123为超级用户root的密码,清空该文件并添加以下几行。(用户名和密码按实际情况设置)

vim /etc/grub.d/01_users

cat << EOF
set superusers="root"
password root PassRoot+123
EOF

4、重新编译生成grub.cfg文件

如果是以BIOS启动方式,则使用下面命令:

grub2-mkconfig -o /boot/grub2/grub.cfg

如果是以UEFI启动方式,则使用下面的命令:

grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg

二:设置密文密码

1、使用grub2-mkpasswd-pbkdf2命令创建密文

grub2-mkpasswd-pbkdf2

Enter Password:

Reenter Password:

PBKDF2 hash of your password is grub.pbkdf2.sha512.10000.F74BCA7A4CD477BEF9653D27248231E4C14B0BB50A316A00E9F7ACE6795781E7AFC8591DA7F5E39874E4ADF024043C470B1F11B052FD5852AE34E550A45D9243.B4F7762531FB5E630C1FA484326879370FE7AA9BC31ADE7969E22CB2CE0FC65292923568394274DC8FA2148C3561041E930A01E17744AE61AF0B5426125D3878

2、现在我们可以修改/etc/grub.d/01_users ( 注意:用户名root和密文之间是空格分隔,而不是换行 )

vim /etc/grub.d/01_users

cat <

3、最后:重新编译生成grub.cfg文件

如果是以BIOS启动方式,则使用下面命令:

 grub2-mkconfig -o /boot/grub2/grub.cfg

如果是以UEFI启动方式,则使用下面的命令:

grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg

17、设置centos7 grub默认启动项

步骤:
1、
2、
3、
4、
5、
6、
7、
8、
9、

18、删除centos7 /grub2目录内容 并修复

步骤:
1、修复配置文件

grub2-mkconfig > /boot/grub2/grub.cfg

2、修复grub2目录下其文件

grub2-install /dev/sda BIOS环境

grub2-install UEFI环境

3、调整默认启动内核

vim /etc/default/grub

修改为: GRUB_DEFAULT=0

19、修改centos7默认启动级别

systemctl get-default  ##获取默认运行级别
systemctl set-default name.target ##修改默认级别

运行级别:
0 ==> runlevel0.target, poweroff.target
1 ==> runlevel1.target, rescue.target
2 ==> runlevel2.target, multi-user.target
3 ==> runlevel3.target, multi-user.target
4 ==> runlevel4.target, multi-user.target
5 ==> runlevel5.target, graphical.target
6 ==> runlevel6.target, reboot.target

20、centos6 下/etc/fstab 有一项错误无法启动 修复之

现象:
centos6及centos7系统启动排错及常见的启动设置_第4张图片

步骤:
1、通过光盘启动进入救援模式
2、blkid 查看分区的UUID
3、vim /etc/fstab 文件修改错误的UUID

你可能感兴趣的:(Linux练习)