#!/bin/sh sleep=5 no_restart=0 if [ "$1" = "--no-restart" ]; then no_restart=1 shift fi while [ true ]; do "$@" exit_code=$? if [ $exit_code -gt 128 ] && [ $no_restart -eq 0 ]; then case $(($exit_code-128)) in 3 | 4 | 5 | 6 | 8 | 11) ;; *) exit; esac echo ceph-run: $1 dumped core, restarting in $sleep seconds... sleep $sleep else exit fi done