Ubuntu系统下为用户Bob配置定时创建删除目录的Cronjob失败求助
在Ubuntu中创建用户Bob并配置定时任务(Cronjob)
一、创建用户Bob
- 创建带主目录的用户Bob:
sudo useradd -m Bob - 为Bob设置登录密码:
sudo passwd Bob
二、配置每小时执行的Cronjob
方式1:切换到Bob用户操作
- 切换至Bob账户:
su - Bob - 打开Bob的定时任务编辑界面:
首次执行会提示选择编辑器,选择crontab -enano即可。 - 在nano编辑器中添加以下内容(每小时整点执行创建并删除目录的操作):
0 * * * * /bin/mkdir /home/Bob/test && /bin/rm -rf /home/Bob/test注意:必须使用命令的绝对路径(
/bin/mkdir、/bin/rm),因为cron的默认环境变量PATH范围有限,直接用命令名可能导致找不到命令。 - 保存并退出nano:按
Ctrl+O确认保存,回车确认文件名,再按Ctrl+X退出。
方式2:以root身份为Bob配置
如果不想切换用户,可直接以root身份为Bob编辑定时任务:
sudo crontab -u Bob -e
后续步骤和方式1一致,添加相同的定时任务行即可。
三、排查Cronjob未运行的问题
如果配置后任务没执行,按以下步骤排查:
- 检查cron服务状态:确保cron服务正在运行
若服务未启动,执行sudo systemctl status cronsudo systemctl start cron,并设置开机自启:sudo systemctl enable cron - 查看cron执行日志:通过系统日志排查错误
日志会显示任务是否执行、执行时的错误信息(比如权限不足、路径错误等)grep CRON /var/log/syslog - 手动验证命令:切换到Bob用户,手动执行定时任务里的命令,确认命令本身能正常运行:
/bin/mkdir /home/Bob/test && /bin/rm -rf /home/Bob/test - 检查主目录权限:确保Bob对自己的主目录拥有读写权限:
正常权限应为ls -ld /home/Bobdrwxr-xr-x,Bob是该目录的所有者。
内容的提问来源于stack exchange,提问作者Ahsan Rizwan
相关产品推荐
相关产品推荐

