1、编写脚本,接受二个位置参数,magedu和/www,判断系统是否有magedu,如果没有则自动创建magedu用户,并自动设置家目录为/www
#!/bin/bash
if [ $# -ne 2 ]; then
echo "Usage: Enter user_name and user_home"
exit 1
fi
id $1 > /dev/null > 2&>1
if [ $? -ne 0 ]; then
useradd -d $2 $1
echo "$1 is create successful"
else
echo "$1 is already exist"
fi
2、使用expect实现自动登录系统
#!/usr/bin/expect
set IP 192.168.10.3
set PORT 22
set PASSWD test123
spawn ssh root@$IP -p $PORT
expect {
"yes/no" {send "yes\n";exp_continue}
"password" {send "$PASSWD\n"}
}
interact
############################################################################################
详解:spawn:启动新的进程,expect和send命令都是使用spawn打开的进程进行交互
expect:匹配spawn进程返回的字符串,如果匹配到则触发send
send:发送指定字符串到spawn进程,代替标准输入
interact:退出自动交互界面,用户开始进行交互
exp_continue:匹配一个expect中的判断项后,继续匹配后续的判断项,类似控制语句中的continue语句
3、简述linux操作系统启动流程
1. POST加电自检
2. 根据BootSequence(BIOS)设定的启动顺序加载Bootloader(位于MBR中,Linux使用grub)
3. 加载kernel(ramdisk临时根,装载驱动)
4. rootfs(根切换,未必会执行)
5. 执行/sbin/init,设定默认运行级别
6. 系统初始化、关闭及启动服务
7. 启动终端(图形终端)