Perché non è possibile eliminare un file dal processo figlio di un demone PHP?

StackOverflow https://stackoverflow.com/questions/2103235

  •  21-09-2019
  •  | 
  •  

Domanda

Sto costruendo un semplice script PHP daemon, utilizzando una classe PHP Daemon fornito al:
http://www.phpclasses.org/browse/file/8958.html

mi sono bloccato con questa classe in meglio o in peggio, e non ho molto tempo per ottenere questo fatto; così al fine di emettere comandi personalizzati al demone sto solo usando un file di comando si trova nella directory / tmp. Tuttavia ho bisogno di eliminare questo file dopo il demone ha elaborato tutti i comandi in esso contenuti.

Tuttavia, quando provo a "scollegare" il file in PHP, l'operazione non riesce unlink semplice, e il file rimane. So per certo che non è un problema di autorizzazioni. In realtà io sono abbastanza sicuro che questo ha qualcosa a che fare con il fatto che ogni "ripetizione" del demone viene generato da un processo figlio, e che sotto-processo non deve in qualche modo avere il permesso di cancellare i file.

La mia domanda: Perché non è possibile eliminare questo file PHP, e che cosa posso fare al riguardo

?
È stato utile?

Soluzione

/tmp di solito ha lo sticky bit impostato in modo credo che solo l'utente che ha depositato il file non può eliminarlo. Non il bambino processi vengono eseguiti con lo stesso utente come il processo genitore (apache, www, ecc ..)? Quale processo istanza creata il file?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top