Estoy tratando de hacer el at de comandos bash para ejecutar, pero no es trabajo para mí. Puedo agregar una tarea a la cola, pero no se ejecuta cuando se acabe el tiempo. ¿Qué estoy haciendo mal?

[email protected]:~$ cat /usr/lib/cron/at.deny 
[email protected]:~$ atq
[email protected]:~$ at now +2 minutes
echo TTTEEEST
job 12 at Sun May  6 02:09:00 2012
[email protected]:~$ date
Sun May  6 02:10:24 CEST 2012
[email protected]:~$ atq
12  Sun May  6 02:09:00 2012
h[email protected]:~$ 
  • Se está ejecutando un control de acceso obligatorio herramienta como AppArmor, SELinux, TOMOYO, o SMACK? Cualquiera de estos puede restringir cron(8) de los trabajos en ejecución o de ahorro de salida.
  • Yo no he mencionado que estoy en un mac, porque me puse a pensar que no era importante. Ahora creo que la respuesta se puede encontrar aquí: superuser.com/questions/43678/mac-os-x-at-command-not-working . Pronto voy a eliminar esta pregunta, debido a que es un duplicado.
  • Ja! Gracias por los comentarios; me gustaría que hubiera una manera fácil de cerca-como-duplicado de contenido en otro sitio, porque la redacción de esta pregunta es buena y puede ayudar a alguien a encontrar el problema en el futuro.
  • al demonio se está ejecutando?
  • Hermoso: por Favor leer las respuestas.

4 Comentarios

  1. 3

    Echa un vistazo a /var/at/jobs y ver si tu en los trabajos enumerados en el mismo. (Puede ser un directorio diferente basado en OS).

    Por defecto, at no está habilitada en la mayoría de los sistemas. En orden para at puestos de trabajo realmente ejecutado, el atrun comando se debe ejecutar.

    De este comando es ejecutado, ya sea a través de launchd o a través de la cron dependiendo del sistema.

    Los mecanismos exactos que son diferentes de un sistema a otro, por lo que tendrás que leer todas las diversas páginas de manual en at, atrun, etc. para comprobar si at que realmente está habilitada en el sistema, y si tiene permisos para ejecutar en los puestos de trabajo. Hay normalmente tanto un hormiga permitir y un hormiga negar archivo en su sistema, entonces usted necesita para comprobar. Debe ser tanto en el permitido archivo, y tampoco en el negar archivo.

    Encima de eso, usted tiene que asegurarse de que at es incluso habilitado en su sistema (debido a preocupaciones de seguridad, es normalmente desactivado).

    • ¿Sabes de donde es la ubicación del archivo /var/en/empleos en cent OS 7?
  2. 2

    Se está trabajando muy bien. Es sólo que los comandos que se ejecutan con at no escriba su salida a la terminal, lo que usted llama desde.

    Tratar:

    at now +2 minutes
    echo TTTEEEST > new_file_test

    Verás el archivo aparecerá en dos minutos.

    • Ok gracias. -pero ¿por qué el trabajo no se quitan de la lista?
    • No hay ningún archivo.
    • ¿Qué tal si le das una ruta de acceso absoluta? Probablemente at(1) se está ejecutando la secuencia de comandos, ya sea en su directorio de inicio o en su directorio de inicio. (La mía se ejecuta en mi directorio home del usuario; probado con /bin/pwd > /tmp/pwd.)
    • No, no está funcionando. Su trabajo es eliminado(de atq) cuando se acabe el tiempo?
    • Sí, tienes razón. Lo siento por la respuesta equivocada.
  3. 1

    Comprobar su correo:

       An at - or batch - command invoked from a su(1) shell will
       retain the current userid.  The user will be mailed standard
       error and standard output from his commands, if any.  Mail
       will be sent using the command /usr/sbin/sendmail.  If at is
       executed from a su(1) shell, the owner of the login shell
       will receive the mail.
    • No he recibido ningún correo nuevo.
  4. 1

    He encontrado este aquí

    Primero asegúrese de que el demonio se está ejecutando con un comando como este:

    # ps -ef | grep atd
    root 8231 1 0 18:10 ? 00:00:00 /usr/sbin/atd

    Si usted no ve atd en marcha con este comando:

    # /etc/init.d/atd start

Dejar respuesta

Please enter your comment!
Please enter your name here