用于从unix注销用户的Shell脚本

时间:2014-03-22 16:07:13

标签: bash unix

我需要一些关于这个问题的指导。我想写一个shell脚本,一旦用户登录到系统,就会立即注销用户(root用户除外)(应该适用于任何unix变体)。我想知道这是否可能?

我的方法就是这样的条件:

If [[ $(id) != root]]  then 
    logout 
else 
    login

但我不知道如何编写脚本以及在哪个初始化文件中放置脚本(也许是.profile?)。

3 个答案:

答案 0 :(得分:4)

只需将所有用户设置为shell / bin / false

即可

成功登录后关闭每个shell。要设置该shell,您可以使用以下命令:

usermod -s /bin/false someuser

答案 1 :(得分:0)

为什么要踢出用户呢? 我没有看到让用户进入并在之后踢他的优势

1)删除用户的帐户。

2)正如rekire所说:禁止登录

3)使用随机密码passwd -l将密码设置为随机密码(实际上与2相同)

答案 2 :(得分:0)

回答你的问题:

代表bash

(( $(id -u) > 0 )) && echo 'do something if NOT ROOT (eg. exit)'

或sh

[ `whoami` == "root" ] || echo 'do something if NOT ROOT (eg. exit)'