Вам нужен установленный GDB для сброса областей памяти запущенного процесса.
# Set pid of nginx master process here
pid=8192
# generate gdb commands from the process's memory mappings using awk
cat /proc/$pid/maps | awk '$6 !~ "^/" {split ($1,addrs,"-"); print "dump memory mem_" addrs[1] " 0x" addrs[1] " 0x" addrs[2] ;}END{print "quit"}' > gdb-commands
# use gdb with the -x option to dump these memory regions to mem_* files
gdb -p $pid -x gdb-commands
# look for some (any) nginx.conf text
grep worker_connections mem_*
grep server_name mem_*
Вы должны получить что-то вроде «Двоичный файл mem_086cb000 соответствий». Откройте этот файл в редакторе, найдите конфигурацию (например, директива worker_connections), скопируйте и вставьте. Прибыль!
Обновление: этот метод не совсем надежен. Он основан на предположении, что процесс nginx будет считывать конфигурацию и не перезаписывать / повторно использовать эту область памяти позже. Мастер процесса nginx дает нам наилучшие шансы на это.