Hentikan socat dari penghentian ketika ujung lain ditutup


12

Saya ingin mengarahkan input dan output aplikasi ke soket unix dan sambungkan ke soket itu dari sesi lain. Apa yang saya lakukan sejauh ini adalah sebagai berikut:

Di sisi "server":

socat EXEC:"command" UNIX-LISTEN:/tmp/comm

Dan di sisi "klien":

socat UNIX-CONNECT:/tmp/comm -

Ini berfungsi cukup baik, tetapi begitu sisi klien socatberakhir, server juga berakhir. Tapi saya ingin tetap berjalan dan menyambung kembali nanti ... Bagaimana saya mencapainya?

Jawaban:


12

Anda harus menggunakan forkopsi, yang menangani koneksi dalam proses anak, membuat proses induk berusaha untuk menangani lebih banyak koneksi.

Di terminal pertama:

$ socat - UNIX-LISTEN:/tmp/comm,fork

Di terminal kedua:

$ socat UNIX-CONNECT:/tmp/comm -

Tekan Ctrl+ Cdi terminal kedua, pindah ke terminal pertama dan lihat server Anda masih berjalan.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.