Мне достался старый ПК-сервер (четырехъядерный Pentium 4), на котором были только разделы для /
, /boot
и swap
(RAID1 с 2 дисками SATA по 1T), но мне нужно было обновить дистрибутив (с CentOS 6.9). Я решил создать новый раздел, чтобы тот, который содержал, /
можно было отформатировать.
Но я забыл добавить -p
флаг, resize2fs
и теперь он молча смотрит на меня, и я не могу сказать, сколько еще это может занять (он делает это уже более 50 часов). Теперь я знаю, что сжатие файловой системыможет занять много времени, но пока я мог ждать100 часов, что-то вродеО 800 часах не может быть и речи.
Вот что я думаю в данный момент:
- Продолжайте с
Ctrl
+C
&&e2fsck
. - Смонтируйте раздел и вручную удалите более 100 ГБ данных, которые нам бесполезны.
- Начнем сверху с
resize2fs -p ...
Но я не смог найтиконсенсусо том, как именноопасныйэто отправка SIGINT в resize2fs
.
У меня есть дополнительная резервная копия важной информации, но я все равно хотел бы сделать это, не повредив файловую систему. И да, я знаю, что может быть быстрее просто установить дистрибутив с нуля и восстановить мою резервную копию.
Обновлять: Я решил прервать его. И вроде бы все хорошо, но вопрос все еще стоит. Мне все еще любопытно.
решение1
Определенно интересный вопрос, и хотя ваш результат оказался довольно хорошим (и, как я и надеялся, поскольку отлов SIGINT
— это не совсем высшая математика, а остановка на полпути путем простого перемещения некоторых блоков данных тоже не кажется сложной), есть также достаточно историй неудач, как, например, 10-летняя ошибка Debianhttps://bugs.debian.org/cgi-bin/bugreport.cgi?bug=574292
Но даже несмотря на то, что этой ошибке уже 10 лет, я только что запустил имитацию, e2fsck
и resize2fs
хотя strace
первая устанавливает целую кучу обработчиков сигналов, включая SIGINT
и SIGTERM
, resize2fs
она все еще этого не делает.
Так что если кто-то найдет этот вопрос: воспринимайте вышеизложенное как неопровержимое доказательство и продолжайте быть осторожными. :-) Обратите внимание, что на странице руководства упоминается флаг для создания файла отмены в случае ошибок.
(А я просто хотел бы запустить эту операцию изменения размера внутри сеанса экрана... но ладно, по крайней мере, у меня это есть -p
)
редактировать
Подождите, я только что понял, почему бы не войти по SSH, не сделать снимок LVM и e2fsck
не сделать это, пока изменение размера все еще выполняется? Я сделал это 5 раз подряд во время фазы «Перемещение блоков», и хотя я получаю «содержит файловую систему с ошибками, проверка принудительно» при каждой проверке, ошибок не обнаружено. Теперь, конечно, не спрашивайте меня о целостности данных.
редактировать
Довольно интересный ответ от самого tytso@, кстати,https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=574292#30