Даже сделав это, я не уверен, что ZFS правильно их видит и может получить доступ ко всем свойствам диска.
Можете ли вы попробовать это на сервере? Например, в Solaris и illumos вы можете использовать формат
или формат -e
, чтобы перечислить все распознанные дисковые устройства:
В конце концов, bash не работает. Способ, которым процесс оболочки должен обрабатывать sigint, состоит в том, чтобы перехватить его, а затем остановить всю обработку и дождаться завершения всех ожидающих процессов forground. на самом деле нет никаких причин, по которым SIGINT не должен прерывать все, что выполняется на переднем плане. вот почему группы процессов были созданы давным-давно. Каждая «команда», которую bash дает пользователю, должна разветвлять процессы в одной и той же pgroup, и именно в эту pgroup должны перенаправляться сигналы. Нет необходимости пересылать сигналы, если pgroup используется правильно, потому что каждый разветвленный процесс должен по умолчанию иметь ту же обработку сигналов, что и bash. nohup должен вызывать игнорирование sighup == всех разветвленных процессов.
В bash было упущено много деталей относительно оригинальной обработки сигналов оболочки unix и взаимосвязей между процессами. В частности, SIGINT для сценария оболочки должен полностью останавливать весь сценарий оболочки, а не прерывать циклы, которые могут просто привести к запуску дополнительной обработки, которая может уничтожить файлы из-за предыдущей работы, которая не была завершена из-за SIGINT.
Да, оператор trap может помочь вам выйти более аккуратно. Но это никогда не требовалось в оригинальных реализациях оболочки Unix. В первую очередь это был механизм очистки использования временных файлов или других подобных деталей. Теперь требуется, чтобы оболочка завершалась, когда это необходимо, и это затрудняет написание надежных сценариев оболочки, которые можно легко прервать.