IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Ubuntu Discussion :

Problème avec "at" sous Linux, Ubuntu 14.04.1 LTS, bash (uniquement en 64 bits)


Sujet :

Ubuntu

  1. #1
    Futur Membre du Club
    Homme Profil pro
    développements Java EE
    Inscrit en
    Novembre 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : développements Java EE
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2012
    Messages : 7
    Points : 9
    Points
    9
    Par défaut Problème avec "at" sous Linux, Ubuntu 14.04.1 LTS, bash (uniquement en 64 bits)
    Bonjour à tous,

    J'ai un problème avec "at" sous Linux, Ubuntu 14.04.1 LTS, bash (uniquement en 64 bits):

    1 - "at" est à jour (sudo apt-get update && sudo apt-get upgrade faits)
    2 - le démon "atd" est lancé
    3 - lancement de "at" en ligne de commande, "atq" montre bien le job en attente.
    4 - le job disparaît de "atq" à l'heure prévue, MAIS le fichier voulu n'est pas créé par "touch".

    Les mêmes opérations fonctionnent (fichier est créé) sur un autre PC avec Ubuntu 14.04.1 LTS en 32 bits. Un bug spécifique Ubuntu 64 bits ou quelque chose que je ne vois pas dans mes manips ?

    Plus étrange: si je lance la commande "at" en root (avec sudo), ça fonctionne !!! (je travaille dans mon home).

    Copie de la console:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    $atd
    $atq
    $at now +1 minutes
    warning: commands will be executed using /bin/sh
    at> touch texte.txt
    at> <EOT>
    job 235 at Sat Feb 28 20:35:00 2015
    $atq
    $ls texte.txt
    ls: impossible d'accéder à texte.txt: Aucun fichier ou dossier de ce type
    $
    Si quelqu'un a une idée, merci.

  2. #2
    Expert confirmé
    Homme Profil pro
    Développeur informatique en retraite
    Inscrit en
    Avril 2008
    Messages
    2 101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique en retraite

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 101
    Points : 5 849
    Points
    5 849
    Par défaut
    et si tu mets "touch /tmp/texte.txt", cela marche-t-il?

    RTFM... c'est-à-dire "man at":
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     The superuser may use these commands in any case.  For other users, permission to use at is determined by the files _PERM_PATH/at.allow and _PERM_PATH/at.deny.
     
         If the file _PERM_PATH/at.allow exists, only usernames mentioned in it are allowed to use at.  In these two files, a user is considered to be listed only if the user name has no blank
         or other characters before it on its line and a newline character immediately after the name, even at the end of the file.  Other lines are ignored and may be used for comments.
     
         If _PERM_PATH/at.allow does not exist, _PERM_PATH/at.deny is checked, every username not mentioned in it is then allowed to use at.
     
         If neither exists, only the superuser is allowed use of at.
    Si aucun de ces fichiers n'existe, seul le superuser est autorisé à utiliser "at".

  3. #3
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 539
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 539
    Points : 19 361
    Points
    19 361
    Par défaut
    si le problème résultait de ce comportement, il y aurait un message d'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $ ls -1 /etc/at.*
    /etc/at.deny
    $ sudo mv /etc/at.deny /etc/at.deny.orig
    $ at now +1 minute
    You do not have permission to use at.
    .
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  4. #4
    Expert éminent sénior Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 238
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 238
    Points : 13 443
    Points
    13 443
    Par défaut
    Bonjour,

    moi, je ferais un find / -name "texte.txt" 2>/dev/null pour voir s'il ne l'a pas créé ailleurs.
    Cette réponse vous apporte quelque chose ? Cliquez sur en bas à droite du message.

  5. #5
    Futur Membre du Club
    Homme Profil pro
    développements Java EE
    Inscrit en
    Novembre 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : développements Java EE
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2012
    Messages : 7
    Points : 9
    Points
    9
    Par défaut
    Bonjour à tous!

    Désolé de répondre très tard aux intervenants, car mon problème n'était pas crucial, et je l'avais un peu oublié (j'avais consulté le fil pendant qq jours). Merci à tous pour les réponses.

    A jack-ft, effectivement je n'avais pas fait un "man at" approfondi avant de poster mon problème, et je n'étais tombé qu'après sur la portion de manuel citée (RTFM: Read This "Funny" Manual, pour les jeunes filles) et l'existence des 2 fichiers "at.allow" et "at.deny". Après avoir vu cela, j'avais manipulé ces deux fichiers pour obtenir une combinaison qui devait -selon les règles précisées par le manuel- faire que cela marche. (on a en fait deux façons de faire).

    Je me souviens que je n'étais pas parvenu à obtenir une combinaison qui marche (même en donnant brutalement des autorisations à tous, ce qui est bizarre).

    A N_BaH, effectivement je n'ai jamais eu le message "You do not have permission to use at.", ce qui est un peu déroutant. ("at" part sans râler, et je ne vois pas mon fichier!).

    Je refais les manips aujourd'hui:

    Remarque initiale:
    ------------------

    Au moment de l'installation de Ubuntu (donc aucune modification sur des fichiers /etc/at.allow ou /etc/at.deny), la configuration est la suivante:

    - PAS de fichier at.allow
    - Un fichier at.deny dans lequel le seul "humain" interdit de "at" est le user "guest" (ou nobody ?) (qui correspond à la session d'invité, avec des droits limités).
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    $ sudo cat /etc/at.deny
    alias
    backup
    bin
    daemon
    ftp
    games
    gnats
    guest
    irc
    lp
    mail
    man
    nobody
    operator
    proxy
    qmaild
    qmaill
    qmailp
    qmailq
    qmailr
    qmails
    sync
    sys
    www-data
    $
    En d'autres termes, par défaut, tout user "normal" non root SAUF l'invité est autorisé à faire des "at".

    On peut effectivement vérifier en se connectant dans la session d'invité qu'une tentative de "at now +1 minutes" donne instantanément un message "Permission denied".

    Essais avec la version 32 bits:
    -------------------------------

    Dans Ubuntu 14.04.1 LTS, en 32 bits le scénario que je décris marche parfaitement ("at" fonctionne, le batch part ET le fichier est créé), et ce que dit le manuel sur at.allow et at.deny est vérifié. Un invité ne peut faire de "at" (Permission denied).

    Essais avec la version 64 bits:
    -------------------------------

    Tentative 1:
    Pas de at.allow ET un at.deny vide (remplaçant celui initial décrit plus haut): ça ne marche pas.

    Tentative 2:
    Je crée un fichier at.allow avec mon user comme utilisateur autorisé, ça ne marche pas non plus (je ne suis bien sûr pas dans le at.deny, qui est toujours celui initial de l'installation d'Ubuntu).

    Ca marche pour "root" bien sûr dans tous les cas.

    Il semble clairement y avoir un problème dans "at" pour la version 64 bits de Ubuntu 14.04.1 LTS ???

Discussions similaires

  1. Réponses: 4
    Dernier message: 18/03/2015, 18h16
  2. Réponses: 1
    Dernier message: 24/02/2010, 15h02
  3. Réponses: 0
    Dernier message: 08/12/2008, 15h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo