Il 31 maggio 2012 19:00, enrico franchi <enrico.fran...@gmail.com> ha scritto: > 2012/5/31 Giampaolo Rodolà <g.rod...@gmail.com>: > >> Idem per psutil. La quantità di bug relativi a OSX sono la maggioranza: >> http://code.google.com/p/psutil/issues/list?can=1&q=label%3AOpSys-OSX&colspec=ID+Summary+Type+Opsys+Status+Milestone+Opened+Owner+Progress&cells=tiles >> Quello più segnalato è il fatto che per interrogare qualunque processo >> che non sia il proprio (os.getpid()) da OSX 10.5 in avanti devi essere >> root (l'unico UNIX a farlo). >> Uniche fix: suid sull'interprete python o buttare OSX nel cesso. > > Mi fai un esempio concreto di una cosa che non dovrei essere riuscito a fare? > >>>> processes = psutil.get_process_list() >>>> root_processes = [p for p in processes if p.username != 'enrico'] >>>> p = root_processes[-1] >>>> p.get_children() > [<psutil.Process(pid=1) at 4313276368>, <psutil.Process(pid=0, > name='kernel_task') at 4313276304>] > > > ls -l `which python` > -rwxrwxr-x 1 enrico staff 8784 May 31 19:02 > /Users/enrico/src/psutil-test/bin/python > > Sotto viene chiamato questo: > ls -l /Library/Frameworks/EPD64.framework/Versions/7.2/bin/python > -rwxrwxr-x 2 root wheel 8784 Jan 13 18:14 > /Library/Frameworks/EPD64.framework/Versions/7.2/bin/python
In questo momento non ho un OSX sotto mano ma in genere quello che riesci a ottenere è nome del processo, parent pid (che è usato da get_children() nel tuo esempio) e poche altre informazioni. Altre info relative alla memoria (get_memory_info()), cmdline, e persino i tempi di CPU (per calcolare l'utilizzo percentuale) dovrebbero richiedere root. http://code.google.com/p/psutil/issues/detail?id=215 http://code.google.com/p/psutil/issues/detail?id=108 http://code.google.com/p/psutil/issues/detail?id=106 Non a caso "ps" su OSX gira con suid. Qui viene descritto il problema: http://psutil.googlecode.com/issues/attachment?aid=7360485559905024215&name=task_for_pid_signing.pdf&token=qa3FQnumrJFP702cgO5nhq-_JfE%3A1338545731342 --- Giampaolo http://code.google.com/p/pyftpdlib/ http://code.google.com/p/psutil/ http://code.google.com/p/pysendfile/ _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python