URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 70958
[ Назад ]

Исходное сообщение
"Сдвинуть слайс FreeBSD на диске"

Отправлено Саша , 14-Дек-06 16:27 
Можно ли каким-либо средствами сдвинуть слайс FreeBSD на диске, т.е. перенести
его на n ГБ вперед? Насколько мне известно разного рода Partition Magic'и не
работают с такими разделами, но, быть может, позволяют перенести его побайтно?

Вопрос: насколько безопасен будет такой перенос? Насколько я понял, смещения
в разделах внутри слайса хранятся относительно его (слайса) начала, а не начала
диска. По крайней мере так утверждает bsdlabel. Так что, в принципе, можно
надеяться на успех. Или я не прав?

Не сталкивался ли кто с такой задачей?


Содержание

Сообщения в этом обсуждении
"Сдвинуть слайс FreeBSD на диске"
Отправлено Аноним , 14-Дек-06 18:48 
>диска. По крайней мере так утверждает bsdlabel. Так что, в принципе, можно
>надеяться на успех. Или я не прав?
Внутри disklabel смещения точно абсолютные. Внутри файловой системы ИМХО относительные, но не факт. Можно попробовать переместить с последующим изменением disklabel (можно сохранить последний в текстовом виде - bsdlabel транслирует смещения в относительные). Но гарантий никаких, поэтому надежнее всего, как обычно, dump/restore.

"Сдвинуть слайс FreeBSD на диске"
Отправлено lavr , 14-Дек-06 20:59 
>>диска. По крайней мере так утверждает bsdlabel. Так что, в принципе, можно
>>надеяться на успех. Или я не прав?
>Внутри disklabel смещения точно абсолютные. Внутри файловой системы ИМХО относительные, но не
>факт.

факт, относительные

> Можно попробовать переместить с последующим изменением disklabel (можно сохранить последний
>в текстовом виде - bsdlabel транслирует смещения в относительные). Но гарантий
>никаких, поэтому надежнее всего, как обычно, dump/restore.

угу

можем получить размер слайса - можем
можем скопировать слайс побайто - dd if=/dev/adXsY of=slice.img - можем
ну а дальше понятно. для страховки можно сохранить компии суперблока/ов

ps. все остальное как было сказано - береженого бог бережет


"Сдвинуть слайс FreeBSD на диске"
Отправлено Саша , 15-Дек-06 06:57 
>>>диска. По крайней мере так утверждает bsdlabel. Так что, в принципе, можно
>>>надеяться на успех. Или я не прав?
>>Внутри disklabel смещения точно абсолютные. Внутри файловой системы ИМХО относительные, но не
>>факт.
>
>факт, относительные
>
>> Можно попробовать переместить с последующим изменением disklabel (можно сохранить последний
>>в текстовом виде - bsdlabel транслирует смещения в относительные). Но гарантий
>>никаких, поэтому надежнее всего, как обычно, dump/restore.
>
>угу
>
>можем получить размер слайса - можем
>можем скопировать слайс побайто - dd if=/dev/adXsY of=slice.img - можем
>ну а дальше понятно. для страховки можно сохранить компии суперблока/ов
>
>ps. все остальное как было сказано - береженого бог бережет

Спасибо, рискну


"Сдвинуть слайс FreeBSD на диске"
Отправлено Саша , 15-Дек-06 10:13 
>можем получить размер слайса - можем
>можем скопировать слайс побайто - dd if=/dev/adXsY of=slice.img - можем
>ну а дальше понятно. для страховки можно сохранить компии суперблока/ов
>
>ps. все остальное как было сказано - береженого бог бережет

Эксперименты в "песочнице" (qemu) завершились вполне удачно.
Загрузившись с live-cd просто создал fdisk'ом слайс точно такого же размера
в неразмеченной области и тупо скопировал раздел в раздел командой
dd if=/dev/ad0s1 of=/dev/ad0s2 bs=1M. После чего ad0s1 прибил. Этого
оказалось достаточно. Грузится отлично (ну, ясно, новый / при первой загрузке
переписывается вручную). В общем, надо было про qemu вспомнить раньше :))

Остался еще вопрос, впрочем, вероятно, риторический. Такое решение подходит,
если на диске достаточно места для создания непересекающегося слайса.
А если места не достаточно, остается только через образ слайса? Наверное,
можно, аккуратно рассчитав смещения, перенести раздел в неразмеченную
область диска (dd .. of=/ad0 skip=xx ..), но ведь при переносе неизбежно
затрется конец переписываемого раздела.

Можно ли заставить dd писать "с конца" блока?


"Сдвинуть слайс FreeBSD на диске"
Отправлено lavr , 15-Дек-06 12:16 
>>можем получить размер слайса - можем
>>можем скопировать слайс побайто - dd if=/dev/adXsY of=slice.img - можем
>>ну а дальше понятно. для страховки можно сохранить компии суперблока/ов
>>
>>ps. все остальное как было сказано - береженого бог бережет
>
>Эксперименты в "песочнице" (qemu) завершились вполне удачно.

дык ку-ему для этого НЕОБЯЗАТЕЛЬНО, есть md/mdconfig - быстро и без
дополнительных телодвижений

>Загрузившись с live-cd просто создал fdisk'ом слайс точно такого же размера
>в неразмеченной области и тупо скопировал раздел в раздел командой
>dd if=/dev/ad0s1 of=/dev/ad0s2 bs=1M. После чего ad0s1 прибил. Этого
>оказалось достаточно. Грузится отлично (ну, ясно, новый / при первой загрузке
>переписывается вручную). В общем, надо было про qemu вспомнить раньше :))
>
>Остался еще вопрос, впрочем, вероятно, риторический. Такое решение подходит,
>если на диске достаточно места для создания непересекающегося слайса.
>А если места не достаточно, остается только через образ слайса? Наверное,

дык поэтому я сразу и написал dd с of=image, ибо без понятия о разметке

>можно, аккуратно рассчитав смещения, перенести раздел в неразмеченную
>область диска (dd .. of=/ad0 skip=xx ..), но ведь при переносе неизбежно
>
>затрется конец переписываемого раздела.
>
>Можно ли заставить dd писать "с конца" блока?

sources в наличии - посмотри, поправь если нужно, лучше использовать НАДЕЖНЫЕ,
проверенные и железно работающие МЕТОДЫ - опыт показывает что БЫСТРЕЙ получается. :)


"Сдвинуть слайс FreeBSD на диске"
Отправлено Саша , 15-Дек-06 14:45 
>дык ку-ему для этого НЕОБЯЗАТЕЛЬНО, есть md/mdconfig - быстро и без
>дополнительных телодвижений
Черт! Ну ведь было у меня dejavu, что можно и проще!!! Спасибо, пригодится еще.

>sources в наличии - посмотри, поправь если нужно, лучше использовать НАДЕЖНЫЕ,
>проверенные и железно работающие МЕТОДЫ - опыт показывает что БЫСТРЕЙ получается. :)
Да, пожалуй. Нужно быстро, поэтому видимо, воспользуюсь старым, проверенным
dump/restore. Если девайс для dump'а отыщется поблизости и захочет работать
с ноутбуком.

Тема закрыта, еще раз спасибо!