Почему tar зависает с 100% ЦП, если список файлов имеет ведущие пробелы

Используя относительный каталог ( find .) приводит к ожидаемым результатам ./abc.txt в то время как find /home/ma/a/abc.txt является идентичным, но абсолютным. Вы не ожидали бы видеть . при использовании полных путей.

Результаты идентичны в этом, Вы могли технически "найти и заменить" . с /home/me/a и наоборот.

3
17.04.2015, 04:00
2 ответа

Я не могу воспроизводить результаты, которые вы получаете, хотя я могу получить смолу, чтобы бросить ошибку при выполнении того, что вы описываете.

Игнорирование того, что предоставляя список пробелов перед неправильным именем файла; Пробелы не являются незначительными в Unix. Если вы расскажите TAL, что файл называется «file2», то TAL ищет файл под названием «file2», и если он не найдет одно, есть ошибка.

Если вы переименуете файл2:

mv file2 '  file2'

, а затем запустить TAR, он работает.

В любом случае, TAR должен быть ошибка, а не сбой, как это делает в вашей системе.

0
27.01.2020, 21:41

Я воспроизвел это поведение. Для меня это похоже на ошибку (смола висит на 100% на процессоре).

Эта проблема мешала моему Proxmox-хосту правильно восстанавливать резервные копии. И именно благодаря этому вопросу я узнал об этом.

В качестве временного обходного пути, я понизил рейтинг до tar v1.26, отсюда https://packages.debian.org/wheezy/amd64/tar/download (если вы используете Debian/Ubuntu, скачайте соответствующую версию .deb и установите её с помощью dpkg -i, это довольно просто), и это сработало на меня.

0
27.01.2020, 21:41

Теги

Похожие вопросы