当前位置: 首页 > news >正文

shell脚本案例:创建用户和组

使用场景

在部署程序时,往往首要任务是创建用户和组。有的程序可能用到的组、用户比较多;且不知道服务器环境是否已经有了所需的组和用户。所以针对这个情况,根据Oracle RAC部署时的实际情况写了个脚本。

Linux版本

脚本代码

#!/bin/bash
#组
echo -e  "\e[32m************************ \e[0m"
echo -e  "\e[32m组信息\e[0m"
echo -e  "\e[32m************************ \e[0m"group=(oinstall dba oper asmadmin asmdba asmoper)
for i in "${group[@]}"
do
grep "^$i" /etc/group >& /dev/nullif [ $? != 0 ];thenif [ $i = "oinstall" ];then  groupadd -g 5001 oinstall; echo "oinstal组已添加"elif [ $i = "dba" ];then groupadd -g 5002 dba; echo "dba组已添加"elif [ $i = "oper" ];then groupadd -g 5003 oper; echo "oper组已添加"elif [ $i = "asmadmin" ];then groupadd -g 5004 asmadmin; echo "asmadmin组已添加"elif [ $i = "asmoper" ];then groupadd -g 5005 asmoper; echo "asmoper组已添加"elif [ $i = "asmdba" ];then groupadd -g 5006 asmdba; echo "asmdba组已添加"fielseecho "$i组已存在"fi
doneecho -e  "\e[32m************************ \e[0m"
echo -e  "\e[32m用户信息\e[0m"
echo -e  "\e[32m************************ \e[0m"user=(grid oracle)
for i in "${user[@]}"
dogrep "^$i" /etc/passwd >& /dev/nullif [ $? != 0 ];thenif [ $i = grid ]then useradd -u 6002 -g oinstall -G asmadmin,asmdba,asmoper,oper,dba grid ;  echo grid | passwd --stdin grid ; echo "grid用户已添加"elif  [ $i = oracle ]then useradd -u 6001 -g oinstall -G dba,asmdba,oper oracle; echo oracle | passwd --stdin oracle; echo "oracle用户已添加"fielseecho "$i用户已存在"fi
done

执行效果

http://www.lryc.cn/news/476609.html

相关文章:

  • C++笔试题之实现一个定时器
  • 【英特尔IA-32架构软件开发者开发手册第3卷:系统编程指南】2001年版翻译,2-13
  • 快消零售行业的培训创新:构建在线培训知识库
  • 【AI开源项目】Botpress - 开源智能聊天机器人平台及其部署方案
  • 一文读懂系列:SSL加密流量检测技术详解
  • Android Studio各种历史版本
  • 大数据导论及分布式存储HadoopHDFS入门
  • 语言模型的采样方法
  • 使用 Nginx 配置真实 IP 地址转发
  • WPF+MVVM案例实战与特效(二十四)- 粒子字体效果实现
  • Oracle视频基础1.4.3练习
  • energy 发布 v2.4.5
  • 一文详解工单管理系统,工单系统是什么意思
  • 【无标题】基于SpringBoot的母婴商城的设计与实现
  • 你需要了解的Android主题相关知识
  • 基于Multisim数控直流稳压电源电路(含仿真和报告)
  • 精读预告Bigtable
  • 软件架构演变:从单体架构到LLM链式调用
  • Redis-“自动分片、一定程度的高可用性”(sharding水平拆分、failover故障转移)特性(Sentinel、Cluster)
  • 操作系统(9) (并发-----原子性/互斥临界区/生产者消费者问题/临界区问题三条件/互斥性/进展性/公平性)
  • Django响应
  • 算法:图的相关算法
  • django的models使用介绍。
  • 【分布式技术】分布式事务深入理解
  • 力扣hot100-->hash表/map
  • 基于redis实现延迟队列
  • PHP微信小程序共享充电桩系统设计与实现计算机毕业设计源代码作品和开题报告
  • 【网络面试篇】TCP与UDP类
  • Windows转Mac过渡指南
  • LeetCode100之盛最多水的容器(11)--Java