10 простых способов восстановить вашу систему Linux

Файловые системы отвечают за организацию хранения данных. Так или иначе, со временем файловая система может быть повреждена и некоторые ее части могут быть недоступны. Если ваша файловая система имеет такое несоответствие, рекомендуется проверить ее целостность.

Файловые системы в операционной системе Linux. Базовые понятия

ОС Linux предоставляет выбор еще на стадии установки: в ядро системы встроены разные файловые системы (ФС). При этом пользователь должен выбрать ту, что отвечает его требованиям и задачам. Перед теми, кто использует Windows, такой вопрос не стоит — эту ОС можно установить только на NTFS. Отличается от Windows и иерархическое устройство самих ФС, и структура каталогов.

Linux поддерживает деление жесткого диска на разделы. Для подсчета и определения физических границ используется специальная таблица разделов — GPT или MBR. Она содержит метку и номер раздела, а также адреса физического расположения точек начала и конца раздела.

ответа

Также попробуйте:

-r /dev/sdXn 0 ответ дан gavenkoa 3 June 2015 в 17:34 поделиться

Попробуйте ввести следующую команду в терминале Linux:

sudo dosfsck -w -r -l -a -v -t /dev/sdc1

sdc1 — это обычно ваш флеш-накопитель. Вы можете найти свой флеш-накопитель, набрав mount в терминале. Это где-то внутри. Если эта команда занимает слишком много времени, избегайте переключателя -t .

  • -w означает немедленную запись на диск.
  • -r означает интерактивную проверку диска (спросить вас, что делать при возникновении ошибок). В более новых версиях dosfsck это значение по умолчанию.
  • -l означает перечисление обработанных имен файлов.
  • -a означает автоматическое исправление ошибок. Не используйте его, если хотите больше контролировать исправление возможных ошибок.
  • -v означает многословный режим. Создает немного больше продукции.
  • -t означает пометить нечитаемые кластеры как плохие.

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

0 ответ дан Giorgi Gzirishvili 3 June 2015 в 17:34 поделиться

Вы можете попробовать Dosfsck, который является компонентом dosfstools.

Для этого введите в терминале:

sudo apt-get install dosfstools

Чтобы использовать Dosfsck , вы должны указать желаемый адрес устройства (например, / dev / sdb1, / dev / sdb2 или другое устройство.).

Чтобы узнать адрес вашего устройства, откройте терминал (CTRL + ALT + T), затем выполните следующую команду:

mount

Если ваш раздел, например, / dev / sdb1, тогда сначала размонтируйте его, выполнив следующую команду:

sudo umount /dev/sdb1

Теперь вы можете проверить и восстановить раздел, выполнив следующую команду:

sudo dosfsck -t -a -w /dev/sdb1

Надеюсь, это поможет.

Примечание:

если вы получаете следующую ошибку, когда ваш USB-накопитель не распознается:

Error: Buffer I/O error on device sdb1

Запустите эту команду:

[ 115]

Если вывод:

end_request: I/O error, dev sdb1, sector 0 Buffer I/O error on device sdb1, logical block 0

Запустите эту команду:

sudo dosfsck -t -a /dev/sdb1

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

0 ответ дан Octávio Filipe Gonçalves 3 June 2015 в 17:34 поделиться

dosfsck cheatsheet

В этих примерах будут использоваться FAT32 и / dev / sdc1

-n /dev/sdc1 — простая неинтерактивная проверка только для чтения

Читайте также:  Браузер грузит процессор: Яндекс, Chrome, Mozilla, Opera (как решить)

[ 118] -a /dev/sdc1 — проверяет файловую систему и исправляет неинтерактивно. Наименее деструктивный подход всегда используется.

-r /dev/sdc1 — интерактивный ремонт. Пользователь всегда получает запрос, когда существует более одного подхода к решению проблемы.

-l -v -a -t /dev/sdc1 — очень подробный способ проверки и исправления файловой системы неинтерактивно. Параметр -t помечает нечитаемые кластеры как плохие, что делает их недоступными для вновь создаваемых файлов и каталогов.

0 ответ дан m3asmi 3 June 2015 в 17:34 поделиться

Основы работы с fsck

В этой статье мы рассмотрим ручную работу с fsck. Возможно, вам понадобиться LiveCD носитель, чтобы запустить из него утилиту, если корневой раздел поврежден. Если же нет, то система сможет загрузиться в режим восстановления и вы будете использовать утилиту оттуда. Также вы можете запустить fsck в уже загруженной системе. Только для работы нужны права суперпользователя, поэтому выполняйте ее через sudo.

А теперь давайте рассмотрим сам синтаксис утилиты:

$ fsck [опции] [опции_файловой_системы] [раздел_диска]

Основные опции указывают способ поведения утилиты, оболочки fsck. Раздел диска — это файл устройства раздела в каталоге /dev, например, /dev/sda1 или /dev/sda2. Опции файловой системы специфичны для каждой отдельной утилиты проверки.

А теперь давайте рассмотрим самые полезные опции fsck:

  • -l — не выполнять другой экземпляр fsck для этого жесткого диска, пока текущий не завершит работу. Для SSD параметр игнорируется;
  • -t — задать типы файловых систем, которые нужно проверить. Необязательно указывать устройство, можно проверить несколько разделов одной командой, просто указав нужный тип файловой системы. Это может быть сама файловая система, например, ext4 или ее опции в формате opts=ro. Утилита просматривает все файловые системы, подключенные в fstab. Если задать еще и раздел то к нему будет применена проверка именно указанного типа, без автоопределения;
  • -A — проверить все файловые системы из /etc/fstab. Вот тут применяются параметры проверки файловых систем, указанные в /etc/fstab, в том числе и приоритетность. В первую очередь проверяется корень. Обычно используется при старте системы;
  • -C — показать прогресс проверки файловой системы;
  • -M — не проверять, если файловая система смонтирована;
  • -N — ничего не выполнять, показать, что проверка завершена успешно;
  • -R — не проверять корневую файловую систему;
  • -T — не показывать информацию об утилите;
  • -V — максимально подробный вывод.

Это были глобальные опции утилиты. А теперь рассмотрим опции для работы с файловой системой, их меньше, но они будут более интересны:

  • -a — во время проверки исправить все обнаруженные ошибки, без каких-либо вопросов. Опция устаревшая и ее использовать не рекомендуется;
  • -n — выполнить только проверку файловой системы, ничего не исправлять;
  • -r — спрашивать перед исправлением каждой ошибки, используется по умолчанию для файловых систем ext;
  • -y — отвечает на все вопросы об исправлении ошибок утвердительно, можно сказать, что это эквивалент a.
  • -c — найти и занести в черный список все битые блоки на жестком диске. Доступно только для ext3 и ext4;
  • -f — принудительная проверка файловой системы, даже если по журналу она чистая;
  • -b — задать адрес суперблока, если основной был поврежден;
  • -p — еще один современный аналог опции -a, выполняет проверку и исправление автоматически. По сути, для этой цели можно использовать одну из трех опций: p, a, y.
Читайте также:  Как сделать виртуальную машину VirtualBox на весь экран

Теперь мы все разобрали и вы готовы выполнять восстановление файловой системы linux. Перейдем к делу.

Опции fsck

Команда Fsck должна быть запущена с привилегиями суперпользователя (root). Вы можете использовать ее с разными аргументами. Их использование зависит от вашего конкретного случая. Ниже вы увидите некоторые из наиболее важных опций:

-A — используется для проверки всех файловых систем. Список берется из /etc/fstab. -C — показывать индикатор выполнения. -l — блокирует устройство, чтобы гарантировать, что никакая другая программа не попытается использовать раздел во время проверки. -M — не проверять смонтированные файловые системы. -N — только показывать, что будет сделано — не делать никаких реальных изменений. -P — если вы хотите проверять файловые системы параллельно, включая корневую. -R — не проверять корневую файловую систему. Это полезно только вместе с ‘-A‘. -r — предоставить статистику для каждого проверяемого устройства. -T — не показывает заголовок. -t — исключительно указать типы файловых систем, которые будут проверяться. Типы могут быть разделены запятыми. -V — предоставить описание того, что делается.

Определение диска для проверки

Для того чтобы понять какой диск проверять нам достаточно ввести команду в консоли которая выдаст нам список всех имеющихся дисков в системе.

fdisk -l = вывод части команды = Диск /dev/sda: 232.9 GiB, 250059350016 байт, 488397168 секторов Единицы: секторов по 1 * 512 = 512 байт Размер сектора (логический/физический): 512 байт / 512 байт Размер I/O (минимальный/оптимальный): 512 байт / 512 байт Тип метки диска: dos Идентификатор диска: 0x42ef42ef Устр-во Загрузочный начало Конец Секторы Размер Идентификатор Тип /dev/sda1 * 2048 184322047 184320000 7 HPFS/NTFS/exFAT /dev/sda2 184322048 488394751 304072704 145G 7 HPFS/NTFS/exFAT

Мы видим в выводе диск который нам надо проверить. Диск имеет 2 раздела с данными.

Описание

fsck используется для проверки и, в случае необходимости, исправления ошибок одной или нескольких файловых систем. filesys может быть именем устройства (например, /dev/sda7), точкой монтирования этого блочного устройства (/, /mnt/sda7 и т. д.), меткой раздела или UUID-индексом. Обычно fsck параллельно проверяет данные на разных физических дисках, чтобы сократить общее время, необходимое для полной проверки всех дисков.

Если файловых систем не указано и не указана опция -A, то fsck по порядку проверит файловые системы, указанные в /etc/fstab. Это эквивалентно опции -As. Код, возвращаемый fsck, является суммой следующих условий:

Код, возвращаемый fsck при проверке нескольких файловых систем, получается с помощью применения побитовой операции ИЛИ к кодам, возвращаемым каждой проверкой.

Фактически fsck представляет собой оболочку для различных средств проверки файловой системы (). Программа для проверки конкретной системы ищется последовательно в /sbin, /etc/fs, /etc и в директориях, указанных в переменной окружения $PATH.

Описание

Утилита fsck в первом варианте вызова проверяет набор стандартных файловых систем, либо систем указанных в параметрах. Для этого она использует стандартный скрипт размещенный по адресу /etc/rc выполняя автоматическую перезагрузку. Используя вызов getfsent утилита считывает дескриптор файловой системы (filesystem descriptor) с целью определить какие файловые системы нуждаются в проверке. Будут проверены разделы имеющие параметры «rw», «rq», «ro» и те которые имеют ненулевой параметр прохождения. Файловые системы имеющие параметр прохождения 1 (стандартная корневая файловая система) будет проверена один раз.

Читайте также:  Как найти и исправить неработающие символические ссылки в Linux

Если будет получен сигнал QUIT, fsck завершит проверку системы и прекратит работу со статусом аварийного завершения. Это полезно если необходимо завершить проверку во время автоматической перезагрузке, но при этом не запускать многопользовательский режим.

Без параметра -p fsck проверяет и интерактивно восстанавливает несовместимые условия для файловых систем. Некоторые из данных действий по восстановлению могут привести к потери части данных. Объем потерь можно увидеть в диагностическом выводе. Если у пользователя нет прав на запись в файловой системе утилита автоматически будет выполнение с параметром -n.

Cronopete

Если TimeShift прост, Cronopete еще проще, по крайней мере, с точки зрения внешнего вида. Он называет себя клоном Time Machine для OS X

и работает немного иначе, чем TimeShift. Cronopete предлагает пакеты для Ubuntu, Debian и Fedora, а пользователи Arch Linux могут найти его в AUR.

Как это устроено

В отличие от других приложений в этом списке, Cronopete объединяет парадигмы резервного копирования и моментальных снимков и заставляет вас сохранять моментальные снимки на внешнем устройстве. По умолчанию он проверяет ваши файлы на предмет изменений каждый час, но вы можете изменить интервал в диалоговом окне конфигурации. Если файл не изменился, Cronopete будет только жестко ссылаться на него, а не копировать файл, что поможет сэкономить место на диске.

Восстановление файлов, пожалуй, самая крутая вещь в Cronopete. Это позволяет вам «прокручивать время»; то есть визуально просматривайте все сохраненные версии ваших файлов и папок. Чтобы восстановить файлы, просто выберите их и нажмите Восстановить. Они будут скопированы с внешнего диска на вашу текущую систему. Как вы, вероятно, можете сделать вывод, Cronopete не очень удобен для полного восстановления системы, но это отличный выбор, если вы хотите сохранить несколько версий отдельных файлов.

Удален главный суперблок

Итак, во втором тесте мы удалили «Главный суперблок».

Суперблок — это область в котором хранятся метаданные файловой системы.

Аналогично тому, как inod-ы хранят метаданные о файлах, суперблок хранит метаданные о файловой системе. Если вдруг суперблок поврежден, то невозможно будет смонтировать раздел.

В суперблоке хранятся следующие данные:

  • Количество блоков в файловой системе
  • Количество свободных блоков
  • Количество i-нод в блоковой группе
  • Блоки в блоковой группе
  • Количество запусков со времени последней проверки fsck
  • UUID
  • Состояние(была ли корректно размонтирована, обнаруженые ошибки и т.д.)
  • Тип файловой системы
  • ОС в которой была отформатирован данный раздел
  • Время последнего монтирования
  • Время последней записи.

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

Алгоритм поиска нашей программы позволяет без труда восстановить данные даже с поврежденной структурой файловой системы.

Hetman Partition Recovery позволяет проанализировать дисковое пространство с помощью поиска по сигнатурам. Анализируя поверхность диска сектор за сектором, приложение находит определенные последовательности байт, минуя утерянные элементы цепочки и отображает данные пользователю. Даже если затерта вся структура файловой системы, но остались каталоги нулевого уровня, это не станет проблемой и Hetman Partition Recovery восстановит данные.

Теперь посмотрим, как это выполняется на практике.