GNU/Linux >> Tutoriels Linux >  >> Linux

Empêcher l'héritage des descripteurs de fichiers pendant le fork Linux

Si vous fork dans le but d'appeler un exec fonction, vous pouvez utiliser fcntl avec FD_CLOEXEC pour que le descripteur de fichier soit fermé une fois que vous exec :

int fd = open(...);
fcntl(fd, F_SETFD, FD_CLOEXEC);

Un tel descripteur de fichier survivra à un fork mais pas les fonctions du exec famille.


Non. Fermez-les vous-même, puisque vous savez lesquels doivent être fermés.


Linux
  1. Bases des autorisations de fichiers Linux

  2. Descripteurs de fichiers et scripts shell ?

  3. Questions d'entretien Linux :fichiers ouverts / descripteurs de fichiers ouverts

  4. Les descripteurs de fichiers sont-ils partagés lors du fork() ?

  5. fork :réessayer :ressource temporairement indisponible

Comment créer un fichier sous Linux

Moins de commande sous Linux

Commande Gzip sous Linux

Commande Gunzip sous Linux

Commande Stat sous Linux

Qu'est-ce qu'umask sous Linux ?