通过以下三个脚本程序调用at和系统维护功能即可实现限时登录:
在指定的时间执行该脚本,将在/etc下生成一名为nologin的文件,登录程序在执行时会自动判定此文件是否存,假如存在将不答应用户登录,内容为:
vi /sbin/login.denied
echo " Login Denied " /etc/nologin
chmod 700 login.denied
在指定的时间执行该脚本,删除/etc/下的nologin文件以答应用户登录,内容为:
vi /sbin/login.allowed
if [ -f /etc/nologin ]; then
rm /etc/nologin
fi
chmod 700 login.allowed
编写一个限制时间的脚本,内容为:
vi /sbin/login.rollback
if [ -f /sbin/login.denied ]; then
at -f /sbin/login.denid 22:00
fi
if [ -f /sbin/login.allowed ]; then
at -f /sbin/login.allowed 8:00
if
chmod 744 /sbin/login.rollback
创建完成以后,把/sbin/login.rollback脚本放进crontab中,在天天凌晨执行:
crontab -e
# roll login script
00 1 * * * /sbin/login.rollback
此种设置的功能是:从晚上10:00到第二天早上8:00静止非root用户登录,显示为系统维护状态。