Loading ...
Sorry, an error occurred while loading the content.

Εκτέλεση εντολών συστήματος

Expand Messages
  • Dimitrios Botsis
    Γεια σε όλους. Αντιμετωπίζω το εξής πρόβλημα : Θέλω να φτιάξω μια σελίδα με PHP, απ όπου θα
    Message 1 of 2 , Aug 31, 2005
    • 0 Attachment
      Γεια σε όλους.
      Αντιμετωπίζω το εξής πρόβλημα :
      Θέλω να φτιάξω μια σελίδα με PHP, απ'όπου θα δίνω διάφορες
      εντολές στο σύστημα.
      Για παράδειγμα, θα δίνω εντολή για εμφάνιση της ελεύθερης
      μνήμης ή του δίσκου ή για επανεκκίνηση του samba.
      Το τελευταίο μου δημιουργεί πρόβλημα. Χρησιμοποιώ την
      shell_exec ως εξής :
      $my_output = shell_exec('/etc/init.d/smb restart');
      και στο $my_output δεν παίρνω τίποτα.
      Αντίθετα, αν εκτελέσω άλλες εντολές που απαντούν άμεσα (π.χ.
      ls -l /) τότε δουλεύει μια χαρά.
      Φαντάζομαι ότι το πρόβλημα προέρχεται από το γεγονός ότι η
      smb restart δεν έχει άμεσο output αλλά κάνει κάποια
      δευτερόλεπτα για να ολοκληρωθεί, οπότε το $my_output δεν
      προλαβαίνει να πάρει κάποια τιμή (string).

      Καμμιά ιδέα ?
      Ευχαριστώ.



      --
      No virus found in this outgoing message.
      Checked by AVG Anti-Virus.
      Version: 7.0.344 / Virus Database: 267.10.17/85 - Release Date: 30/8/2005

      __________________________________________________
      Do You Yahoo!?
      Tired of spam? Yahoo! Mail has the best spam protection around
      http://mail.yahoo.com
    • Pavlos Stamboulides
      Είναι πολύ πιθανό ο χρήστης του apache να μην έχει τα κατάλληλα δικαιώματα για αυτή την
      Message 2 of 2 , Aug 31, 2005
      • 0 Attachment
        Είναι πολύ πιθανό ο χρήστης του apache
        να μην έχει τα κατάλληλα δικαιώματα για αυτή
        την ενέργεια.

        Δοκίμασε να βάλεις το χρήστη του apache στη
        λίστα του sudo.

        Για περισσότερα σε αυτό το θέμα δες το man
        sudo

        Πρώτα όμως κάνε su nobody και τρέξε την εντολή σου
        από το shell να δεις τι
        σου βγάζει (αν ο apache τρέχει σαν nobody).

        --- In php_greek@yahoogroups.com, "Dimitrios Botsis" <dimbotsis@y...>
        wrote:
        > Γεια σε όλους.
        > Αντιμετωπίζω το εξής πρόβλημα :
        > Θέλω να φτιάξω μια σελίδα με PHP, απ'όπου
        θα δίνω διάφορες
        > εντολές στο σύστημα.
        > Για παράδειγμα, θα δίνω εντολή για εμφάνιση
        της ελεύθερης
        > μνήμης ή του δίσκου ή για επανεκκίνηση του
        samba.
        > Το τελευταίο μου δημιουργεί πρόβλημα. Χρησιμοποιώ
        την
        > shell_exec ως εξής :
        > $my_output = shell_exec('/etc/init.d/smb restart');
        > και στο $my_output δεν παίρνω τίποτα.
        > Αντίθετα, αν εκτελέσω άλλες εντολές που
        απαντούν άμεσα (π.χ.
        > ls -l /) τότε δουλεύει μια χαρά.
        > Φαντάζομαι ότι το πρόβλημα προέρχεται από το
        γεγονός ότι η
        > smb restart δεν έχει άμεσο output αλλά κάνει
        κάποια
        > δευτερόλεπτα για να ολοκληρωθεί, οπότε το
        $my_output δεν
        > προλαβαίνει να πάρει κάποια τιμή (string).
        >
        > Καμμιά ιδέα ?
        > Ευχαριστώ.
        >
        >
        >
        > --
        > No virus found in this outgoing message.
        > Checked by AVG Anti-Virus.
        > Version: 7.0.344 / Virus Database: 267.10.17/85 - Release Date:
        30/8/2005
        >
        > __________________________________________________
        > Do You Yahoo!?
        > Tired of spam? Yahoo! Mail has the best spam protection around
        > http://mail.yahoo.com
      Your message has been successfully submitted and would be delivered to recipients shortly.