【shell脚本】检测当前用户是否为超级管理员===checkRoot.sh

检测当前用户是否为超级管理员,是则使用yum安装vsftpd,不是则输出提示信息

脚本赋予执行权限

[[email protected]_0_10_centos shellScript]# chmod a+x checkRoot.sh
[[email protected]_0_10_centos shellScript]# ./checkRoot.sh 

脚本内容

#!/bin/bash
# 前者使用字串对比,后者使用UID数字对比
# 检测本机当前用户是否为超级管理员,如果是管理员则使用yum安装vsftpd;如果不是,则提示非管理员权限
if [ $USER == "root" -o $UID -eq 0 ];
then
    yum -y install vsftpd
else
    echo "您不是管理员,没有权限安装软件"
fi

PS:注意vsftpd默认宿主用户为root

原文地址:https://www.cnblogs.com/HeiDi-BoKe/p/11639444.html

时间: 2024-10-21 04:21:33

【shell脚本】检测当前用户是否为超级管理员===checkRoot.sh的相关文章

Shell脚本批量创建用户并随机生成密码

要求:批量创建10个系统账号oldboy01-oldboy10,并设置生成密码(密码不同). 实现脚本: #!/bin/bash #Question3 for i in $(seq -w 10) do         useradd -s /bin/bash oldboy$i         echo "password$i" | md5sum | tee -a passwd.txt | passwd --stdin  oldboy$i done 脚本执行效果: [[email pro

shell脚本中切换用户执行相应的命令或者shell脚本的方法

通常在执行自动化过程中可能需要将root用户切换到其他用户进行执行,如:oralce 但是,执行的命令又要回到root用户下,继续执行root用户下的其他命令. 此时需要了解 su 命令中的参数 -c  或 -s 比如: # su - oracle -c "pwd"/home/oracle 或 su - oracle -s /bin/sh test.sh 此时执行的test.sh中相关命令要在bin/sh下,换句话说,bin/sh支持的命令才能执行. 当然我们可以将结果重定向到其他的文

WyBox使用shell脚本检测io口是否正常

1. 修改mt7620a.dts文件,把gpio管脚复用全都定义为通用gpio /dts-v1/; /include/ "mt7620a.dtsi" / { compatible = "ralink,mt7620a-eval-board", "ralink,mt7620a-soc"; model = "Ralink MT7620a + MT7610e evaluation board"; [email protected]10

linux shell脚本检测硬盘磁盘空间 邮件报警

使用 http://www.weiruoyu.cn/?p=368 shell脚本监控硬盘空间剩余空间 邮件报警 1.先观察一下磁盘,和如何使用脚本 [[email protected] ~]# df -h 文件系统              容量  已用 可用 已用% 挂载点 /dev/mapper/VolGroup00-LogVol00 8.9G  2.6G  5.9G  31% / /dev/sda1              99M   13M   82M  13% /boot tmpfs

使用shell脚本批量创建用户

1.批量添加与删除特定用户: ①添加用户: [[email protected] ~]# vim list.txt #准备一个用户名列表文件 zhangsan lisi wangwu zhaoliu #保存退出. [[email protected] ~]# vim useradd.sh #!/bin/bash a=$(cat /root/list.txt) for b in $a do useradd ${b} echo "123456" | passwd --stdin ${b}

shell脚本检测网络是否畅通

shell初始化安装脚本执行时,需从网络上安装一些rpm包,所有需要先检测网络的畅通性, 代码 #检测网络链接&&ftp上传数据 function networkAndFtp() { #超时时间 timeout=5 #目标网站 target=www.baidu.com #获取响应状态码 ret_code=`curl -I -s --connect-timeout $timeout $target -w %{http_code} | tail -n1` if [ "x$ret_co

shell脚本 检测根分区硬盘空间使用率

#!/bin/bash IP=$(ifconfig eth0 |grep "inet addr"| awk '{print $2}' |cut -f1 -d":")  a=$(df -h |grep /dev/sda2 |awk '{print $5}'|cut -f1 -b"%" )    #截取分区使用率 if [ $a -ge 80 ]     then         echo "$IP 服务器根分区即将没有空间,请及时清理.&

shell脚本,提示用户输入一个用户名,如果存在;显示用户UID和SHELL信息;否则,则显示无此用户;显示完成之后,提示用户再次输入;如果是quit则退出;

[[email protected] wyb]# cat tishiuser.sh #!/bin/bash #提示用户输入一个用户名,如果存在:显示用户UID和SHELL信息:否则, #则显示无此用户:显示完成之后,提示用户再次输入:如果是quit则退出; echo 'Input `quit` to quit' while : do read -p "Please Input a user:" choice [ -z $choice ] &&continue [[ &q

shell脚本检测监控mysql的CPU占用率

网站访问量大的时候mysql的压力就比较大,当mysql的CPU利用率超过300%的时候就不能提供服务了,近乎卡死状态,这时候最好的方法 就是重启mysql服务.由于这种事具有不可预见性,我们不知道什么时候mysql的占用率达到300%,还是写个程序定期判断比较靠谱. 学了shell编程,写了下面的脚本: #!/bin/bash cpu=`ps aux | grep 'mysqld$' | cut -d " " -f6 | cut -d. -f1` if [ $cpu -gt 300