Tooprogram.ru

Компьютерный справочник
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Ошибка отключения файловой системы ubuntu

Операционная система Ubuntu

Блог о современной полнофункциональной операционной системе, основанной на ядре Linux

28 ноября 2015

Как исправить ошибку в системной программе Ubuntu?

Более полугода, установленная операционная система Ubuntu, работала без сбоев, но, однажды, после загрузки стало появляться сообщение об обнаружении ошибки в системной программе. Перестали обновляться приложения. Как же узнать детали такой ошибки, определить её причины, последствия и благополучно исправить?

После загрузки компьютера, на панели рабочей среды Xfce стала отображаться иконка с изображением красного круга и белого прямоугольника внутри, при нажатии на которую всплывает сообщение:

Для исправления ошибки предлагается запустить менеджер пакетов из меню Система — Администрирование. Также, сообщается, что ошибка кроется в открытии временных файлов и, обычно, это означает наличие неразрешённых зависимостей в установленных пакетах. Данное сообщение, вероятно, посылает программа управления обновлениями и репозиториями software-properties-gtk, которая запускается щелчком по иконке «Параметры».

При попытке найти дополнительные драйверы происходит ошибка. В заголовке (Title) ошибки написано, что software-properties-gtk закрылся из-за системной ошибки E: списки пакетов или файл состояния не могут быть открыты или прочитаны (E:The package lists or status file could not be parsed or opened).

Также, программа Update-manager, с помощью которой можно проверить наличие доступных обновлений приложений, расположенная в меню Система — Обновление приложений, закрывается из-за ошибки.

В выделенном заголовке ошибки написано, что update-manager, точно также как и software-properties-gtk закрылся из-за системной ошибки E: списки пакетов или файл состояния не могут быть открыты или прочитаны (E:The package lists or status file could not be parsed or opened).

В целом, несмотря на ошибку, операционная система работает, но без возможности обновления программного обеспечения. Нет доступа к Центру приложений Ubuntu, который, сразу после запуска, закрывается.

Для исправления ошибки, попробую запустить менеджер пакетов Synaptic, который можно открыть щелчком по меню «Запустить менеджер пакетов» в нашем изначальном сообщение об обнаружении ошибки в системной программе.

Запустить Synaptic не удалось, из-за ошибки:

E: Encountered a section with no Package: header
E: Problem with MergeList /var/lib/apt/lists/
ua.archive.ubuntu.com_ubuntu_dists_trusty_main_i18n_Translation-ru%5fRU
E: Невозможно открыть или обработать файл состояния или списки пакетов.
E: _cache->open() failed, please report.

В терминале, при введении указанной в сообщении об ошибке команды

выдаёт аналогичную ошибку:

Как исправить ошибку в системной программе и восстановить возможность обновления Ubuntu?

Для исправления ошибки

E: Encountered a section with no Package: header
E: Problem with MergeList /var/lib/apt/lists/
ua.archive.ubuntu.com_ubuntu_dists_trusty_main_i18n_Translation-ru%5fRU

удалил проблемный файл, выполнив в терминале команду
sudo rm /var/lib/apt/lists/ua.archive.ubuntu.com_ubuntu_dists_trusty_main_i18n_Translation-ru%5fRU

После удаления данного файла и перезагрузки системы, вновь появилось сообщение об ошибке в системной программе, но Центр приложений Ubuntu, менеджер пакетов Synaptic программа обновления приложений Update-manager и программа управления обновлениями и репозиториями software-properties-gtk запускаются и функционируют. Далее, с помощью утилиты Ubuntu Tweak удалил ненужные пакеты, ядра и очистил кэш. После перезагрузки системы, появилось всё тоже окно с сообщением об ошибке в системной программе. Обновив программное обеспечение компьютера с помощью менеджера обновления приложений update-manager и снова перезагрузив систему, окна с сообщением об ошибке уже небыло.

Ремонт файловой системы в Убунту

Пришлось и мне столкнуться с данной проблемой. Мой один товарищ, у которого установлена Убунту на старенький ноутбук ASUS, и который просто не хочет хоть иногда включать мозги, обратился ко мне с такой проблемой. На его ноуте установлена новая Убунту 12.10 и очень часто система просто не хочет грузиться, выбрасывая в черный экран, либо застывая на фиолетовом фоне. А вот в последнее время начало выскакивать такое вот сообщение, что-то типа «Операционная система не смогла загрузиться. Выберите для дальнейших действий нужную клавишу…» И дальше идет описание, что нужно нажать. Я уже точно не помню, какие клавиши предлагает нажать система, но смысл такой, что для автоматического исправления ошибок нажмите такую-то клавишу, для ручной отладки другую, и чтобы игнорировать это сообщение предлагается нажать третью кнопку. Автоматическое исправление ошибок ни к чему не приводило и загрузка операционной системы так и не доходила до логического завершения. Вот и решил я попробовать знаменитую команду fsck.

Для начала нужно загрузиться либо с загрузочной флешки с Ubuntu (Lubuntu, Xubuntu, Kubuntu и т.д.), либо с диска Ubuntu Live CD. Теперь нам нужно узнать, какой именно раздел с Убунту нам нужно просканировать для исправления файловой системы. Запускаем Терминал (Ctrl-Alt-T) и выполняем команду:

Читать еще:  Ошибка sql 42000

sudo fdisk -l

Данная команда покажет нам все диски, флешки, которые примонтированы к системе. Я приведу пример с моим личным компьютером, а не с ноутбуком приятеля. Вот, что вышло у меня:

Disk /dev/sda: 640.1 GB , 640135028736 bytes
255 heads, 63 sectors/track, 77825 cylinders, total 1250263728 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 identifier: 0x0009d6f7

Device Boot Start End Blocks Id System
/dev/sda1 * 2048 61442047 30720000 83 Linux
/dev/sda2 61442048 73730031 6143992 82 Linux swap / Solaris
/dev/sda3 73730048 1250263039 588266496 83 Linux

Disk /dev/sdb: 500.1 GB , 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders, total 976773168 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 identifier: 0xb9ff6f01

Device Boot Start End Blocks Id System
/dev/sdb1 * 16065 100197404 50090670 83 Linux
/dev/sdb2 105322201 976771071 435724435+ 5 Extended
/dev/sdb3 100197405 105322139 2562367+ 82 Linux swap / Solaris
/dev/sdb5 105322203 832110591 363394194+ 7 HPFS/NTFS/exFAT
/dev/sdb6 832112640 860755218 14321289+ 83 Linux
/dev/sdb7 860758016 862613503 927744 82 Linux swap / Solaris
/dev/sdb8 862615552 976771071 57077760 83 Linux

Partition table entries are not in disk order

Disk /dev/sdc: 8115 MB , 8115978240 bytes
250 heads, 62 sectors/track, 1022 cylinders, total 15851520 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 identifier: 0xc3072e18

Device Boot Start End Blocks Id System
/dev/sdc1 * 32 15847625 7923797 b W95 FAT32

Как видно из вывода команды sudo fdisk -l, у меня имеются 2 жестких диска (sda)640 Гб и (sdb)500 Гб, а также флешка (sdc)8Гб, с которой я собственно и загружался. Я знаю, что моя основаня система с Убунту 12.04 находится на диске sda, а раздел с операционной системой соответственно называется sda1.

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

sudo fsck -y -f -c /dev/sda1

если увидете ошибку, то скорее всего нужно отмонтировать данный раздел:

sudo umount /dev/sda1

Ключи и параметры команды fsck:

y — всегда отвечать yes на все вопросы (имеется альтернатива: ключ p — начинает проверку в полностью автоматическом режиме);

f — принудительная проверка файловой системы (даже если файловая система помечена как полностью работоспособная)

c — ищет битые блоки (bad blocks), а после отмечает их соответствующим образом

/dev/sda1 — устройство или раздел, которые нужно проверить. Хотя команда может иметь и другой вид. Например:

sudo fsck -p /dev/sda1

В данном случае добавлен только ключ -p. Вы просто почитайте о всех ключах команды fsck и добавляйте именно нужные вам ключи. Чтобы узнать о всех возможностях программы введите в Терминале:

man fsck

Вот, что выдал Терминал после проверки:

$ sudo fsck -y -f -c /dev/sda1
fsck from util-linux 2.20.1
e2fsck 1.42.5 (29-Jul-2012)
Checking for bad blocks (read-only test): 0.00% done, 0:00 elapsed. (0/0/0 errdone
/dev/sda1: Updating bad block inode.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information

/dev/sda1: ***** FILE SYSTEM WAS MODIFIED *****
/dev/sda1: 372991/1921360 files (0.2% non-contiguous), 2539924/7680000 blocks

***** FILE SYSTEM WAS MODIFIED ***** Это системное сообщение говорит, что текущая файловая система модифицировалась программой fsck.

Не знаю, совпадение или нет, но после данной проверки ноутбука командой fsck, операционная система на ноутбуке приятеля стал загружаться, перезагружаться нормально.

Исправление ошибки «Файловая система доступна только для чтения» в Linux

Способ 1: Настройка прав доступа

Первый способ исправления ошибки «Файловая система доступна только для чтения» в Linux заключается в проверке прав доступа. Иногда пользователь случайно или намерено устанавливает ограничения, которые распространяются и на других юзеров. Для начала предлагаем проверить атрибуты, а затем внести изменения, если это требуется.

    Запустите консоль удобным для вас методом. Для этого можно использовать соответствующий значок в меню приложений или горячую клавишу Ctrl + Alt + T.

Здесь введите команду ls -l , чтобы просмотреть весь список дисков с подробной информацией, среди которой будет находиться и необходимая нам.

Читать еще:  Java setup что это

Если проблема действительно связана с указанными атрибутами, придется перенастроить права. Введите команду sudo chown -R [user]:[user] /home/[user] , заменив user на имя нужного пользователя, к которому и будут применены все изменения.

Данное действие осуществляется с опцией sudo, поэтому ее придется подтвердить, указав в новой строке пароль суперпользователя.

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

Способ 2: Исправление ошибок через GParted

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

    Если GParted по умолчанию отсутствует в вашем дистрибутиве, установите ее с помощью команды sudo apt-get install gparted . Подтвердите это действие, введя пароль суперпользователя и одобрив скачивание архивов.

После этого утилиту проще всего запустить, нажав на соответствующий значок в меню приложений.

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

В контекстном меню нажмите на «Проверить на ошибки».

Запустите выполнение операций, щелкнув на кнопку в виде галочки, которая расположена на верхней панели.

Подтвердите запуск проверки.

Осталось только дождаться завершения этого процесса.

Если какие-то неполадки будут найдены и исправлены, вы получите соответствующее уведомление. По окончании проверки следует перезагрузить ПК, чтобы при начале следующего сеанса сразу проверить эффективность выполненных действий. Если они не принесли никакого результата, переходите далее.

Способ 3: Исправление поврежденных блоков

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

    Для начала просмотрим список дисков, чтобы понять, какой из них следует проверять. Осуществляется это через команду fdisk -l .

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

Теперь используйте команду hdparm -i /dev/sda2 | grep Model , чтобы проверить выбранный носитель или логический диск. Здесь замените /dev/sda2 на определенное ранее название.

После этого следует отмонтировать диск, чтобы в дальнейшем запустить проверку блоков. Осуществляется это через строку umount /dev/sda2 .

Запустите проверку, вставив команду badblocks -s /dev/sda2 > /root/badblock .

Обнаруженные блоки, которые не подлежат исправлению, требуется отметить, чтобы система перестала их задействовать. Для этого используйте e2fsck -l /root/badblock /dev/sda2 .

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

Способ 4: Форматирование накопителя

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

Сегодня мы разобрали четыре метода исправления неполадки «Файловая система доступна только для чтения». Осталось найти подходящий только путем перебора, выполняя по порядку все приведенные инструкции. В большинстве случаев хотя бы один из них оказывается действенным и позволяет полностью устранить рассмотренную ошибку.

Отблагодарите автора, поделитесь статьей в социальных сетях.

Использование утилиты fsck для исправления ошибок файловой системы в Linux

Оригинал: How to Use ‘fsck’ to Repair File System Errors in Linux
Автор: Marin Todorov
Дата публикации: 1 октября 2018 года
Перевод: А. Кривошей
Дата перевода: июль 2019 г.

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

Читать еще:  Javascript error cannot read property

Это можно выполнить с помощью системной утилиты fsck (file system consistency check). Эта проверка может быть выполнена автоматически во время загрузки или запущена вручную.

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

Когда нужно использовать fsck в Linux

Существуют разные сценарии, когда вам понадобится запустить fsck. Вот несколько примеров:

Система не загружается.
Файлы в системе поврежденны (часто вы можете увидеть ошибку ввода/вывода).
Подключенный диск (включая флэшки/SD-карты) не работает должным образом.

Опции fsck

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

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

Как запустить fsck для исправления ошибок файловой системы Linux

Чтобы запустить fsck, вам нужно убедиться, что раздел, который вы собираетесь проверить, не смонтирован. Для этой статьи я буду использовать мой второй диск /dev/sdb, смонтированный в /mnt.

Вот что произойдет, если я попытаюсь запустить fsck на смонтированном разделе.

Чтобы избежать этого, размонтируйте раздел с помощью команды:

Теперь fsck можно запустить безопасно.

Понимание кодов выхода fsck

После запуска fsck она вернет код выхода. Эти коды можно увидеть в руководстве fsck, выполнив:

Исправление ошибок файловой системы Linux

Иногда в файловой системе можно найти ошибки. В таких случаях вы захотите, чтобы fsck автоматически пыталась исправить ошибки. Это можно сделать с помощью следующей команды:

Флаг -y автоматически даёт ответ «да» на любые запросы от fsck для исправления ошибок.

Точно так же вы можете запустить команду на всех файловых системах (без корневой):

Как запустить fsck в корневом разделе Linux

В некоторых случаях вам может потребоваться запустить fsck в корневом разделе вашей системы. Поскольку вы не можете запустить fsck на смонтированном разделе, вы можете попробовать один из следующих вариантов:

1. Принудительно использовать fsck при загрузке системы
2. Запустить fsck в режиме восстановления

Мы рассмотрим обе ситуации.

Принудительная проверка корневой файловой системы с помощью fsck при загрузке системы

Это относительно легко выполнить, единственное, что вам нужно сделать, это создать файл с именем forcefsck в корневом разделе вашей системы. Используйте следующую команду:

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

После загрузки системы проверьте, существует ли этот файл:

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

Запуск fsck в режиме восстановления

Запуск fsck в режиме восстановления требует еще нескольких шагов. Сначала подготовьте систему к перезагрузке. Остановите все важные службы, такие как MySQL/MariaDB и т. д., а затем перезагрузите компьютер.

Во время загрузки удерживайте нажатой клавишу Shift, чтобы отобразилось меню grub. Выберите «Advanced options».

Затем выберите «Recovery mode».

В следующем меню выберите «fsck».

Вас спросят, хотите ли вы перемонтировать вашу корневую файловую систему. Выберите «yes».

Вы должны увидеть что-то похожее на это.

Затем вы можете вернуться к нормальной загрузке, выбрав «Resume».

Заключение

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

Ссылка на основную публикацию
Adblock
detector