Сообщение «Разреженный файл не разрешен» после установки в файловой системе btrfs

25

Я установил Ubuntu без создания раздела подкачки и с /помощью btrfs. # Теперь я получаю сообщение «Разреженный файл не разрешен» при каждой загрузке. Это сообщение появляется перед заставкой. Есть ли способ убить это предупреждение?

FUZxxl
источник
В моей системе нажатие любой клавиши ничего не делает, оно застряло!
Майкл
1
решение в 2016 году, чтобы набор GRUB_SAVEDEFAULT=falseв /etc/default/grub& Runupdate-grub
Стюарт Cardall

Ответы:

33

Ладно, после того, как я немного покопался, я нашел способ как-то избавиться от этой проблемы, по крайней мере, временно, это довольно просто, однако у меня нет настройки системы с помощью btrfs, поэтому я не могу подтвердить это исправление.

либо закомментируйте, либо удалите эту строку:

if [ -n ${have_grubenv} ]; then save_env recordfail; fi

или

if [ -n "\${have_grubenv}" ]; then if [ -z "\${boot_once}" ]; then save_env \
recordfail; fi; fi

в этом файле

/etc/grub.d/00_header

тогда беги

update-grub

Причина, по которой вы не редактируете /boot/grub/grub.cfgнапрямую, заключается в том, что он будет перезаписан при каждом обновлении grub, в этом случае вам нужно будет только «исправить» исправление, если обновлены общие пакеты grub.

Это ошибка на панели запуска, если вы хотите добавить себе ошибку # 736743

Цитируя Колина Уотсона из сообщения об ошибке

Это на самом деле вводящее в заблуждение сообщение об ошибке: в действительности реализация GRUB btrfs не реализует интерфейс перехвата чтения файлов для возврата блочных списков к вызывающему коду. Я писал об этом в grub-devel, и сопровождающий сказал, что даже в случае проблем с несколькими устройствами запись в btrfs из GRUB в корне рискованна, потому что:

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

Тем не менее, btrfs резервирует место в начале для загрузчика. Это пространство больше, чем нужно GRUB для встраивания, и поэтому мы можем использовать 1 КБ его для блока среды.

В любом случае, это не новая проблема, возникшая в результате использования подразделов, и она не препятствует загрузке (вы получаете ложное приглашение «Нажмите любую клавишу для продолжения», но если вы просто проигнорируете его, оно все равно загрузится). Понижение до списка желаний.

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

Аллан
источник
1
Можете ли вы найти объяснение того, почему он выкладывает эту ошибку для начала? Спасибо. :)
Jrg
В моем конфигурационном файле строка выглядит так:if [ -n "\${have_grubenv}" ]; then if [ -z "\${boot_once}" ]; then save_env recordfail; fi; fi
FUZxxl
1
Я бы закомментировал. Если он не загружается, вы все равно сможете раскомментировать строку с помощью живого диска
Аллан
Хорошо. Я собираюсь попробовать это.
FUZxxl
2
Хорошо, это работает!
FUZxxl
1

Я управляю всем отделом разработки Raring Ringtail.
У меня возникла та же проблема с разреженным файлом, не разрешенным сообщением. GRUB вообще не показывается и загружается прямо в Ubuntu.

Я читал Linux Magazine (LXF), в котором было несколько статей о восстановлении и восстановлении разделов, файлов, загрузчиков и других вещей.

Один из авторов статьи упомянул простой инструмент для использования ... Boot-Repair .
Этот инструмент помог мне и, по моему мнению, должен занять видное место в репозиториях Ubuntu.

Добавьте Boot-Repair в вашу систему:

  1. Откройте окно терминала и скопируйте / вставьте / введите следующее:

    sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update
    
  2. Скопируйте / вставьте / введите следующее для установки и запуска Boot-Repair:

    sudo apt-get install -y boot-repair && boot-repair
    
  3. Основной графический интерфейс Boot-Repair теперь виден.

    Click on a button called 'Recommended repair'.
    

    Пусть инструмент делает это «волшебство».

  4. Когда магическое заклинание заканчивается,

    create a little note of the url visible. 
    
  5. Перезагрузите систему и проверьте, есть ли у вас доступ к восстановленным операционным системам.

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

С Шильдер
источник
Я не думаю, что это помогает, так как это ошибка в самом grub.
FUZxxl
Почему вы так думаете? Я сделал несколько виртуальных установок 13.04, у всех была одна и та же проблема. Отредактировал grub.cfg, результатов нет. Это не решило сообщение «разреженный файл не разрешен» для меня вообще. GRUB даже не было видно. После того, как я попробовал решение, которое я представил в своем посте ранее сегодня, оно работало как шарм и до сих пор есть.
С Шильдер
К сожалению, не работает в 14.04 Trusty amd64
loser114491