自我学习笔记09
1、编写脚本,接受二个位置参数,magedu和/www,判断系统是否有magedu,如果没有则自动创建magedu用户,并自动设置家目录为/www
1 #!/bin/bash
2 #
3 #********************************************************************
4 #Author: Ronald-wang
5 #QQ: xxx
6 #Date: 2019-12-23
7 #FileName: creat_user.sh
8 #URL: https://www.cnblogs.com/Ronald-wang/
9 #Description: The test script
10 #Copyright (C): 2019 All rights reserved
11 #********************************************************************
12 Col_R="\e[31m"
13 Col_G="\e[34m"
14 Col_E="\e[0m"
15 if [ ! -n "$1" ];then
16 echo -e $Col_R'Missing Parameter'$Col_E
17 elif [ ! -n "$2" ];then
18 echo -e $Col_R'Missing Parameter'$Col_E
19 else
20 id $1 &>/dev/null
21 if [ `echo $?` -ne 0 ];then
22 useradd $1 -d $2
23 echo -e $Col_G"Creatuser $1 succeed"$Col_E
24 else
25 echo "$1 already exist"
26 fi
27 fi
2、使用expect实现自动登录系统。
1 #!/usr/bin/expect
2 #
3 #********************************************************************
4 #Author: Ronald-wang
5 #QQ: xxx
6 #Date: 2019-12-25
7 #FileName: expect1_ssh.sh
8 #URL: https://www.cnblogs.com/Ronald-wang/
9 #Description: The test script
10 #Copyright (C): 2019 All rights reserved
11 #********************************************************************
12 set ip [lindex $argv 0]
13 set user [lindex $argv 1]
14 set password [lindex $argv 2]
15 spawn ssh $user@$ip
16 expect {
17 "yes/no" { send "yes\n";exp_continue }
18 "password" { send "$password\n" }
19 }
20 interact
3、简述linux操作系统启动流程
CentOS6启动流程
1.加载BIOS的硬件信息,获取第一个启动设备
2.读取第一个启动设备MBR的引导加载程序(grub)的启动信息
3.加载核心操作系统的核心信息,核心开始解压缩,并尝试驱动所有的硬件设备
4.核心执行init程序,并获取默认的运行信息
5.init程序执行/etc/rc.d/rc.sysinit文件
6.启动核心的外挂模块
7.init执行运行的各个批处理文件(scripts)
8.init执行/etc/rc.d/rc.local
9.执行/bin/login程序,等待用户登录
10.登录之后开始以Shell控制主机
Centos7启动流程
1.UEFi或BIOS初始化,运行POST开机自检
2.选择启动设备引导装载程序, centos7是grub2
3.加载装载程序的配置文件:
/etc/grub.d/
/etc/default/grub
/boot/grub2/grub.cfg
4.加载initramfs驱动模块
5.加载内核选项
6.内核初始化,centos7使用systemd代替init
7.执行initrd.target所有单元,包括挂载/etc/fstab
8.从initramfs根文件系统切换到磁盘根目录
9.systemd执行默认target配置,配置文件/etc/systemd/system/default.target
10.systemd执行sysinit.target初始化系统及basic.target准备操作系统
11.systemd启动multi-user.target下的本机与服务器服务
12.systemd执行multi-user.target下的/etc/rc.d/rc.local
13.systemd执行multi-user.target下的getty.target及登录服务
14.systemd执行graphical需要的服务
4、破解centos7 密码。
方法一
1.开机后按任意键停留在此界面。按e键进入内核编辑模式
2.找到以linux16开头的行,在行尾添加 下列代码,按Ctrl+X进去系统
rw init=/sysroot/bin/sh
3.输入以下命令开始修改密码
chroot /sysroot # 切换根目录
passwd root #修改root密码
touch /.autorelabel #更新SELinux文件,如系统本身未开启SELinux可以不输入此命令
exit
reboot # 重启
4.然后等系统重启后输入root和修改后的密码就可以登陆系统啦
方法二
1.开机后按任意键停留在此界面。按e键进入内核编辑模式
2.找到以linux16开头的行,在行尾添加 下列代码,按Ctrl+X进去系统
rd.break
3.输入以下命令开始修改密码
mount -o remount,rw /sysroot #通过mount发现系统目录挂载在/sysroot且只读。重新挂载sysroot设置读写
chroot /sysroot # 切换根目录
passwd root #修改root密码
touch /.autorelabel #更新SELinux文件,如系统本身未开启SELinux可以不输入此命令
exit
reboot # 重启
4.然后等系统重启后输入root和修改后的密码就可以登陆系统啦