Слетел /home

Решаем вопросы не связанные с остальными разделами

Слетел /home

Сообщение Oleg65 » 08 апр 2015, 06:31

Ситуация: сын делал бэкап флэхи через dd и, судя по всему, забэкапил не в файл, а в хомяк, в раздел. Теперь при загрузке хомяк не монтируется, могу войти только в гостевой сеанс. В Gparted раздел определяется, как unknown, fdisk -l - хомяк на сда7 - видит. Нужно просто вытащить с хомяка мои данные (вернее не законченный на половину перевод Advanced Bash Script Guide). У кого-нибудь какие-нибудь мысли есть? Скопировать раздел и восстановить данные пока не на что.
Аватар пользователя
Oleg65
Местный говорун
Местный говорун
 
Автор темы
Сообщений: 760
Стаж: 2 года 8 месяцев 6 дней
Откуда: г.Коломна Моск.обл.
Благодарил (а): 54 раз.
Поблагодарили: 178 раз.

Слетел /home

Спонсор

Спонсор
 

Re: Слетел /home

Сообщение Kycok » 08 апр 2015, 09:31

Оффтоп. Теперь мы знаем иной смысл слова "забекапить важные данные"
Аватар пользователя
Kycok
Уважаемый участник
Уважаемый участник
 
Сообщений: 281
Фото: 20
Стаж: 2 года 8 месяцев 8 дней
Откуда: Санкт-Петербург
Благодарил (а): 39 раз.
Поблагодарили: 60 раз.

Re: Слетел /home

Сообщение ALEXX » 08 апр 2015, 10:42

Первое что приходит в голову, делай слепок диска и пробуй с LiveDVD вытащить хомяка
Умом Россию не понять, Аршином общим не измерить.
У ней особенная стать — В Россию можно только верить.
Федор Иванович Тютчев
Аватар пользователя
ALEXX
Администратор
Администратор
 
Сообщений: 1110
Фото: 32
Стаж: 2 года 9 месяцев 3 дня
Откуда: Королёв
Благодарил (а): 321 раз.
Поблагодарили: 186 раз.

Re: Слетел /home

Сообщение tupoll » 08 апр 2015, 11:21

Если он определяется как неизвестный и не монтируется значит пустой раздел без ф.с тут надо полный вывод диска чтоб советовать что-то,кроме предположений.
Правильный линукс-BSD.
Аватар пользователя
tupoll
Уважаемый участник
Уважаемый участник
 
Сообщений: 228
Фото: 3
Стаж: 2 года 8 месяцев 5 дней
Откуда: Vladivostok
Благодарил (а): 31 раз.
Поблагодарили: 38 раз.

Re: Слетел /home

Сообщение Oleg65 » 08 апр 2015, 11:48

Сейчас в гостевом режиме, поэтому выложить ничего не могу. Но ситуация такая: fdisk - l выдает на хомяке 16Гб ФАТфс и остальное Экст. Сейчас поеду на работу, возьму жесткий, перекопирую раздел и попробую выдернуть оттуда.
Аватар пользователя
Oleg65
Местный говорун
Местный говорун
 
Автор темы
Сообщений: 760
Стаж: 2 года 8 месяцев 6 дней
Откуда: г.Коломна Моск.обл.
Благодарил (а): 54 раз.
Поблагодарили: 178 раз.

Re: Слетел /home

Сообщение ALEXX » 08 апр 2015, 11:57

16 гигабайт я так понял это для флэшки он из хомяка отрезал... хм... восстановление проблематичное будет....
Умом Россию не понять, Аршином общим не измерить.
У ней особенная стать — В Россию можно только верить.
Федор Иванович Тютчев
Аватар пользователя
ALEXX
Администратор
Администратор
 
Сообщений: 1110
Фото: 32
Стаж: 2 года 9 месяцев 3 дня
Откуда: Королёв
Благодарил (а): 321 раз.
Поблагодарили: 186 раз.

Re: Слетел /home

Сообщение Oleg65 » 08 апр 2015, 13:48

hotmax писал(а):

16 гигабайт я так понял это для флэшки он из хомяка отрезал... хм... восстановление проблематичное будет....

Да нет, это он хотел оформатированную 16Гб флэху скопировать на жесткий и попытаться (поучиться) восстановить данные. В конечном пути копирования обозначил не директорию, а раздел. Ну и получилось, что на одном разделе две ФС встали. Сейчас отрезал этот кусок, попозже буду мудрить-восстанавливать данные через Scalpel. Что интересно, суперблоки оказались недоступны, с ОС в гостевом режиме ничего не сделаешь, с Лайф-Дивиди - ничего не изменишь. С работы привезу хард, на него этот кусок в 60Гб закину и буду там колдовать, думаю с не переписанных секторов все восстановлю.
Аватар пользователя
Oleg65
Местный говорун
Местный говорун
 
Автор темы
Сообщений: 760
Стаж: 2 года 8 месяцев 6 дней
Откуда: г.Коломна Моск.обл.
Благодарил (а): 54 раз.
Поблагодарили: 178 раз.

Re: Слетел /home

Сообщение tupoll » 08 апр 2015, 16:44

Ну если получится-отпишитесь,мы поучимся, если файлы мелкого размера может что и удастся.
Правильный линукс-BSD.
Аватар пользователя
tupoll
Уважаемый участник
Уважаемый участник
 
Сообщений: 228
Фото: 3
Стаж: 2 года 8 месяцев 5 дней
Откуда: Vladivostok
Благодарил (а): 31 раз.
Поблагодарили: 38 раз.

Re: Слетел /home

Сообщение Oleg65 » 09 апр 2015, 08:31

Значится так: Предистория:почему (после эмоций). Сын, я уже об этом и забыл, видел, как мне принесли стучащий диск и как я делал с помощью dd_rescue (тот же dd, но с большИми возможностями) копии файлов с него (образ диска с начала - до момента стука и с конца -до момента стука, что бы спокойно работать с восстановлением, не беспокоясь, что винт крякнет). Посчитал, что это правильно и, соответственно, решил все повторить, но не учел, что я копировал не себе на диск, а на внешний.
И так: пока восстанавливаю ему файлы с флэшки. Для этого создаем в /home или где-то еще папку, куда будем складывать вытащенные файлы. Запускаем из-под рута в терминале testdisk. Отображаются носители, стрелочками Вверх-Вниз выбираем нужный - жмем Proceed. Далее выбираем тип таблицы - в моем случае Интел (у меня АМД, но все равно), там глянете - ИксБокс и т.д.. Все выборы операций - ENTER. Далее выбираем [Analise], выбираем [Quck Search] После проверки будет выведен раздел, выделяем его (зелененький становится) и далее... уже жмем от задачи ... р - вывод списка содержащихся в ней файлов, t - изменяем тип ФС, а - добавляем новый раздел, L - загружаем резервную копию (делаем бэкап). Мне нужны файлы, жму Р. Появляется таблица со всеми директориями и файлами в них с инодой (права, время, расширение). Далее выбираем: с - копируем теущий файл, С - копируем выбранные файлы, h - скрывает удаленные (которые вы уже удалили с носителя) файлы, q - выход в меню. Выделяю нужные файлы ( становятся красненькими) жму С - открывается таблица, в которой ищу свою, созданную заранее, папку. Вхожу в нее. Жму У. Все, идет копирование, увидите, зелененьким процесс. По завершению копирования выходим из проги, заходим в папку и видим файлы, у меня они типа _ICT9911.AVI. Все файлы открываются из под рута, названия файлов не сохраняются, поэтому меняем chmod -ом у них права и ручками ищем, что нужно ... в общем-то все. Применение Форемост и Скальпель - опишу чуть позже. Сегодня сына учил Тестдиску и пояснил ему его ошибки. Вроде понял :D И да, восстановление данных с диска опишу отдельно, алгоритм решения как бы есть, надо только высчитать нужные сектора, чем сейчас и занимаюсь.
Аватар пользователя
Oleg65
Местный говорун
Местный говорун
 
Автор темы
Сообщений: 760
Стаж: 2 года 8 месяцев 6 дней
Откуда: г.Коломна Моск.обл.
Благодарил (а): 54 раз.
Поблагодарили: 178 раз.

Re: Слетел /home

Сообщение Oleg65 » 10 апр 2015, 10:57

Как и обещал, тем более есть время, - Scalpel и Foremost (близнецы братья). Зачем нужны: в отличии от testdisk они могут восстанавливать файлы с убитой ФС. Обязательные условия применения: программа и восстанавливаемые файлы находятся на разных разделах, причем сканируемый раздел отмонтирован!!! Папка для восстановленных файлов создается заранее и совершенно пуста. Т.е., в идеале, скидываем раздел, на котором надо восстановить файлы, на внешний носитель, подключаем его и не монтируем (а если примонтировался автоматом - umount в помощь). Программа установлена на компе. Создаем папку для восстановленных файлов (допустим /home/oleg/restore). Это общее для обоих программ. Как впрочем и конфиг файл у этих программ почти одинаков (часть его):
Код: выделить все
# Обратите внимание, что файл конфигурации прежде всего предназначен для
# поддержки форматов, которые не имеют встроенных функций извлечения. 
# Если формат является встроенным то просто запускаем foremost с
# -t <суффикс> и указываем формат, который хотим извлечь.
#
# Файл конфигурации используется для указания какие типы файлов прежде
# всего будут обнаружены. Пример файла конфигурации, foremost.conf, входит
# в этот дистрибутив. Для каждого типа файла, файл конфигурации описывает
# расширение файла, являются ли заголовок и нижняя часть  чувствительными к
# регистру, максимальный размер файла, и заголовок и нижнюю часть для файла.
# Поле нижней части является необязательным, но заголовок, размер,
# чувствительность к регистру и расширения  обязательны!
#
# Любая строка, которая начинается с '#' считается комментарием и игнорируется.
# Таким образом, чтобы пропустить тип файла, в начале этой строки просто
# поставьте'#'.
#

# Перед использованием декодируются заголовки и нижняя часть. Чтобы задать
# значение в шестнадцатеричном формате используйте \x[0-f][0-f], а для
# использования в восьмеричном \[0-3][0-7][0-7].  Пробелы могут быть
# представлены \s. Пример: «\x4F\123\I\sCCI» декодирует в «OSI CCI».
#
# Для совпадения любого  одного символа (как подстановочный знак)используется
# '?'. Если вам необходимо искать символ '?', то нужно будет изменить строку
# «wildcard»  "и" каждое появление старого символа в файле конфигурации. Не
# забывайте его шестнадцатеричное и восьмеричное значения! '?', эквивалентно,
# соответственно 0x3f и \063.
#
# Если вы хотите извлечь файлы без расширения введите значение «NONE» в колонку
# расширения (Примечание: значение этого флага «no suffix» можно изменить в
# настройке переменной FOREMOST_NOEXTENSION_SUFFIX в foremost.h и перекомпилировав).
#
# Параметр ASCII будет извлекать все печатаемые символы ASCII, до и после
# условного ключевого слова.
#
# Чтобы переопределить  символ подстановки "?", измените параметр ниже и
# все вхождения в файле formost.conf.
#
Отличие этих программ: в Scalpel необходимо явно в файле /etc/scalpel/scalpel.conf раскомментировать (убрать #) напротив восстанавливаемых файлов. Это же можно и Форемост, но Форемост (вот и отличие!) позволяет указывать восстанавливаемое расширение файла из командной строки. Например
Код: выделить все
# AOL ART files
#   art   y   150000   \x4a\x47\x04\x0e   \xcf\xc7\xcb
#  art   y    150000   \x4a\x47\x03\x0e   \xd0\xcb\x00\x00
- раскомментируем две строки с art. Восстанавливая большие файлы (больше, чем задан размер в конфигфайле) не забываем в нем изменять размер (иначе файл будет из нескольких кусков) . Ну, общее все. Scalpel в репозитории Убунты, Foremost -
Код: выделить все
sudo apt-get install foremost
.
Scalpel:
Код: выделить все
$ sudo scalpel /dev/sdХ -o  /home/oleg/restore
Помните, создавали папку? Опция -о указывает на выходной файл. Вот в принципе и все о Скальпеле: раскомментировали то что нужно в конфиге, запустили утилиту с указанием куда копировать.
Foremost: - необязательно раскомментировать нужное в конфиг файле.
Код: выделить все
foremost -v -T -t jpg -i /dev/sdХ -o /home/oleg/restore

Опции: -Т проставить время в названии директории для восстановленных файлов, -v выводить информацию о прогрессе во время сканирования, -t jpg, – искать и восстанавливать только файлы типа *jpg (можно перечислять несколько типов файлов через запятую),
-i /dev/sdХ - раздел носителя, с которого нужно провести восстановление данных, -о - то же, что и в Скальпеле - выходная директория.
PS: для восстановления файлов .dot в команде указываем ole (ну, на месте jpg), если нужно восстановить все файлы, указанные в конфиге, указываеи all.
Как бы и все о прогах. Напоминаю, все восстановленные файлы принадлежат администратору, поэтому и открываются с правами администратора, используйте chmod. И да, имена файлов номерные, нужный файл придется искать перелопачивая все ручками!!! :D
16 Гиговая флэшка сканировалась 2 часа. Так что проги - медленные!
Вот писал- писал, а про главное - забыл! Мулька этих прог не только в том, что они могут работать на убитых ФС, но и в их конфигфайле: Вы можете сами туда добавлять нужные Вам для восстановления расширения указывая размер и header (заголовок) в восьми- или шестнадцатеричном коде (суффикс). Footer - необязателен. (См. для примера, как написано в конфигфайле) ! Вот, это самое важное в этих прогах!!!!
Последний раз редактировалось Oleg65 10 апр 2015, 12:05, всего редактировалось 1 раз.
Аватар пользователя
Oleg65
Местный говорун
Местный говорун
 
Автор темы
Сообщений: 760
Стаж: 2 года 8 месяцев 6 дней
Откуда: г.Коломна Моск.обл.
Благодарил (а): 54 раз.
Поблагодарили: 178 раз.

След.

Вернуться в Решаем трудности вместе

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

cron