Scenario tried here is restart of the system multiple times. sh-QUIT core is generated when Postgres is invoking the shell to exit and may not be due to kernel or file system issues. I will try to reproduce the issue with dmesg output being printed.
However, is there any instance in Postgres where 'sh -c exit 1' will be invoked?
Most likely it's used directly or indirectly by an archive_commsnd or restore_comand you have configured.