【问题标题】:how to auto setup a "AT" schedule job once after reboot重新启动后如何自动设置“AT”计划作业
【发布时间】:2023-03-21 05:19:02
【问题描述】:

当我通过 ssh 以 root 身份登录 centos 时 我输入

at  -f /etc/at_stopssh.txt now + 5 minutes

它工作正常,已成功设置一项计划作业

at_stopssh.txt 包含如下所示的简单命令

service sshd stop

然后我尝试在重新启动后通过将其添加到自动化它 rc.local 文件。所以我在 rc.local 中添加了一个新行

at  -f /etc/at_stopssh.txt now + 5 minutes

重启后。我通过atq命令检查,似乎没有添加作业计划。

我尝试了另一种方式。我在 rc.local 文件中添加了另一个换行符,如下所示

echo "/sbin/service/service /usr/sbin/sshd/sshd stop"|/usr/bin/at now + 5 minutes

它又完全没有功能了。

以下是我的 env 文件内容供您参考

env | sort > /tmp/env.at



_=/bin/env
G_BROKEN_FILENAMES=1
HISTSIZE=1000
HOME=/root
HOSTNAME=377pc.cn
INPUTRC=/etc/inputrc
LANG=en_US.UTF-8
LESSOPEN=|/usr/bin/lesspipe.sh %s
LOGNAME=root
LS_COLORS=no=00:fi=00:di=00;34:ln=00;36:pi=40;33:so=00;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:ex=00;32:*.cmd=00;32:*.exe=00;32:*.com=00;32:*.btm=00;32:*.bat=00;32:*.sh=00;32:*.csh=00;32:*.tar=00;31:*.tgz=00;31:*.arj=00;31:*.taz=00;31:*.lzh=00;31:*.zip=00;31:*.z=00;31:*.Z=00;31:*.gz=00;31:*.bz2=00;31:*.bz=00;31:*.tz=00;31:*.rpm=00;31:*.cpio=00;31:*.jpg=00;35:*.gif=00;35:*.bmp=00;35:*.xbm=00;35:*.xpm=00;35:*.png=00;35:*.tif=00;35:
MAIL=/var/spool/mail/root
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
PWD=/root
SHELL=/bin/bash
SHLVL=1
SSH_CLIENT=121.228.206.52 31795 22
SSH_CONNECTION=121.228.206.52 31795 205.185.124.26 22
SSH_TTY=/dev/pts/0
TERM=xterm
USER=root

我的问题是它有什么问题?我怎样才能自动设置一个新的“AT”作业并在重新启动后使其正常工作?

非常感谢 奥斯汀

【问题讨论】:

  • root 是否收到任何有关at 作业的邮件或是否有任何日志条目?尝试将-m 添加到at 命令,这样无论其他输出如何,您都会收到邮件。

标签: shell automation cron centos reboot


【解决方案1】:

在重新启动时清除作业;它们不适用于重启后应该发生的 cron 作业。

幸运的是,有一个特殊的@reboot crontab 条目可让您在重新启动后运行作业。如果需要等待5分钟,可以插入合适的sleep

但是,如果您真正想要做的是首先阻止 SSH 服务器启动,您应该 chkconfig 关闭该服务。我不能 100% 确定 CentOS 上的名称是什么,但在 Ubuntu 上应该是 chkconfig ssh off

【讨论】:

  • 嗨 Edward Z. Yang 感谢您的回复。 chkconfig ssh off 将停止 ssh 服务,而我尝试让 ssh 处于活动状态并在 5 分钟后自动停止其服务。所以我可以有足够的时间来决定是否应该禁用 ssh。我只是想留下一个后门,以防我需要 ssh 连接。然后我可以重新启动服务器并重新获得 ssh 连接。
  • 您最好禁用密码 SSH,或者将端口移动到非标准位置。无法远程访问服务器很痛苦。
  • 您的第一句话适用于排队的at 作业,但不适用于在引导后立即排队的at 作业,这些作业预计将很快运行(除非系统更快地重新启动在刚刚启动之后,直到 at 作业被安排执行)。
  • 是的。但是在你的 rc 文件中添加手动条目是......充其量是可疑的。
猜你喜欢
  • 2014-05-30
  • 1970-01-01
  • 2022-06-10
  • 1970-01-01
  • 1970-01-01
  • 2020-06-22
  • 1970-01-01
  • 2011-10-09
  • 1970-01-01
相关资源
最近更新 更多