- перенос системы на другое железо при помощи dd
- Команда dd Linux
- Как работает команда dd?
- Команда dd
- Как пользоваться dd?
- Выводы
- Как клонировать ваш жесткий диск Linux: 4 метода
- Инструменты клонирования дисков Linux
- 1. dd: инструмент для клонирования Native Linux
- 2. Инструмент клонирования разделов Linux, Partimage
- 3. Partclone: программное обеспечение для создания разделов и клонирования
- 4. Клонируйте свой диск Linux с помощью Clonezilla
- Клонировать ваш жесткий диск Linux легко
перенос системы на другое железо при помощи dd
Господа, рад приветствовать вас в сей чудесный летний день. У меня возникла следующая оказия — необходимо перенести систему с убунтой с одной машины на другую.
Пробовал использовать Acronis True Image и Norton Ghost, которые благополучно ничем мне не помогли. Решил попробовать заюзать dd. Делал так:
1. Воткнул 16 ГБ флешку в машину, систему с которой надо перенести (флешка пустая, ФС — FAT32)
3. По окончании выполнения дампа вытащил флешку и на целевой машине выполнил
4. По окончании копирования ребут и пробую запуститься с sda — фейл
Что я забыл сделать? Скопировать MBR? Установить на sda1 флажок загрузочного?
Установить на sda1 флажок загрузочного?
На этот флаг уже никто не обращает внимания.
Сударь, позвольте, но зачем вам dd? Воспользуйтесь tar cp, на мой взгляд это проще.
И типа всё, у нас работающая система. Размеры, расположение разделов уже не важны, лишь бы распакованная система влезла.
А почему ты не сделал сразу dd if=/dev/sdb of=/dev/sdc? Тогда и mbr не надо копировать.
Попробуй cp -r /etc и не муди более
Не занимайся онанизмом, юзай Clonezilla. Оно тебе и MBR, и BIOS boot partition для GPT скопирует, и разделы отресайзит, если размер целевого устройства отличается. Только опции правильно выбери.
dd — слишком долго. Делай rsync или cp -R , а потом просто загрузчик восстанови.
Блин, ты еще с флешкой! Это ж вообще задница! Они ж тормозные как незнамо что!
потому что диски находятся в разных машинах =)
я имел ввиду sdc вместо sdc1
На этот флаг уже никто не обращает внимания.
Отнюдь. Я встречался с ситуацией, когда обращает внимание BIOS материнки, хотя вот ему-то должно быть по барабану: его дело тупо MBR загрузить. У Intel (да, именно их боксовые продукты) свои тараканы в голове.
Ну, еще починить fstab нужно, как минимум.
Это если там UUID вместо /dev/sda1? Просто я выпиливаю всегда эти идентификаторы и заменяю файлами устройств, поэтому редко когда руками приходится трогать после такой перезаливки.
Ты скопировал раздел с системой, теперь тебе нужно на новой системе установить загрузчик (grub). Делается это при помощи grub-install /dev/sda из какой-нибудь live-cd убунты или любого другого линукса. После этого уже можно будет поднять систему.
Потом не помешает при помощи fdisk поменять тип раздела /dev/sda1 на 83 (Linux) и пометить его как загрузочный (не обязательно, но лучше сделать); обновить fstab; обновить настройки grub (в ubuntu/debian это делается командой update-grub2 ).
Ну и конечно не забыть e2fsck -f /dev/sda1 && resize2fs /dev/sda1 в конце, чтобы растянуть фс на весь раздел (это если раздел на новом диске больше раздела на старом).
А можно поподробнее, в чем это выражется? И как BIOS реагирует на неразмеченные диски или GPT?
Если там было UUID, то как раз ничего трогать не нужно. Это идентификатор ФС, который скопировался вместе с ней. А вот если там раньше было /dev/sdb1, то придется вручную менять на /dev/sda1.
я выпиливаю всегда эти идентификаторы и заменяю файлами устройств
В современных дистрах никто не гарантирует, что при следующей загрузке порядок устройств сохранится. В частности, usb-устройства, подключенные во время загрузки, могут влезть между устройствами sata. Очень весело получается, когда система не поднимается из-за вставленной в usb флешки (а казалось бы, те времена, когда комп не поднимался из-за забытой в дисководе дискеты, канули в лету вместе с дисководами).
Это был ответ на копирование через tar. В этом случае, UUID менять нужно, т.к. нам в любом случае придется создавать новую ФС.
А можно поподробнее, в чем это выражется ?
В том, что если ни на одном разделе нет флага, hdd не считается загрузочным, то есть, вообще. Если хоть где-то есть, грузится mbr, а не br раздела с флагом. Флаг используется просто в принципе. Матерился я сильно, когда на это наступил однажды.
Удивительное рядом! Какому, интересно, гению пришло в голову добавить такую проверку и, главное, зачем?!
а) ну так там диск терабайтный, а у меня флешка на 16 ГБ
перенос системы на другое железо при помощи dd
ну так там диск терабайтный, а у меня флешка на 16 ГБ
tar + scp/rsync + livecd и чуть-чуть подумать головой 🙂
dd — это еще куда ни шло когда 2 одинаковых винта, просто новый веник вторым воткнул в систему и склонил на локалхосте. Это я еще могу понять . но если 2 разных машины, разные обьемы винтов и есть сеть, то нафик нужен этот dd.
На этот флаг уже никто не обращает внимания.
Расскажи об этом например syslinux-у
> sudo dd if=/dev/sdb1 of=/dev/sdc1 bs=4096
> sudo dd if=/dev/sdc1 of=/dev/sda1 bs=4096
> 4. По окончании копирования ребут и пробую запуститься с sda — фейл
> а) ну так там диск терабайтный, а у меня флешка на 16 ГБ
Источник
Команда dd Linux
Довольно часто системным администраторам приходится копировать различные двоичные данные. Например, иногда может понадобиться сделать резервную копию жесткого диска, создать пустой файл, заполненный нулями для организации пространства подкачки или другой виртуальной файловой системы.
Для решения всех этих задач используется утилита dd linux, которая просто выполняет копирование данных из одного места в другое на двоичном уровне. Она может скопировать CD/DVD диск, раздел на диске или даже целый жесткий диск. В этой статье мы рассмотрим что из себя представляет команда dd linux, основные ее опции и параметры, а также как ею пользоваться.
Как работает команда dd?
Сначала нужно понять как работает команда dd и что она делает. Фактически, это аналог утилиты копирования файлов cp только для блочных данных. Утилита просто переносит по одному блоку данных указанного размера с одного места в другое. Поскольку в Linux все, в том числе, устройства, считается файлами, вы можете переносить устройства в файлы и наоборот.
С помощью различных опций утилиты можно повлиять на размер блока, а это, в свою очередь, уже влияет на скорость работы программы. Дальше мы рассмотрим основные опции утилиты и ее возможности.
Команда dd
Синтаксис утилиты достаточно необычен, но в то же время очень прост, после того как вы его запомните и привыкнете:
$ dd if= источник_копирования of= место_назначения параметры
С помощью параметра if вам нужно указать источник, откуда будут копироваться блоки, это может быть устройство, например, /dev/sda или файл — disk.img. Дальше, с помощью параметра of необходимо задать устройство или файл назначения. Другие параметры имеют такой же синтаксис, как if и of.
Теперь давайте рассмотрим дополнительные параметры:
- bs — указывает сколько байт читать и записывать за один раз;
- cbs — сколько байт нужно записывать за один раз;
- count — скопировать указанное количество блоков, размер одного блока указывается в параметре bs;
- conv — применить фильтры к потоку данных;
- ibs — читать указанное количество байт за раз;
- obs — записывать указанное количество байт за раз;
- seek — пропустить указанное количество байт в начале устройства для чтения;
- skip — пропустить указанное количество байт в начале устройства вывода;
- status — указывает насколько подробным нужно сделать вывод;
- iflag, oflag — позволяет задать дополнительные флаги работы для устройства ввода и вывода, основные из них: nocache, nofollow.
Это были все основные опции, которые вам могут понадобиться. Теперь перейдем ближе к практике и рассмотрим несколько примеров как пользоваться утилитой dd linux.
Как пользоваться dd?
Обычные пользователи используют команду dd чаще всего для создания образов дисков DVD или CD. Например, чтобы сохранить образ диска в файл можно использовать такую команду:
sudo dd if=/dev/sr0 of=
/CD.iso bs=2048 conv=noerror
Фильтр noerror позволяет отключить реагирование на ошибки. Дальше, вы можете создать образ жесткого диска или раздела на нем и сохранить этот образ на диск. Только смотрите не сохраните на тот же жесткий диск или раздел, чтобы не вызвать рекурсию:
В вашей домашней папке будет создан файл с именем disk1.img, который в будущем можно будет развернуть и восстановить испорченную систему. Чтобы записать образ на жесткий диск или раздел достаточно поменять местами адреса устройств:
Очень важная и полезная опция — это bs. Она позволяет очень сильно влиять на скорость работы утилиты. Этот параметр позволяет установить размер одного блока при передаче данных. Здесь нужно задать цифровое значение с одним из таких модификаторов формата:
- с — один символ;
- b — 512 байт;
- kB — 1000 байт;
- K — 1024 байт;
- MB — 1000 килобайт;
- M — 1024 килобайт;
- GB — 1000 мегабайт;
- G — 1024 мегабайт.
Команда dd linux использует именно такую систему, она сложная, но от этого никуда не деться. Ее придется понять и запомнить. Например, 2b — это 1 килобайт, и 1k, это тоже 1 килобайт, 1М — 1 мегабайт. По умолчанию утилита использует размер блока — 512 байт. Например, чтобы ускорить копирование диска можно брать блоки размером по 5 мегабайт. Для этого применяется такая команда:
Следующий параметр — это count. С помощью него можно указать сколько блоков необходимо скопировать. Например, мы можем создать файл размером 512 мегабайт, заполнив его нулями из /dev/zero или случайными цифрами из /dev/random:
sudo dd if=/dev/zero of=file.img bs=1M count=512
Обратите внимание, что этот параметр указывает не размер в мегабайтах, а всего лишь количество блоков. Поэтому, если вы укажите размер блока 1b, то для создания файла размером 1Кб нужно взять только два блока. С помощью этого параметра также можно сделать резервную копию таблицы разделов MBR. Для этого скопируем в файл первые 512 байт жесткого диска:
sudo dd if=/dev/sda of=mbr.img bs=1b count=1
Для восстановления используйте обычную команду развертывания образа на диск.
Если образ диска слишком большой, можно перенаправить весь вывод нестандартный поток вывода утилиты gzip:
dd if =/dev/sda2 | bzip2 disk.img.bz2
Также можно использовать утилиту dd linux для копирования файлов, хотя это и не является ее прямым предназначением:
dd if=/home/sergiy/test.txt of=/home/sergiy/test1.txt
Как вы знаете, команда dd linux пишет данные на диск непосредственно в двоичном виде, это значит, что записываются нули и единицы. Они переопределяют то, что было раньше размещено на устройстве для записи. Поэтому чтобы стереть диск вы можете просто забить его нулями из /dev/zero.
sudo dd if=/dev/zero of=/dev/sdb
Такое использование dd приводит к тому что весь диск будет полностью стерт.
Выводы
В этой статье мы рассмотрели как пользоваться dd linux, для чего можно применять эту утилиту и насколько она может быть полезной. Это почти незаменимый инструмент системного администратора, поскольку с помощью нее можно делать резервные копии целой системы. И теперь вы знаете как. Если у вас остались вопросы, спрашивайте в комментариях!
Источник
Как клонировать ваш жесткий диск Linux: 4 метода
Тот факт, что вы работаете в операционной системе Linux, не означает, что вы не будете время от времени сталкиваться с проблемами. Всегда хорошо иметь план резервного копирования, на случай, если возникнет проблема. Возможно, редкий вирус Linux будет атаковать; возможно, вас будут преследовать мошенники-вымогатели. Может быть, жесткий диск (HDD) выйдет из строя.
Клонируя жесткий диск Linux, вы создаете образ диска, который можно восстановить позже. Но как вы клонируете свой жесткий диск Linux?
Инструменты клонирования дисков Linux
Ваша установка Linux может привести к ошибке; Вы можете обновить жесткий диск до большего объема. Безотносительно проблемы, если у вас есть резервная копия вашего диска, восстановить и запустить все будет относительно просто.
В Linux есть четыре решения для клонирования дисков, которые вы должны рассмотреть:
- дд
- Partimage
- Partclone
- Clonezilla
Независимо от того, используете ли вы функции, встроенные в вашу операционную систему Linux, или устанавливаете сторонний инструмент, должно пройти совсем немного времени, прежде чем вы сможете восстановить и запустить свою систему.
Давайте рассмотрим каждый из четырех основных вариантов клонирования диска в Linux.
1. dd: инструмент для клонирования Native Linux
Возможно, самый мощный инструмент Linux из всех, dd (иногда называемый «разрушитель диска»), может клонировать весь жесткий диск или раздел диска в другой. Но в случае неправильного использования он может удалить содержимое вашего диска.
Таким образом, вы должны использовать с особой осторожностью. Вы найдете, что dd встроен в большинство операционных систем Linux. Если нет, установите его из менеджера пакетов. Чтобы клонировать жесткий диск вашего компьютера, используйте команду:
Здесь sdX — это исходный диск, а sdY — место назначения. Числовое значение 64K соответствует команде размера блока, bs. Значение по умолчанию составляет 512 байт, что очень мало, поэтому в качестве условия лучше включить 64 КБ или более крупные 128 КБ. Однако: хотя больший размер блока делает передачу быстрее, меньший размер блока делает передачу более надежной.
Если вы хотите клонировать только раздел вашего диска, используйте
Как вы можете видеть, раздел sda1 (то есть раздел 1 на устройстве sda) будет клонирован в sdb1 (вновь созданный раздел 1 на устройстве sdb), например, вторичный или внешний жесткий диск, подключенный к вашему компьютеру.
Нажмите Войти запустить команду. Сколько времени это займет, будет зависеть от размера диска или раздела. Просто убедитесь, что объем назначения достаточно велик для его хранения!
2. Инструмент клонирования разделов Linux, Partimage
Если вы столкнулись с проблемами, пытаясь разобраться с инструкциями с помощью dd, или предпочли бы избежать случайного удаления жесткого диска с опечаткой, partimage также доступен для большинства дистрибутивов и не несет риска «уничтожения диска»!
Однако partimage не поддерживает файловую систему ext4, поэтому избегайте ее использования для клонирования дисков или разделов этого типа. Однако при необходимости его можно использовать для клонирования дисковых форматов Windows (FAT32 или NTFS, хотя это экспериментально), а также для более широко используемой файловой системы Linux ext3 и других более старых альтернатив.
Перед началом убедитесь, что раздел, который вы хотите клонировать, отключен (с помощью команды umount). В противном случае вам нужно выйти из partimage, чтобы продолжить, прежде чем продолжить процесс. Вы можете выйти в любое время с F6 ключ.
Для Ubuntu установите с:
Запустите из командной строки:
Это приложение, управляемое мышью, которое требует, чтобы вы сначала выбрали раздел, который нужно клонировать.
Нажмите вправо на клавиши со стрелками, чтобы перейти к следующему разделу, затем Файл изображения для создания / использования и дайте ему имя (или введите имя файла изображения, которое будет восстановлено).
Выберите правильный Действие должно быть сделано (убедитесь, что у выбранной опции есть звездочка) и нажмите F5 продолжать. На следующем экране выберите Уровень сжатияи ваш предпочитаемый Опции. Вы также можете выбрать режим разделения изображений и указать, что должно произойти после создания резервной копии.
Нажмите F5 чтобы продолжить, подтвердите данные, затем нажмите Хорошо начать процесс. Скорость этого будет зависеть от мощности вашего компьютера.
Если вы ищете быстрое и грязное, но безопасное решение для клонирования дисков для Linux, используйте partimage.
3. Partclone: программное обеспечение для создания разделов и клонирования
Для более зрелой альтернативы dd, которая поддерживает резервное копирование файловой системы ext4, partclone прост в использовании, но опять же требует текстовых команд, а не интерфейса, управляемого клавиатурой или мышью. Установить с помощью:
…где [fstype] тип файловой системы раздела, который вы хотите клонировать.
Следующая команда создаст образ диска hda1 (жесткий диск 1, раздел 1) с именем hda1.img:
Возможно, вы захотите восстановить это изображение, поэтому используйте
Более подробную информацию об использовании можно найти на сайте partclone.
4. Клонируйте свой диск Linux с помощью Clonezilla
Для более гибкого решения, почему бы не попробовать Clonezilla? Это популярное решение для аварийного восстановления основано на Partclone и предназначено для ряда задач клонирования дисков. Поддерживаются все ожидаемые файловые системы в Linux, Windows и MacOS (и за ее пределами).
В отличие от dd и Partclone, Clonezilla доступен в виде загрузочного ISO. Вы можете записать это на DVD или USB-накопитель, чтобы полностью клонировать ваш жесткий диск Linux. Clonezilla проста в использовании, с меню на клавиатуре, а не с непонятными командами, так что любой может справиться с этим.
Хотя Clonezilla может быть настроена как отдельная утилита, вы можете предпочесть использовать ее как часть инструмента восстановления Boot CD от Hiren.
Вы также можете использовать Clonezilla на профессиональном уровне, чтобы создавать изображения схожих настроек ПК с одной и той же операционной системой.
Скачать: Clonezilla
Клонировать ваш жесткий диск Linux легко
Если вы никогда ранее не клонировали жесткий диск, возможно, вам не хочется начинать работу. Это может быть пугающим, особенно если вы находитесь в тяжелом положении с поврежденным жестким диском, который отчаянно нуждается в клонировании перед отказом.
Хотя вы можете предпочесть просто синхронизировать ваши важные данные в облаке, всегда полезно иметь полную резервную копию диска, которую можно быстро восстановить в случае системных ошибок. Однако не забывайте использовать эти инструменты с осторожностью, поскольку они могут легко привести к случайной потере ваших данных.
Резервное копирование ваших данных имеет жизненно важное значение! Узнайте, как оптимизировать резервные копии в Linux
6 приложений и приемов для оптимизации резервного копирования вашей системы Linux
6 приложений и приемов для оптимизации резервного копирования вашей системы Linux
Заинтересованы в резервном копировании данных в Linux? Беспокоитесь об использовании dd или просто хотите сделать все как можно проще? Эти советы помогут вам сделать простые резервные копии, которые не израсходуют ресурсы.
Прочитайте больше
,
Узнайте больше о: клон жесткого диска, резервное копирование данных, советы Linux, восстановление системы.
11 лучших дистрибутивов Linux для программистов
Источник