需求:已知BMC帐号id2为root管理员帐号,添加id5bmc帐号

工具:ipmitool version 1.8.14

系统:CentOS release 6.6 (Final)

1,通过yum安装ipmitool安装源

[root@zxl]# yum install ipmitool

2,手动安装ipmitool

rpm -ivh OpenIPMI-tools-2.0.-.el5.x86_64.rpm
/sbin/modprobe ipmi_msghandler
/sbin/modprobe ipmi_devintf
/sbin/modprobe ipmi_poweroff
/sbin/modprobe ipmi_watchdog
/sbin/modprobe ipmi_si

3,新建ip.csv文件,将BMC的userid(第一列),username(第二列),userpassword(第三列),用户名权限(第四列)

user_id,user_name,user_password,user_priv
,root,123456,
,yewu,1234567,
,bmc,12345678,

4,编辑ipmitool_adduser_inband.sh

#!/bin/bash

#版本和编辑日期
VERSION=1.0.
MODIFY_DATE= #帮助信息函数
function printHelp()
{
echo "Tool Version:$VERSION($MODIFY_DATE)"
echo "Usage:$0 -i user_conf_File"
} #如果脚本执行时加上-h参数,则打印帮助信息
case $ in
-h|--help)
printHelp
exit
;;
esac #获取执行脚本时的-i选项参数,把参数赋给user_conf_FILE
#若脚本的选项参数不是-i,则直接退出
while getopts ":i:" opt
do
case $opt in
i)
USER_CONF_FILE=$OPTARG
echo "user config file is "$USER_CONF_FILE
;;
*)
echo "argument error"
exit ;;
esac
done #判断有没有给USER_CONF赋值,没有则直接退出
if [ ${#USER_CONF_FILE} -eq ]
then
echo "please assign config file. detail info check -h"
exit
fi #脚本把日志输出到add_user_result.log文件
LOG_FILE="add_user_result.log" declare -i i= #循环读取文件
for LINE in `cat $USER_CONF_FILE`;
do
{ ((i=i+)) if [ $i -eq ]
then
continue
fi #简单的判断某行的有效性,如果读取到某行的长度小于10,则直接退出
if [ ${#LINE} -lt ]
then
exit ;
fi #把变量清空,给变量赋值
USER_ID=""
USER_NAME=""
USER_PASSWD=""
USER_PRIV="" USER_ID=`echo $LINE | awk -F, '{print $1}'`
USER_NAME=`echo $LINE | awk -F, '{print $2}'`
USER_PASSWD=`echo $LINE | awk -F, '{print $3}'`
USER_PRIV=`echo $LINE | awk -F, '{print $4}' | sed 's/\r//g'` # echo "user password $USER_PASSWD"
#判断从文件中读取到的数据是否是空,若是,则直接退出,脚本停止运行
if [ ${#USER_ID} -eq ] || [ ${#USER_NAME} -eq ] || [ ${#USER_PASSWD} -eq ] ||
[ ${#USER_PRIV} -eq ]
then
echo "please check data valid of file $USER_CONF_FILE file "
exit
fi #增加用户名,密码并设置对应权限
ipmitool user set name $USER_ID $USER_NAME
ipmitool user set password $USER_ID $USER_PASSWD
ipmitool user priv $USER_ID $USER_PRIV
ipmitool user priv $USER_ID $USER_PRIV
ipmitool channel setaccess $USER_ID callin=on ipmi=on link=on privilege=$USER_PRIV
ipmitool channel setaccess $USER_ID callin=on ipmi=on link=on privilege=$USER_PRIV
ipmitool user enable $USER_ID }
done echo "ipmitool user list 1" | tee -a $LOG_FILE
ipmitool user list | tee -a $LOG_FILE
echo "ipmitool user list 8" | tee -a $LOG_FILE
ipmitool user list echo "add all user name success" | tee -a $LOG_FILE

5,执行ipmitool_adduser_inband.sh -i ip.csv

[root@zxl]# ./ipmitool_adduser_inband.sh -i ip.csv
user config file is ip.csv

6,查看执行后的结果

[root@zxl]# ipmitool user list
ID Name Callin Link Auth IPMI Msg Channel Priv Limit
root true true true USER
yewu   true true true OPERATOR
bmc true true true ADMINISTRATOR

linux系统下ipmitool添加BMC帐号密码的更多相关文章

  1. Linux系统下用户如何膝盖FTP用户密码

    其实修改ftp用户密码与修改普通用户的密码的过程是一眼高的其具体步骤如下 1.用root账户登录系统 2.使用passwd命令修改密码: 第一次输入密码后提示:The password fails t ...

  2. linux系统下使用xampp 丢失mysql root密码【xampp的初始密码为空】

    如果在ubuntu 下面 使用xampp这个集成开发环境,却忘记mysql密码. 注:刚安装好的xampp的Mysql初始密码是空... 找回密码的步骤如下: 1.停止mysql服务器 sudo /o ...

  3. linux系统下使用xampp 丢失mysql root密码 只能远程访问,本地无法连接数据库

    如果在ubuntu 下面 使用xampp这个集成开发环境,却忘记mysql密码. 当出现只能远程访问的,本地无法访问,通常是host改成% 远程访问,本地访问到一个是空壳.这是权限的问题 需要修hos ...

  4. 使用 ipmitool 实现 Linux 系统下对服务器的 ipmi 管理

    http://www.ibm.com/developerworks/cn/linux/l-ipmi/ 1.简介 IPMI(Intelligent Platform Management Interfa ...

  5. LINUX系统下添加映射存储LUN

    LINUX系统下添加映射存储LUN(无需重启) 背景:Oracle rac环境 添加新实例,重新划分存储空间,从存储映射新的LUN. 问题:映射后,linux操作系统无法识别新的LUN,不能重启系统, ...

  6. Linux系统下给非root用户添加sudo权限

    Linux系统下给非root用户添加sudo权限 有时,在linux系统中非root用户运行sudo命令,会提示类似信息:  xxx is not in the sudoers file. This ...

  7. Linux系统下权限管理和命令详解

    下面对linux系统下的有关权限操作命令进行了梳理总结,并配合简单实例进行说明.linux中除了常见的读(r).写(w).执行(x)权限以外,还有其他的一些特殊或隐藏权限,熟练掌握这些权限知识的使用, ...

  8. Linux系统下基本命令

    <Linux系统下基本命令> Linux系统下基本命令: 要区分大小写 uname 显示版本信息(同win2K的 ver) dir 显示当前目录文件,ls -al 显示包括隐藏文件(同wi ...

  9. Linux系统下用户与组的管理

    Linux系统下用户与组的管理 一.用户及组基本概述 Linux 系统上,用户管理是基于用户名和密码的方式进行资源的分配. 1.uid(用户身份标识) (1)root用户 uid为0 (2)普通用户: ...

随机推荐

  1. FPGA论剑

    今天走在街上,听到了久违的<光辉岁月>,想起6月30号那天,街边所有的餐厅.小店都在播放beyond的经典之作,那天是香港殿堂级乐队beyond乐队主唱兼吉他手黄家驹先生的忌日.黄家驹先生 ...

  2. 安装jenkins 的时候 记录默认密码文件为空的情况

    1.把文件的权限改成 chmod 777 .jenkins/secrets/initialAdminPassword  然后再使用编辑器打开,密码就出来的 密码文件的地址 /var/root/.hud ...

  3. Rest之路 - Rest架构中的重要概念

    资源 在Rest的架构之内,讲一切内容都是为资源.每一个资源都被定义为一个URI. 格式: <protocol>://<service-name>/<ResourceTy ...

  4. 静态实现AOP(翻译自MSDN)

    在.net实现AOP 本文通过一个简单的例子实现静态AOP.改例子主要实现客户的增删改查,突然有一天你的老板需要在程序上跟踪每个方法操作的运行日志. 主要分为5个步骤. 第一步:创建接口IReposi ...

  5. 第七章 AOP(待续)

    ···············

  6. 微信开发准备(四)--nat123内网地址公网映射实现

    转自:http://www.cuiyongzhi.com/post/37.html 在前面几篇中我们一直说的开发准备工作主要是基于开发框架上的,这里我们说的就逐渐接近开发过程中的实体操作了,如果你之前 ...

  7. Apache Derby数据库系统使用方法

    Apache Derby数据库系统使用方法 最近由于项目要求,试用了一下Apache Derby数据库,这里对了解到的内容做一个记录. Apache Derby是一个开源的关系型数据库管理系统,用Ja ...

  8. a标签:鼠标指针变成文本输入图形

    今天我在使用a标签的时候,鼠标放在上面的时候总是显示文本输入的图形,不是小手的形状,找了好久的原因才发现由于我给它绑定了一个click事件,在事件里面进行了跳转,然后把 href ="#&q ...

  9. MSSQL列记录合并

    创建表及插入数据 If OBJECT_ID(N'Demo') Is Not Null Begin Drop Table Demo End Else Begin Create Table Demo( A ...

  10. C#获取访问者ip和获取本机ip地址

    获取访问者ip: string userIP; // HttpRequest Request = HttpContext.Current.Request; HttpRequest Request = ...