我想通过设置计划的任务,anacron
但我想在用户模式下进行。我该如何实现?
我想通过设置计划的任务,anacron
但我想在用户模式下进行。我该如何实现?
Answers:
您可以设置一个单独的anacron实例以在用户模式下运行:
.anacron
在您的主目录中创建一个文件夹,并在其中创建两个子文件夹,etc
以及spool
:
mkdir -p ~/.anacron/{etc,spool}
创建一个新文件~/.anacron/etc/anacrontab
,其内容类似于以下内容:
# /etc/anacrontab: configuration file for anacron
# See anacron(8) and anacrontab(5) for details.
SHELL=/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# period delay job-identifier command
1 10 testjob test.sh
使用以下命令将以下行添加到您的crontab中crontab -e
:
@hourly /usr/sbin/anacron -s -t $HOME/.anacron/etc/anacrontab -S $HOME/.anacron/spool
whoami
将给出用户名?
anacron
定期;它似乎运行一次然后退出。系统的anacron每小时被调用一次。我想类似的策略也可以在这里工作,即anacron
从user 呼叫用户crontab
。
/etc/apm/event.d/anacron
和/etc/init/anacron.conf
负责重新启动。
01 * * * * /usr/sbin/anacron -t /home/user/.anacron/etc/anacrontab -S /home/user/.anacron/spool
这对我有用(谢谢),但是我没有使用答案中给出的最后一步:
然后将以下行添加到您的
~/.profile
:
我使用的是Ubuntu Studio 12.10 Quantal,在我的情况下,我没有放置最后一个衬垫:“应用程序菜单”→“设置”→“设置管理器”,然后在“设置管理器”中的“会话和启动”下,然后“应用程序自动启动”选项卡。
这是针对我们这些GUI用户的,因为~/.profile
它仅由bash在启动登录交互式shell时提供(即使~/bashrc
不是那么有用,因为它仅在bash启动交互式shell时提供)。
.profile
对我来说一直很好(在这里是Ubuntu 12.04)。
sudo -u <user>
在任务之前执行anacrontab