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

Langage PHP Discussion :

php n'arrive plus à executer de commande externe


Sujet :

Langage PHP

  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Novembre 2013
    Messages
    563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2013
    Messages : 563
    Points : 460
    Points
    460
    Par défaut php n'arrive plus à executer de commande externe
    Bonjour à vous,

    je rencontre un problème avec php, il semble perdre des droits ?!

    Au démarrage du serveur, pas de problème, tout fonctionne, il peut créer des fichiers, accéder aux commandes du shell.

    Mais au bout d'un moment (impossible à évaluer), il n'arrive plus à écrire dans certains dossiers (/tmp fonctionne encore) et surtout n'a plus accès à aucune commande du shell !
    Toutes les commandes renvoient le code -1...

    Pour essayer de comprendre :
    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    get_current_user(); // IPS_CLILX01
     
    file_put_contents("/tmp/testFile", "test");
    $user = fileowner("/tmp/testFile");
    Array
    (
        [name] => www-data
        [passwd] => x
        [uid] => 33
        [gid] => 33
        [gecos] => www-data
        [dir] => /var/www
        [shell] => /usr/sbin/nologin
    )
     
    $user = fileowner(".");
    Array
    (
        [name] => IPS_CLILX01
        [passwd] => x
        [uid] => 3006
        [gid] => 3006
        [gecos] => 
        [dir] => /home/IPS_CLILX01
        [shell] => /bin/bash
    )
     
    $user = filegroup(".");
    Array
    (
        [name] => IPS_CLILX01
        [passwd] => x
        [uid] => 3006
        [gid] => 3006
        [gecos] => 
        [dir] => /home/IPS_CLILX01
        [shell] => /bin/bash
    )
     
     
    substr(sprintf('%o', fileperms('.')), -4); // Permissions : 0775
     
     
    $user = stat(".");
    Array
    (
        [0] => 64768
        [1] => 262168
        [2] => 16893
        [3] => 2
        [4] => 3006
        [5] => 3006
        [6] => 0
        [7] => 4096
        [8] => 1579788086
        [9] => 1615888220
        [10] => 1615888220
        [11] => 4096
        [12] => 8
        [dev] => 64768
        [ino] => 262168
        [mode] => 16893
        [nlink] => 2
        [uid] => 3006
        [gid] => 3006
        [rdev] => 0
        [size] => 4096
        [atime] => 1579788086
        [mtime] => 1615888220
        [ctime] => 1615888220
        [blksize] => 4096
        [blocks] => 8
    )
    Ces valeurs sont les mêmes avant et après le souci.

    Redémarrer apache2 ne règle pas le problème.
    Je dois redémarrer le serveur.

    J'ai 3 exécutions php sur le crontab www-data mais ça ne semble pas être la cause, car si je teste après leur exécution, je n'ai pas le blocage...

    Je ne vois vraiment pas ce qui pourrait provoquer tout ça...

    Une idée ?

    Merci beaucoup à vous !

    Serveur : Ubuntu 18.04
    php : 7.2.24
    apache : 2.4.29

  2. #2
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 424
    Points : 15 794
    Points
    15 794
    Par défaut
    je vois 2 utilisateurs, IPS_CLILX01 et www-data. apache est lancé avec lequel ?

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Novembre 2013
    Messages
    563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2013
    Messages : 563
    Points : 460
    Points
    460
    Par défaut
    Tout à fait, apache est lancé par www-data.

    IPS_CLILX01 fait parti du groupe www-data.
    www-data ne fait parti que de son groupe

Discussions similaires

  1. [Système] executer une commande externe depuis php
    Par sebgaillard dans le forum Langage
    Réponses: 1
    Dernier message: 09/04/2008, 15h34
  2. Réponses: 4
    Dernier message: 28/11/2007, 23h07
  3. Réponses: 5
    Dernier message: 16/01/2007, 11h07
  4. Réponses: 9
    Dernier message: 29/10/2005, 20h11
  5. [Lazarus] Exécution de commande externe
    Par SaintShakaJin dans le forum Lazarus
    Réponses: 3
    Dernier message: 26/04/2005, 13h13

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