1、编写脚本,接受二个位置参数,magedu和/www,判断系统是否有magedu,如果没有则自动创建magedu用户,并自动设置家目录为/www
脚本如下:
id $1 &>/dev/null && echo "The user exists!" || useradd -d $2 $1
执行结果如下:
[14:28:52 root@centos7 scripts]#bash -x creatuser.sh magedu /www
+ id magedu
+ useradd -d /www magedu
[14:29:05 root@centos7 scripts]#getent passwd magedu
magedu:x:1001:1001::/www:/bin/bash
[14:29:22 root@centos7 scripts]#bash -x creatuser.sh magedu /www
+ id magedu
+ echo 'The user exists!'
The user exists!
2、使用expect实现自动登录系统。
expect脚本如下:
#!/usr/bin/expect
spawn ssh 192.168.23.133
expect {
"yes/no" { send "yes\n";exp_continue }
"password" { send "zaq12wsx\n" }
}
interact
#expect eof
执行结果如下:
[14:41:26 root@centos7 scripts]#expect expect2
spawn ssh 192.168.23.133
root@192.168.23.133's password:
Last login: Thu Aug 6 16:04:24 2020 from 192.168.23.1
[root@centos6 ~]# exit
logout
Connection to 192.168.23.133 closed.
3、简述linux操作系统启动流程
centos6启动流程如下:
- 加载BIOS的硬件信息,获取第一个启动设备
- 读取第一个启动设备MBR的引导加载程序(grub)的启动信息
- 加载核心操作系统的核心信息,核心开始解压缩,并尝试驱动所有的硬件设备
- 核心执行init程序,并获取默认的运行信息
- init程序执行/etc/rc.d/rc.sysinit文件
- 启动核心的外挂模块
- init执行运行的各个批处理文件(scripts)
- init执行/etc/rc.d/rc.local
- 执行/bin/login程序,等待用户登录
- 登录之后开始以Shell控制主机

image.png
CentOS 7 引导顺序
- UEFi或BIOS初始化,运行POST开机自检
- 选择启动设备
- 引导装载程序, centos7是grub2
- 加载装载程序的配置文件:/etc/grub.d/ 、/etc/default/grub、/boot/grub2/grub.cfg
- 加载initramfs驱动模块
- 加载内核选项
- 内核初始化,centos7使用systemd代替init
- 执行initrd.target所有单元,包括挂载/etc/fstab
- 从initramfs根文件系统切换到磁盘根目录
- systemd执行默认target配置,配置文件/etc/systemd/system/default.target
- systemd执行sysinit.target初始化系统及basic.target准备操作系统
- systemd启动multi-user.target下的本机与服务器服务
- systemd执行multi-user.target下的/etc/rc.d/rc.local
- Systemd执行multi-user.target下的getty.target及登录服务
- systemd执行graphical需要的服务
4、破解centos7 密码。
破解CentOS7的root口令方法一
-
启动时任意键暂停启动
image.png -
按e键进入编辑模式
image.png -
将光标移动linux16开始的行,添加内核参数rd.break
image.png -
按ctrl-x启动
image.png mount –o remount,rw /sysroot
chroot /sysroot
-
passwd root
image.png touch /.autorelabel ##如果selinux为disabled状态,不需要执行此步骤
exit
reboot
破解CentOS7的root口令方法二
- 启动时任意键暂停启动
- 按e键进入编辑模式
- 将光标移动linux16开始的行,改为rw init=/sysroot/bin/sh
- 按ctrl-x启动
- chroot /sysroot
- passwd root
- touch /.autorelabel ##如果selinux为disabled状态,不需要执行此步骤
- exit
- reboot
破解CentOS7的root口令方法三
光盘启动进入救援模式,修改口令




