Если у меня есть том ext4, я могу изменить его размер независимо от того, монтируется он или нет, используя команду resize2fs (предоставляя устройство), но для раздела, отформатированного в XFS, для этого мне потребуется смонтировать том (используя xfs_growfs). Для этого есть причина?

Кстати, если я хочу изменить размер тома XFS, могу ли я просто смонтировать его во временный каталог и запустить xfs_growfs а затем снова размонтировать его? Независимо от того, был ли он установлен в другом месте? Или xfs_growfs будет опасен, если один и тот же том смонтирован в нескольких точках монтирования?

1 ответ1

0

Если у меня есть том ext4, я могу изменить его размер независимо от того, монтируется он или нет, используя команду resize2fs (предоставляя устройство), но для раздела, отформатированного в XFS, для этого мне потребуется смонтировать том (используя xfs_growfs). Для этого есть причина?

По той же причине, по которой нет инструмента для уменьшения объема XFS, разработчики не считали его важным и поэтому никогда не реализовывали его. На самом деле я тоже могу понять причины этого. В сущности, нет случаев, когда вам нужно изменить размер тома, а также не можете его смонтировать, а обработка изменения размера в коде ядра означает, что вам не нужно беспокоиться о том, чистый том или нет.

Вероятно, стоит отметить, что xFS не является уникальной в этом отношении, BTRFS также требует монтирования тома, прежде чем он может быть изменен, и некоторые другие файловые системы тоже похожи на это. Другие могут быть изменены только если не установлены. Форматы ext2/3/4 на самом деле являются довольно странными в том смысле, что они могут быть изменены как при монтировании, так и при демонтаже.


Кстати, если я хочу изменить размер тома XFS, могу ли я просто смонтировать его во временный каталог и запустить xfs_growfs а затем снова размонтировать его? Независимо от того, был ли он установлен в другом месте? Или xfs_growfs будет опасен, если один и тот же том смонтирован в нескольких точках монтирования?

Это немного сложнее, чтобы ответить. Все последние ядра Linux разумно обрабатывают несколько монтирований одного и того же тома (внутренне есть одно монтирование, на которое ссылаются все видимые экземпляры пользовательского пространства), и в таких ядрах совершенно безопасно смонтировать где-нибудь том XFS второй раз и запустить на нем xfs_growfs , хотя на самом деле это не дает никаких преимуществ по сравнению с простым вызовом xfs_growfs на исходной точке монтирования. Если вы используете более старое ядро или имеете дело с общим хранилищем, где находится другой узел, вам следует избегать повторного монтирования тома независимо от того, что вы планируете делать с дополнительным монтированием, поскольку вы можете уничтожить его в процессе.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .