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

Re: [php_greek] Re: Εκτέλεση εντολών συσ τήματος

Expand Messages
  • Dimitrios Botsis
    Εχετε δίκαιο, είναι θέμα δικαιωμάτων. Οι εντολές που στέλνω με την shell_exec τρέχουν μέσω
    Message 1 of 1 , Aug 31, 2005
    View Source
    • 0 Attachment
      Εχετε δίκαιο, είναι θέμα δικαιωμάτων.
      Οι εντολές που στέλνω με την shell_exec τρέχουν μέσω του
      user apache ο οποίος έχει default shell το /sbin/nologin.
      Αλλάζοντάς το σε bash, και κάνοντας login ως apache,
      διεπίστωσα αυτό που γράφεις, ότι δηλαδή ο user apache μπορεί
      να τρέξει το script /etc/init.d/smb με παράμετρο status και
      να πάρει αποτέλεσμα, ενώ βεβαια δεν μπορεί να κάνει restart.
      Πάντως σ'εμένα δεν βγάζει κανένα μήνυμα λάθους στο restart,
      απλά δεν εμφανίζει τίποτα.

      Μια λύση που σκέφτηκα, είναι να καλεί ο user apache την smb
      restart με sudo, εξάλλου το περιβάλλον διαχείρισης που θέλω
      να φτιάξω πρόκειται να λειτουργεί μόνο σε τοπικό δίκτυο.

      Ευχαριστώ.

      ----- Original Message -----
      From: "Pavlos Stamboulides" <113@...>
      To: <php_greek@yahoogroups.com>
      Sent: Wednesday, August 31, 2005 9:41 PM
      Subject: [php_greek] Re: Εκτέλεση εντολών συστήματος


      > Αγαπητέ φίλε,
      >
      > επέτρεψε μου να σου ζητήσω να το δεις ξανά το θέμα.
      >
      >> Αν για παράδειγμα αντί για την "smb restart" δώσω "smb
      >> status", αυτό λειτουργεί κανονικά.
      >
      > ¶λλο το να δεις πληροφορίες ως ο "κανένας" και άλλο να
      > ανεβοκατεβάζεις
      > δαίμονες ως ο "κανένας". Κανονικά, το σύστημα ΔΕΝ πρέπει
      > να το
      > επιτρέπει αυτό, από μόνο του. Αυτό συμβαίνει ακόμα και στα
      > Windows.
      >
      > Δες ποιος είναι ο χρήστης του Apache και κανε su σε αυτόν.
      > Δώσε whoami
      > για να βεβαιωθείς ότι άλλαξες χρήστη. Τρέξε το restart.
      > Δεν πρέπει να
      > σε αφήνει.
      >
      > Δες το δικό μου μήνυμα (από Gentoo):
      > /sbin/runscript.sh: must be root to run init scripts
      > και από Slackware:
      > smbd(1510): Operation not permitted
      >
      > Καλή τύχη,
      > Παύλος
      >
      >
      >> Επίσης αυτό που με ενδιαφέρει τώρα δεν είναι να ασφαλίσω
      >> το
      >> σύστημα, αλλά να κάνω το συγκεκριμένο πράγμα που θέλω,
      >> αφου
      >> είμαι στη φάση των πειραματισμών.
      >> Το πρόβλημα, όπως ανέφερα και στο αρχικό μήνυμα που
      >> έστειλα
      >> πρέπει να
      >> οφείλεται στο ότι η εντολή που στέλνω δεν παράγει output
      >> αμέσως αλλά σταδιακά.
      >> Από την άλλη, η shell_exec μάλλον διαβάζει ό,τι υπάρχει
      >> διαθέσιμο εκείνη την αρχική
      >> στιγμή εκτέλεσης της εντολής (δηλαδή τίποτα) και έτσι
      >> επιστρέφει ένα άδειο string.
      >> Αν υπήρχε τρόπος να βάλω κάποιο delay ή ακόμη με κάποιο
      >> τρόπο (PHP-side) να δώσω στην shell_exec να καταλάβει ότι
      >> πρέπει να επιστρέψει το string όταν ολοκληρωθεί το
      >> script.
      >> Κάτι τέτοιο φαντάζομαι.
      >> Αν βρω λύση θα σας ενημερώσω.
      >>
      >> ----- Original Message -----
      >> From: "Ntina Triantafilidou" <ntina@o...>
      >> To: "Dimitrios Botsis" <dimbotsis@y...>
      >> Sent: Wednesday, August 31, 2005 5:19 PM
      >> Subject: Re: [php_greek] Εκτέλεση εντολών συστήματος
      >>
      >>
      >> On Wed, 31 Aug 2005, Dimitrios Botsis wrote:
      >>
      >> > Date: Wed, 31 Aug 2005 13:12:38 +0300
      >> > From: Dimitrios Botsis <dimbotsis@y...>
      >> > Reply-To: php_greek@yahoogroups.com
      >> > To: php_greek@yahoogroups.com
      >> > Subject: [php_greek] [iso-8859-7] Εκτέλεση εντολών
      >> > συστήματος
      >> >
      >> > Γεια σε όλους.
      >> > Αντιμετωπίζω το εξής πρόβλημα :
      >> > Θέλω να φτιάξω μια σελίδα με PHP, απ'όπου θα δίνω
      >> > διάφορες
      >> > εντολές στο σύστημα.
      >> > Για παράδειγμα, θα δίνω εντολή για εμφάνιση της
      >> > ελεύθερης
      >> > μνήμης ή του δίσκου ή για επανεκκίνηση του samba.
      >> > Το τελευταίο μου δημιουργεί πρόβλημα. Χρησιμοποιώ την
      >> > shell_exec ως εξής :
      >> > $my_output = shell_exec('/etc/init.d/smb restart');
      >> > και στο $my_output δεν παίρνω τίποτα.
      >> > Αντίθετα, αν εκτελέσω άλλες εντολές που απαντούν άμεσα
      >> > (π.χ.
      >> > ls -l /) τότε δουλεύει μια χαρά.
      >> > Φαντάζομαι ότι το πρόβλημα προέρχεται από το γεγονός
      >> > ότι η
      >> > smb restart δεν έχει άμεσο output αλλά κάνει κάποια
      >> > δευτερόλεπτα για να ολοκληρωθεί, οπότε το $my_output
      >> > δεν
      >> > προλαβαίνει να πάρει κάποια τιμή (string).
      >> >
      >> > Καμμιά ιδέα ?
      >> > Ευχαριστώ.
      >>
      >> Vasika, to provlima sou einai to "/etc/init.d/smb
      >> restart"
      >> exei dikaiwma
      >> mono o root na to ektelesei enw otan mia entoli trexei
      >> apo
      >> to php script
      >> pou tha ftiakseis to sistima trexei tin entoli san
      >> xristis
      >> nobody (o
      >> xristis pou trexei ton webserver (mallon apache)).
      >> To na trexeis etsi entoles kaneis den sto sistinei giati
      >> einai mia tripa
      >> asfaleias sistimatos toooooooooosi me to simpathio.
      >> An omws epimeneis na ftiakseis afto to php script,
      >> diorthwsw
      >> sto
      >> httpd.conf (se periptwsi pou trexeis apache, to antistixo
      >> arxeio se
      >> kathe alli periptwsi) tin parametro user (an thimamai
      >> kala).
      >> By default, o xristis aftos einai o nobody. Kanton root
      >> (tou
      >> group root
      >> fisika) kai "/etc/init.d/apache restart"
      >>
      >> Ksanatrekse to script kai pes mas ta apotelesmata.
      >> (mallon
      >> tha einai
      >> thetika)
      >>
      >> > --
      >> > 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
      >> >
      >> >
      >> > ------------------------ Yahoo! Groups
      >> >
      >> > --
      >> > Ελληνική PHP mailing list
      >> > Yahoo! Groups Links
      >> >
      >> >
      >> >
      >> >
      >> >
      >> >
      >> >
      >>
      >> +------------------------------------------+
      >> | My reply address is ntina23gr@y... |
      >> | Each mail not sent there will be ignored |
      >> +------------------------------------------+
      >>
      >>
      >>
      > --------------------------------------------------------------------------------
      >>
      >>
      >> No virus found in this incoming message.
      >> Checked by AVG Anti-Virus.
      >> Version: 7.0.344 / Virus Database: 267.10.17/85 - Release
      >> Date: 30/8/2005
      >>
      >>
      >>
      >> --
      >> 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
      >
      > ------------------------ Yahoo! Groups
      >
      > --
      > Ελληνική PHP mailing list
      > Yahoo! Groups Links
      >
      >
      >
      >
      >


      --------------------------------------------------------------------------------


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



      --
      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.