1. 写一个简单的批量添加用户的shell程序(注:参照示例7-13)
假定用户名、密码、用户所属的组包括在文件myuser中(分别是第1列、第2列、第3列),格式如下:
hao 123456 net04grp
tom 234567 net04grp
nuwa 345678 net04grp
zhangqiang uvwxyz stu05
lusi shanghai stu05
jane qpmzwonx stu05
如果你编写的脚本是ua.sh,那么在工作目录下,执行:
./ua.sh -f myuser
就能将文件myuser中所列的用户做为系统用户添加进来,并设定密码,用户组。
2. 在第1题的基础上,编写一个批量删除用户的程序.
如果你编写的脚本是ud.sh,那么在工作目录下,执行:
./ud.sh -f myuser
就能将文件myuser中所列的系统用户删除。
3. 编写下列bash脚本函数(函数名可以自定义):
isRootUser():判断当前用户是否是root用户
isUserExist():判断用户是否存在
getOs():显示操作系统名称
die(): 显示信息($1), 以某个返回值($2)退出
getHostName(): 显示主机名称
getCpuInfo():显示CPU的相关信息,如制造商,频率等
getRealRamInfo():显示系统RAM大小
getSystemLoad():显示系统在过去5,10,15分钟的负载
getNumberOfLoggedInUsers(): 得到登录的用户数
getNumberOfInterfaces(): 得到网络接口数
getNumberOfKernelModules(): 得到内核模块数 (提示: lsmod )
getNumberOfRunningProcess(): 得到运行的进程数(提示: ps -aux)
getParittions() :显示分区数,各分区的总空间大小,已用空间大小,尚余空间大小及百分比
getOsRunLevel(): 得到系统运行级别(提示:/etc/inittab有默认系统运行级别的设置, 或运行命令runlevel)
getDiskDrives(): 获取磁盘数 (提示:fdisk -l)
4. 编写脚本ifbash,通过新建配置文件的方式,为网络接口eth0绑定一个新的IP,即假定原来eth0上只绑定了一个IP,则通过下面两次执行:
# ./ifbash 172.16.32.50 255.255.0.0
# ./ifbash 10.1.1.10 255.0.0.0
将为eth0添加两个虚拟接口
eth0:1 (172.16.32.50/255.255.0.0)
eth0:2 (10.1.1.10/255.0.0.0)