第18天 [系统启动和内核管理]

启动流程简介
car /boot/grub/grub.conf
加入password magedu 进入单用户时候需要输入密码。
删除boot

ismod /lib/e1000.ko 加载网卡
cat /etc/sysctl.conf  内核加载

-----------------------------修改系统密码-----------------------------------------
破解CentOS7的root口令方法一
启动时任意键暂停启动
按e键进入编辑模式
将光标移动linux16开始的行,添加内核参数rd.break
按ctrl-x启动
mount –o remount,rw /sysroot
chroot /sysroot
passwd root
touch /.autorelabel
exit
reboot


破解CentOS7的root口令方法二
启动时任意键暂停启动
按e键进入编辑模式
将光标移动linux16开始的行,改为rw init=/sysroot/bin/sh
按ctrl-x启动
chroot /sysroot
passwd root
touch /.autorelabel
exit
reboot


--不如上面那俩好用
破解CentOS7的root口令方法三
启动时任意键暂停启动
按e键进入编辑模式
将光标移动linux16开始的行,改为rw init=/bin/bash
按ctrl-x启动
mount -o remount,rw /
exit
reboot
----------------------------------------------------------------------


给grub添加密码
所有操作在终端操作的。
grub2-setpassword 输入密码
查看 cat/boot/grub2/user.cfg
> /boot/grub2/user.cfg 删除密码

----------------------------------------------------------------------
修改默认启动状态/字符启动
发现不是想要的结果 但是 提到了如果想要修改默认的操作级别需要执行systemctl set-default TARGET.target 
经过查资料所得情况是这个样子的: 
需要命令 systemctl 
获得当前的运行级别: systemctl get-default
启动级别
设置默认的运行级别为 xxx :systemctl set-default xxx

其中 xxx 对系统的级别对应是 
init级别 systemctl target 
0 shutdown.target 
1 emergency.target 
2 rescure.target 
3 multi-user.target 
4 无 
5 graphical.target 
6 无

字符界面:比如我要进入命令模式启动 systemctl set-default multi-user.target
备注:以上命令均需要超级管理员权限 
如果需要临时切换 直接 init + 需要切换到的数字
在终端里面修复 grub(sd0,0)
切换桌面 startx

----------------------------------------------------------------------
删除:grub stage1,之后在救援模式下修复之
进入救援模式
chroot /mnt/sysimage
grub2-install /dev/sda



修复GRUB2/修复grub
GRUB“the Grand Unified Bootloader”
引导提示时可以使用命令行界面
可从文件系统引导
主要配置文件 /boot/grub2/grub.cfg
修复配置文件
grub2-mkconfig > /boot/grub2/grub.cfg
修复grub
grub2-install /dev/sda BIOS环境
grub2-install UEFI环境
调整默认启动内核
vim /etc/default/grub
GRUB_DEFAULT=0



----------------------------------------------------------------------
删除内核修复vmlinuz和initramfs⽂件后⽆法启动,两种⽅法恢复之  /boot/vmlinuz-`uname -r`
方法一、
mkdir /mnt/cdrom
mount /dev/sr0 /mnt/cdrom
chroot /mnt/sysimage #切换/
mkinitrd /boot/initramfs-`uname -r`.img `uname -r `
cp /mnt/cdrom/isolinux/vmlinuz /boot/vmlinuz-`uname -r`
sync
sync #写入磁盘
方法二、
mkdir /mnt/cdrom
mount /dev/sr0 /mnt/cdrom
rpm -ivh /mnt/cdrom/Packages/kernel-2.6.32-696.e16.x86_64.rpm --root=/mnt/sysimage/ --force
ls /mnt/sysimage/boot

----------------------------------------------------------------------
删除boot恢复  
参考网址 https://boke.wsfnk.com/archives/704.html
1.rm-rf /boot/
2.进入 光盘救援模式
3.重新切换根 chroot /mnt/sysimage
4.重新挂载根 mount /dev/cdrom /mnt/
5.第一种方法:重新编辑yum源 ,为的是重新安装kernel
	vim /etc/yum.repos.d/local
	[base]
	name=cdrom base
	baseurl=file:///mnt
	gpgcheck=0
第二种方法(相当于5,6步):也可以挂载光盘是为了要来安装内核(kernel),命令rpm -ivh --force /mnt/Packages/kernel-3.10.0-		957.e17.x86_64.rpm(注意不同系统之间内核版本可能不一样,以自己光盘为准)
6.重装kernel:  yum -y reinstall kernel
7.重装grub2: grub2-install /dev/sda
8.修复配置文件 :grub2-mkconfig > /boot/grub2/grub.cfg
8.exit;reboot;



-------------------------------------------------------------------
CentOS7删除/etc/fstab和/boot⽬录的所有文件,并恢复之
整体思路 先恢复 /etc/fstab 再恢复/boot
我的博客:https://mp.csdn.net/mdeditor/92795893#


------------------------------------------------------------------

*实验:编译安装kernel 5.1.10
yum install gcc ncurses-devel flex  bison openssl-devel elfutils-libelf-devel -y
tar xf linux-5.1.10.tar.xz 
cd linux-5.1.10/
cp /boot/config-3.10.0-957.el7.x86_64  .config
make menuconfig
make -j 16
make modules_install
make install


------------------------------------------------------------------
查看服务是否开机自启:
systemctl is-enabled name.service
其它命令:
查看服务的依赖关系:
systemctl list-dependencies name.service
杀掉进程:
systemctl kill unitname
服务状态
systemctl list-unit-files --type service --all显示状态
loaded  Unit配置文件已处理
active(running) 一次或多次持续处理的运行
active(exited)  成功完成一次性的配置
active(waiting) 运行中,等待一个事件
inactive  不运行
enabled 开机启动
disabled 开机不启动
static  开机不启动,但可被另一个启用的服务激活
71
显示所有单元状态
systemctl 或 systemctl list-units
只显示服务单元的状态
systemctl --type=service
显示sshd服务单元
systemctl –l status sshd.service
验证sshd服务当前是否活动
systemctl is-active sshd
启动,停止和重启sshd服务
systemctl start sshd.service
systemctl stop sshd.service
systemctl restart sshd.service
systemctl 命令示例
72
重新加载配置
systemctl reload sshd.service
列出活动状态的所有服务单元
systemctl list-units --type=service
列出所有服务单元
systemctl list-units --type=service --all
查看服务单元的启用和禁用状态
systemctl list-unit-files --type=service
列出失败的服务
systemctl --failed --type=service
systemctl 命令示例
73
列出依赖的单元
systemctl list-dependencies sshd
验证sshd服务是否开机启动
systemctl is-enabled sshd
禁用network,使之不能自动启动,但手动可以
systemctl disable network
启用network
systemctl enable network
禁用network,使之不能手动或自动启动
systemctl mask network
启用network
systemctl unmask network

----------------------------------------------------------------------------------------------------------
dmidecode命令可以让你在Linux系统下获取有关硬件方面的信息。

linux系统上查看载体为实体机(物理机)还是虚拟机?
dmidecode |grep Product

查看服务器型号: dmidecode | grep 'Product Name'
查看主板的序列号: dmidecode |grep 'Serial Number'
ethtool -i ens33 网卡驱动版本


安装ssh
yum install openssh-clients
----------------------------------------------------------------------------------------------------------
修改内核参数。
sysctl -a 显示当前所有可用的内核参数
sysctl kernel.hostname 读特定的内核参数,比如kernel.hostname
sysctl -w kernel.hostname=abc 把hostname改为abc


进入单用户模式
1 - 在启动grub菜单,选择编辑选项启动
2 - 按键盘e键,来进入编辑界面
3 - 找到Linux 16的那一行,将ro改为rw init=/sysroot/bin/sh
4 - 现在按下 Control+x ,使用单用户模式启动
5 - 现在,可以使用下面的命令访问系统
chroot /sysroot
6 - 重置密码
passwd root
7 - 更新系统信息
touch /.autorelabel
8 - 退出chroot
exit
9 - 重启你的系统
reboot
方法1:
启动项e键修改
找到lunux16 内核这一项,rd.break,ctrl+x启动
mount -o rw,remount /sysroot
chroot /sysroot
passwd 修改密码
如果selinux启动状态,则需要touch /.autorelabel
exit
reboot
方法2:
启动项e键修改
找到linux16,行尾添加 rw init=/sysroot/bin/sh ,ctrl+x启动
chroot /sysroot
passwd 修改密码
如果selinux启动状态,则需要touch /.autorelabel
exit
reboot



linux 运行级别
0:关机
1:单用户模式(root自动登录), single, 维护模式
2:   多用户模式,启动网络功能,但不会启动NFS;维护模式
3:多用户模式,正常模式;文本界面
4:预留级别;可同3级别
5:多用户模式,正常模式;图形界面
6:重启

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值