2012-01-27 4 views
1

Я использую утилиту zz zipping для кластера PBS; Я только что понял, что время, которое я разрешил для моих заданий на zipping, не будет достаточно длинным, и поэтому хотел бы перезапустить их (а потом, предположительно, мне нужно будет включить уже созданный .xz в новом архиве?). Безопасно ли убивать задания, или это может привести к повреждению файлов .xz, которые уже были созданы?Killing Unix zipping process

ответ

1

Я не уверен в возможности использования xz в кластере, но в целом процесс xz (или любая достойная утилита сжатия) должен влиять только на сжатый файл во время завершения процесса. В частности:

  • Любые выходные файлы из входных файлов, которые уже были сжаты, не должны быть затронуты. Результирующие сжатые файлы .xz должны оставаться совершенно пригодными для использования.

  • Любые входные файлы, которые еще не обработаны, не должны быть изменены вообще.

  • Входной файл, который был сжат во время завершения, не должен быть затронут.

  • При условии, что процесс завершается с помощью SIGTERMsignal, а не сигнала, чем не может быть пойманной, как SIGKILL, xz должен очистить вверх после себя перед выходом. Более конкретно, он не должен оставлять частичные выходные файлы.

  • Если xz убит жестоко, самые худшее, что должен (в отличие от могущества) случиться для частичного сжатого файла, чтобы оставаться на диске, прямо вдоль его соответствующего входного файла. Возможно, вы захотите убедиться, что такие файлы очищены правильно - хороший способ состоит в том, чтобы xz работал в отдельном каталоге из реальной области хранения и перемещал файлы в сжатие.

При этом, в зависимости от важности сжатых данных, вы все равно можете включить меры для обнаружения и обработки любых поврежденных файлов. Могут быть много патологических ситуаций, когда вещи не происходят, поскольку они должны ...