У меня есть SD-карта SanDisk Extreme, в которой мой Homeserver работает на RaspberryPI. Я хочу переместить этот sytsem на другую SD-карту 4 ГБ, используя dd. Но, к сожалению, когда я делаю образ с помощью dd, он имеет размер всего SanDisk (16 ГБ), хотя и приблизительно. 13,5 из них разделены. Сервер SD состоит из 2 разделов: один маленький 50 МБ и второй 3 ГБ. Я ожидал, что dd создаст изображение размера суммы двух разделов. Есть ли способ сделать образ, который содержит только реально используемое дисковое пространство?
2 ответа
Если SD-карта (например) sdb, не просите dd прочитать sdb, вы можете попросить ее скопировать только разделы, указав (например) sdb1 или sdb2. Сначала вам придется разбить целевое устройство на разделы одинакового размера и указать их в качестве целей.
Системы Unix/GNU-Linux имеют множество инструментов для копирования данных
- дд
- CPIO
- свалка
- деготь
Возможно, стоит почитать немного о каждой из них (например, справочные страницы, но я предлагаю поискать в Google для обзора)
Кроме того, у dd
есть опция count, так что вы можете указать, чтобы она копировала только первые 4 ГБ.
Да, и на самом деле это очень просто: вы можете использовать FSArchiver, который, как четко указано на его домашней странице: " ...FSArchiver может извлекать архив в раздел, который меньше исходного, если на нем достаточно места для хранения данных ... »