Использование дд и SDCard

У меня была Ubuntu 14.04, работающая без проблем, однако при установке IMG на SD-карту для Raspberry Pi, вот так:

dd bs=4M if=2014-06-20-wheezy-raspbian.img of=/dev/mmcblk0

Моя любимая Ubuntu теперь загружается так:

BusyBox v1.18.5 (Ubuntu 1:1.18.5-1ubuntu4) built-in shell (ash) Enter 'help' for a list of built-in commands. (initramfs)

Я только что сделал большую ошибку и перешел на файловую систему на жестком диске? Есть ли исправление?

2 ответа

Решение

Здесь может происходить одна из трех вещей (я не слишком знаком с Raspian):

SD-карта мешает последовательности загрузки

Возможно, по какой-то причине процесс загрузки выбирает разделы / файлы на SD-карте и приводит к сбою загрузки, попробуйте просто извлечь SD-карту и перезагрузиться. Я считаю, что это должно сработать, если нет, у вас могут возникнуть проблемы.

Вы прожарили свой раздел

Если та команда, которая у вас есть выше, является действительной командой, которую вы использовали, проблем не должно быть. Однако, если вы вместо этого набрали что-то вроде of=/dev/sdX# или же of=/dev/sdX, тогда у друга будет начало номера раздела # или начало диска соответственно.

Если вы действительно каким-то образом сумели поджарить свой раздел, то вы действительно мало что можете сделать, чтобы восстановить данные, кроме использования такого инструмента, как testdisk (который может работать или не работать в зависимости от того, были ли стерты все резервные суперблоки) или, в худшем случае, scalpel восстановить файлы. В противном случае просто переформатируйте и попробуйте снова.

dd потенциально может быть очень разрушительной программой. В нем нет предупреждений, которые бы говорили вам: "Эй, приятель, ты действительно уверен, что хочешь это сделать? Это, вероятно, плохая идея" - это просто так. Поэтому вы должны быть уверены, что введенная вами команда - это команда, которую вы действительно хотите. Например, вы можете убедиться, что /dev/mmcblk является правильным устройством, сначала установив SD-карту (или раздел на нее), а затем найдя устройство, указанное в mount команда. Тем не менее, из команды, которую вы набрали, она должна была работать как ожидалось...

В последовательности загрузки произошла ошибка

Я видел, как это происходило при создании пользовательских ISO-образов, и это имеет место, когда корневая файловая система не может быть найдена (или повреждена). Если у вас есть отдельный раздел / home, тогда все еще могут быть проблемы с корневым разделом, в то время как ваш раздел / home остался нетронутым.

Как описано здесь, удалите параметры ядра quiet а также splash и добавить опцию ядра debug пока в GRUB (загрузчик). Для этого нажмите E, когда у вас выбран вариант загрузки. Как только строка отредактирована, нажмите Ctrl+X для загрузки.

Это запишет файл /tmp/initramfs.debug. После того, как система не загружается, вы можете использовать httpd команда, чтобы разрешить другому компьютеру доступ к файловой системе через браузер, или вы можете просто перезагрузиться с LiveCD и проверить файл. То, что вы можете искать, - это строка, похожая на "Невозможно найти корневой раздел".

Также возможно, что корневая файловая система повреждена и должна быть исправлена ​​с помощью проверки файловой системы. Для этого сначала загрузитесь с LiveCD/USB.

  1. Откройте консоль
  2. Найдите нужный раздел, используя gparted-pkexec, Если у вас внезапно появился большой блок свободного места на вашем диске, очень возможно, что корневой раздел был перезаписан и не может быть восстановлен. Если это не так, перейдите к шагу 3.
  3. e2fsck -p /dev/sdX# (где /dev/sdX# - устройство и раздел вашей корневой файловой системы (возможно, /dev/sda4 или /dev/sda5, но вы можете проверить это с помощью gparted-pkexec с LiveCD/USB)

Хорошо, проблема здесь в том, что вы пытались прошить его без монтирования, убедитесь, что путь /mnt/ или /media/, поэтому вы уверены, что вы правильно смонтировали.

На вашем месте я бы использовал GUI для такого рода вещей.

Другие вопросы по тегам