Y a-t-il une commande similaire à mkfifo mais pour les sockets de domaine ?
Réponses
Trop de publicités?Il n'y a pas d'équivalent exact de mkfifo pour les sockets, c'est-à-dire qu'il n'y a pas de commande qui crée simplement un socket "en attente". Cela est dû à des raisons historiques : la fonction bind() du serveur, celle qui crée un nom de socket/inode dans le système de fichiers, échoue si le nom est déjà utilisé. En d'autres termes, le serveur ne peut pas fonctionner sur un socket préexistant.
Donc, si vous aviez créé un socket auparavant, il faudrait de toute façon le supprimer par le serveur en premier. Aucun avantage. Comme vous le constatez avec la réponse de Gregory, vous pouvez créer un socket SI vous gardez un serveur pour cela, tel que netcat. Une fois qu'un serveur est parti, l'ancien socket disparaît. Un nouveau serveur a un nouveau socket, et tous les clients doivent se reconnecter, malgré le nom du socket étant identique.
Vous pouvez utiliser python :
python -c "import socket as s; sock = s.socket(s.AF_UNIX); sock.bind('/tmp/test.sock')"
Aussi C, voir cette réponse.