LINUX.ORG.RU

Debian клонирование диска

 , ,


0

1

Имелся почтовый сервер на Debian + Iredmail. разлелы вспоминаю по памяти sda1 boot ext2 linux sda2 Extended sda5 lvm все на одном серверном винчестере, которы начал сыпаться(smart bad и плохие нечитаемые сектора). Унесли винчестер к одному умельцу, который скопировал на спец оборудовании винт, но только занятые сектора с содержимым. При включении нового винчестера система не грузится, а мигает только курсор на черном фоне.Хотя со старым жестким система стартует. Ощущение что траблы с загрузчиком grub или с mbr.Загружался с livecd. Диск виден , пробовал восстановить grub по статье http://help.ubuntu.ru/wiki/восстановление_grub не помогло, при вводе команды sudo grub-install --root-directory=/mnt /dev/sda пишет что «Команда не найдена» Куда копать?



Последнее исправление: makson (всего исправлений: 1)

Больше подробностей

Вы очень сумбурно излагаете, но скорее всего, ошибка произошла именно при попытке снять данные с повреждённого винта. Я советую прочитать https://www.gnu.org/software/ddrescue/manual/ddrescue_manual.html, после чего установить ddrescue на исправный компьютер и подключить неисправный винт через переходник SATA-USB, затем снять с помощью ddrescue .img образы каждого сектора. Затем подключаете через тот же переходник исправный винт и размечаете его так, чтобы размеры секторов и их файловые системы были аналогичны старому винту, затем с помощью того же ddrescue записываете образы секторов из .img файлов. Обратите внимание, что при готовых образов на новый винт следует указать ddrescue с помощью ключей, что не нужно пытаться восстановить данные и бояться перезаписывать существующие разделы (ключи -F и -f, по моему, но я могу ошибаться).

В любом случае, чтение данного мануала будет не лишним.

Vsevolod-linuxoid ★★★★★
()
Ответ на: Больше подробностей от Vsevolod-linuxoid

dd

я тоже планировал через dd. но побоялся что винт нагнется быстрее чем я его скопирую. поэтому было принято решение копировать через железку специальную. я проверял данные на новом винчестере, они соответствуют старому винту. возможно проблемы именно в grub.Еще есть предположение что это может быть проблемы с UUID у нового и старого винта разделов

makson
() автор топика
Ответ на: dd от makson

Чуть больше данных, пожалуйста

Пришлите таблицу секторов нового и старого винта.

ddrescue и dd - разные вещи. dd просто копирует информацию, а ddrescue пытается её восстановить, а чтобы не повредить винт у него есть опция на количество попыток прочесть информацию.

но только занятые сектора с содержимым

Как я понял, вместо того чтобы создать побитовую копию винта с таблицей разделов и правильно размеченными секторами Вы просто скопировали лишь некоторые данные с секторов. В таком случае неудивительно, что у Вас ничего не работает, Вам нужно не восстанавливать GRUB, а создавать его с нуля вместе с MBR и секторами. Если я ошибся, напишите.

Если Вы опасаетесь ещё раз снимать данные со старого винта, можете просто установить ту же версию Debian на новый винт, а затем скопировать в неё программы, их данные и конфигурационные файлы.

К сожалению, я врятли смогу Вам помочь. Я не очень много занимался проблемами восстановления данных. Я советую Вам перезапостить этот вопрос в Admin, озаглавив «Перенос сервера на новый винт», с как можно большим количеством подробностей. Опишите таблицы разделов старого и нового дисков, их сектора, название железки, которой Вы производили копирование данных, всё, абсолютно всё, что Вы знаете о ситуации. По Вашему описанию очень трудно составить представление о том, что у Вас произошло.

Vsevolod-linuxoid ★★★★★
()

Раз копирование осуществлялось с помощью «dd», то UUID разделов должны были сохранить свои названия. Если нет, необходимо исправить /etc/fstab.

Думаешь, не грузится GRUB? Существует способ восстановить. Берёшь LiveCD или LiveUSB, например KNOPPIX или Ubuntu (если ты собираешься восстанавливать 64-битную систему, то LiveCD тоже должен быть 64-битным). Запустив, удостоверься с помощью программы palimpsest, что разделы диска отключены.

Теперь:

sudo bash // или su, если RPM-based дистр
mount /dev/sda1 /mnt
mount -t vfat /dev/sda2 /mnt/boot/efi // эта команда НЕ НУЖНА, если у тебя не UEFI. И в любом случае, уточни названия разделов, например с помощью gparted
mount -t proc none /mnt/proc
mount --rbind /dev /mnt/dev
mount --rbind /sys /mnt/sys
chroot /mnt
grub2-install
exit
cat /proc/mounts | awk '{print $2}' | grep "/mnt/sys" | sort -r | xargs umount
cat /proc/mounts | awk '{print $2}' | grep "/mnt/dev" | sort -r | xargs umount
umount /mnt/proc
umount /mnt
exit

И перезагружайся!

ZenitharChampion ★★★★★
()
Последнее исправление: ZenitharChampion (всего исправлений: 1)

Куда копать?

Волшебства не бывает! Если важные данные на старом диске уже были повреждены, то при копировании на новом диске их просто НЕТ! И от того, восстановишь ты граб или нет, внутренности системы волшебным образом ПРАВИЛЬНО НЕ ЗАРАБОТАЮТ. Так что правильный вариант — это установка новой системы с переносом конфигов и просмотр каждого файла при переносе.

justAmoment ★★★★★
()

user@debian:~$ sudo fdisk -l

Disk /dev/sda: 1,4 TiB, 1500301910016 bytes, 2930277168 sectors Units: sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x000d592b

Device Boot Start End Sectors Size Id Type /dev/sda1 * 2048 499711 497664 243M 83 Linux /dev/sda2 501758 1953523711 1953021954 931,3G 5 Extended /dev/sda5 501760 1953523711 1953021952 931,3G 8e Linux LVM

Disk /dev/loop0: 763,5 MiB, 800600064 bytes, 1563672 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/mailserver-root: 923,5 GiB, 991579602944 bytes, 1936678912 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/mailserver-swap_1: 7,8 GiB, 8317304832 bytes, 16244736 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes

makson
() автор топика

старый диск

Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x000d592b

Device Boot Start End Sectors Size Id Type /dev/sda1 * 2048 499711 497664 243M 83 Linux /dev/sda2 501758 1953523711 1953021954 931,3G 5 Extended /dev/sda5 501760 1953523711 1953021952 931,3G 8e Linux LVM user@debian:~$ sudo fdisk -l

Disk /dev/sda: 931,5 GiB, 1000204886016 bytes, 1953525168 sectors Units: sectors of 1 * 512 = 512 bytes

Disk /dev/loop0: 763,5 MiB, 800600064 bytes, 1563672 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/mailserver-root: 923,5 GiB, 991579602944 bytes, 1936678912 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk /dev/mapper/mailserver-swap_1: 7,8 GiB, 8317304832 bytes, 16244736 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes

makson
() автор топика
Ответ на: комментарий от ZenitharChampion

root@debian: mount /dev/sda1 /mnt root@debian:/home/user# mount -t proc none /mnt/proc mount: mount point /mnt/proc does not exist root@debian:/home/user# mount --rbind /dev /mnt/dev mount: mount point /mnt/dev does not exist root@debian:/home/user# mount --rbind /sys /mnt/sys mount: mount point /mnt/sys does not exist root@debian:/home/user# chroot /mnt chroot: failed to run command ‘/bin/bash’: No such file or directory root@debian:/home/user# grub2-install bash: grub2-install: команда не найдена root@debian:/home/user#

makson
() автор топика
Ответ на: комментарий от makson

Используй тег:

[code]
код
[/code]

root@debian: mount /dev/sda1 /mnt
root@debian:/home/user# mount -t proc none /mnt/proc
mount: mount point /mnt/proc does not exist
root@debian:/home/user# mount --rbind /dev /mnt/dev
mount: mount point /mnt/dev does not exist
root@debian:/home/user# mount --rbind /sys /mnt/sys
mount: mount point /mnt/sys does not exist
root@debian:/home/user# chroot /mnt
chroot: failed to run command ‘/bin/bash’: No such file or directory
root@debian:/home/user# grub2-install
bash: grub2-install: команда не найдена
root@debian:/home/user# 

Запусти программу GParted, и посмотри как называются разделы. Например, нужный может быть не /dev/sda1, а /dev/sdb2. В «Свойствах раздела» также можно посмотреть UUID.

ZenitharChampion ★★★★★
()
Последнее исправление: ZenitharChampion (всего исправлений: 3)
Ответ на: комментарий от justAmoment

система ведь грузится со старого диска и работает.Единственное бывает что зависает на время и потом отвисает

makson
() автор топика
Ответ на: комментарий от makson

У тебя в sda1 - 243 Мб, туда не может поместиться вся система. Может в sda2? Или sda5? А может, в sda1 только раздел /boot?

Кстати, какой LiveCD ты используешь для восстановления?

ZenitharChampion ★★★★★
()
Ответ на: комментарий от ZenitharChampion

Debian live cd сборку с rutracker.org скачал. возможно sda1 при копировании железкой урезал размер диска

makson
() автор топика
Ответ на: комментарий от makson

Просто открой каждый раздел диска в файловом менеджере. Мышкой. Там, где папки etc, var, usr и другие - вот этот раздел тебе нужен. Найди файл etc/fstab, вставь его содержимое на http://paste.org.ru/, и сюда короткую ссылку

ZenitharChampion ★★★★★
()
Последнее исправление: ZenitharChampion (всего исправлений: 1)
Ответ на: комментарий от Vsevolod-linuxoid

там быстрее по скорости скачалось. но есть и оригинальный там тоже самое

makson
() автор топика
Ответ на: комментарий от ZenitharChampion

я тоже думал сначала проблема в UUID но они одинаковые. на sda1 только grub. щас оригинал битый диск унес на посекторное копирование. Мучаю новый диск что не грузится

makson
() автор топика
Ответ на: комментарий от ZenitharChampion

Ты же уже почти сделал ему chroot. Добей его уже, что ли, а то он даже не знал, на каком разделе у него система, и есть ли у него отдельный boot.

По всей видимости, надо добавить mount /dev/sda1 /mnt/boot

Потом chroot, grub-install.

tyakos ★★★
()
Ответ на: комментарий от ZenitharChampion

The entries in /dev/mapper are LVM logical volumes. You can think of these as Linux's native partition type. Linux can also use other partition types, such as PC (MBR or GPT) partitions.

LVM. Они же и в конфиге граба.

ТСу, соответственно, стоит попробовать пререустановить граб, учитывая то, что он уже знает, какой раздел ему нужен.

tyakos ★★★
()
Ответ на: комментарий от tyakos

не переустанавливается в том то и дело

root@debian: mount /dev/sda1 /mnt
root@debian:/home/user# mount -t proc none /mnt/proc
mount: mount point /mnt/proc does not exist
root@debian:/home/user# mount --rbind /dev /mnt/dev
mount: mount point /mnt/dev does not exist
root@debian:/home/user# mount --rbind /sys /mnt/sys
mount: mount point /mnt/sys does not exist
root@debian:/home/user# chroot /mnt
chroot: failed to run command ‘/bin/bash’: No such file or directory
root@debian:/home/user# grub2-install
bash: grub2-install: команда не найдена
root@debian:/home/user# 

makson
() автор топика

Может стоит позвать кого-нибудь более компетентного? Вот так и скажи «я дно и ничего не понимаю — ищите другого».

anonymous
()
Ответ на: комментарий от makson

Ты используешь не тот раздел.

Давай так:

mount /dev/sda2 /mnt
mount /dev/sda1 /mnt/boot
mount -t proc none /mnt/proc
mount --rbind /dev /mnt/dev
mount --rbind /sys /mnt/sys
grub2-install

Или

mount /dev/mapper/mailserver-root /mnt
mount /dev/sda1 /mnt/boot
mount -t proc none /mnt/proc
mount --rbind /dev /mnt/dev
mount --rbind /sys /mnt/sys
grub2-install

Но я не знаю, как выглядят LVM с livecd и разбираться мне, если чесно, лень. Поэтому можешь подождать кого-то, кто разбирается лучше меня (таких тут достаточно много, например, ЕМНИП, kostik87), или вкурить манов самому.

tyakos ★★★
()
Ответ на: комментарий от makson

Ну учитывая что у тебя нулевые знания и ты просто бездумно копируешь команды с форумов (а также используешь всякие левые сборки с рутрекера), тебе, очевидно, абсолютно наплевать, что будет с данными. Твоему работодателю тоже?

anonymous
()
Ответ на: комментарий от anonymous

я все манипуляции провожу на новом диске, и данные не будут утеряны. Познания не совсем нулевые, на уровне установки ОС с хэндбука ну и настройки сервисов.

makson
() автор топика
Ответ на: комментарий от tyakos

сделал полную копию диска железкой для восстановления винтов. система поднялась и работает. тесты продолжаю)

makson
() автор топика
Ответ на: комментарий от makson

т.е. у тебя 2 копии (3 диска, включая сбойный) в наличии? тогда извини.

проще и быстрее будет восстановить всё из бэкапа, после чего попытаться восстановить недостающее с копии дампа

anonymous
()
Ответ на: Я рад за Вас от Vsevolod-linuxoid

я же писал. отвезли кулибину по восстановлению жестких дисков, у него спец железо для их восстановления. у него не было времени и он сделал карту сбойного диска и скопировал по ней на новый только занятые сектора с данными.Видимо не скопировал mbr или побился груб(я так думаю). После чего система с этого диска не запускалась, а мигал только курсор.Сегодня купил новый диск и отнес этому же товарищу, он на этот раз делал той же железкой,но уже без карты а байт в байт и система запустилась. Пост на самом деле не решен, а решение буду дальше искать. может для вас вопросы мои и тупые, но с линуксом я знаком на уровне установки по мануалу

makson
() автор топика

попутно еще возник новый вопрос.думаю как поступить. сделать зеркальный рэйд из двух новых винчестеров, или виртуализировать существующий сервер, и прикрутить к уже имеющемуся hiper-v. оперативки жрет немного да и на винчестере за 2 года работы 50 почтовых ящиков накопилось 170 Гиг информации. что более практично и надежно.

makson
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.