V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
lingchenzi
V2EX  ›  Linux

怎么给 www 用户添加 crontab 定时任务?

  •  
  •   lingchenzi · 2014-11-21 12:42:33 +08:00 · 3078 次点击
    这是一个创建于 3455 天前的主题,其中的信息可能已经有所发展或是发生改变。
    有个文件是不能以root用户身份运行啊。
    8 条回复    2014-11-21 23:25:26 +08:00
    kmvan
        1
    kmvan  
       2014-11-21 13:53:58 +08:00
    无权限的话,可以参考 WP 的定时任务。
    例如 写入任务执行的时间:8:00 -> 在 8:00 以后有人访问过 WP -> 触发任务
    不过这样做是不准时的,因为你无法确定 8:00 是否有人会访问过 wp,除非你弄个脚本不断刷新页面。
    Livid
        2
    Livid  
    MOD
       2014-11-21 13:54:50 +08:00   ❤️ 1
    从 root 切换到 www 用户

    su www

    然后 crontab -e
    iCodex
        3
    iCodex  
       2014-11-21 13:59:15 +08:00   ❤️ 2
    root权限用户执行 crontab -u www -e 最直接。
    iCodex
        4
    iCodex  
       2014-11-21 14:01:34 +08:00   ❤️ 2
    @Livid 你这个方法如果遇到/bin/false等没有shell执行权限的用户就无效了。
    rrfeng
        5
    rrfeng  
       2014-11-21 14:06:38 +08:00
    /etc/crontab 里加 crontab 任务不是必须指定用户的吗?

    或者直接编辑 /var/spoll/cron/ 下面用户对应的 crontab 文件

    或者 crontab -u wwww -e
    orvice
        6
    orvice  
       2014-11-21 14:09:40 +08:00
    楼上都说了。。
    /etc/crontab文件可以指定用户
    2owe
        7
    2owe  
       2014-11-21 18:14:40 +08:00
    比较常用应该的是:sudo -u USER CMD

    以某用户身份执行命令,无 login shell 亦可

    如:sudo -u www crontab -e
    lingchenzi
        8
    lingchenzi  
    OP
       2014-11-21 23:25:26 +08:00
    @iCodex 我问了其他人,也是这个方法最直接。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3350 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 12:55 · PVG 20:55 · LAX 05:55 · JFK 08:55
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.