Использование дд и 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.
- Откройте консоль
- Найдите нужный раздел, используя
gparted-pkexec
, Если у вас внезапно появился большой блок свободного места на вашем диске, очень возможно, что корневой раздел был перезаписан и не может быть восстановлен. Если это не так, перейдите к шагу 3. e2fsck -p /dev/sdX#
(где /dev/sdX# - устройство и раздел вашей корневой файловой системы (возможно, /dev/sda4 или /dev/sda5, но вы можете проверить это с помощьюgparted-pkexec
с LiveCD/USB)
Хорошо, проблема здесь в том, что вы пытались прошить его без монтирования, убедитесь, что путь /mnt/ или /media/, поэтому вы уверены, что вы правильно смонтировали.
На вашем месте я бы использовал GUI для такого рода вещей.