Dmity-vk sent me on the right path, thanks. SBCL tries to start the replica when it starts and reads from standard input. When you use nohup , the in standard is redirected and cannot be read. Then the SBCL goes to the debugger, which tries to read from the standard into ... hence an infinite loop. The --script tag --script close to a solution, except that it has (quit) after reading the script. So I put an infinite loop in the script and voila.
so on an ubuntu server with sbcl this should allow you to start the hunchentoot server
sudo nohup ./run-sbcl.sh --script foo.lisp > /dev/null 2> /dev/null &
where foo.lisp has as its last lines something like
(defvar *alive* t) (loop (sleep 1000) (if (not *alive*) (quit)))
source share