我希望 Linux 用户帐户在用户登录 7 天后过期。除了检查和更新用户帐户的自定义脚本之外,还有其他解决方案吗?
我已经查看了chage
、/etc/login.defs
等。这些工具允许您根据当前日期设置到期时间。我不希望到期倒计时在用户首次登录后才开始。
答案1
我确实认为您需要编写一些脚本才能做到这一点。您可以使其变得简单,方法是在创建帐户时将一个特殊文件(例如 .firsttime)放在用户主目录中 - 然后将其用作用户是否已登录的标志。
然后在系统范围的登录配置文件中,测试该文件是否存在,如果存在,那么您可以触摸根拥有的目录中设置了粘滞位并且不执行的文件(这是为了防止用户看到该文件),然后删除原始文件。
在 /etc/profile.d 中添加三行脚本,例如
if [ -e ~/.firsttime ]
then
touch /tmp/firsttime/$USER
rm ~/.firsttime
fi
然后,cron 脚本或手动脚本可以设置列出的帐户的到期日期。我会进行检查以确保所有权和文件名匹配,以防止有人将“根”文件放在那里。