Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: IO Errors при перезагрузке Ubuntu 9.04 и 8.10 Live USB  (Прочитано 3682 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Magalex_2x14

  • Автор темы
  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
   Доброго времени суток! Заметил такую проблему с Ubuntu 9.04 Live USB Persistent:
Имеем флешку с двумя разделами: загрузочный fat32 и раздел casper-rw ext2. В принципе, все работает. Настройки сохраняются.
Но перед самым выключением или перезагрузкой компьютера на экран высыпают многочисленные buffer I/O errors на разделе sdb2 (это и есть ext2 раздел с меткой casper-rw)  и тут-же экран гаснет.
   Загрузился с другого дистрибутива и проверил этот раздел. e2fsck написал, что раздел был не правильно размонтирован.
Вывод e2fsck под спойлером.
(Нажмите, чтобы показать/скрыть)

Обсуждение такой ошибки на bugs.launchpad.net тут (английский).
Помогите, пожалуйста, разобраться. Сон совсем потерял... :-

P.S. Пробовал разные флешки. Пробовал разные утилиты для создания Ubuntu Live USB.
      Да, и с Ubuntu 8.10 та-же проблема...

Пользователь решил продолжить мысль [time]Sat May  2 22:06:44 2009[/time]:
   Прошу всех пользователей дистрибутивов Ubuntu Live persistent (и 8.10 и 9.04) обратить внимание на эту проблему.  Если перед завершением работы консоль с ошибками не появляется, то это еще ничего не значит. Для проверки надо запустить систему без опций quiet и splash.
   Неправильное размонтирование casper-rw может привести к потере данных...   
« Последнее редактирование: 04 Мая 2009, 16:41:42 от Magalex_2x14 »

Оффлайн Magalex_2x14

  • Автор темы
  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
  Ну вот нашлось более-менее внятное решение проблемы (под спойлером). Спасибо человеку по имени Steve Dodd с bugs.launchpad.net. Человек не поленился расписать мне, новичку, что да как...
  Правда, на английском. Если найдется человек, который толково переведет это на русский, то большое ему будет за это спасибо.

(Нажмите, чтобы показать/скрыть)

  Ну что могу сказать... Метод работает! Единственное, мне понадобилась установка пакета patch (sudo apt-get install patch).
  После применения патчей с последующей перезагрузкой в настольную систему и проверкой раздела casper-rw утилита e2fsck сообщила о том, что этот раздел был неправильно размонтирован, но ошибок не нашла.
  При последующих перезагрузках Live системы persistent работает, и все еще имеем две ошибки ввода-вывода при завершении работы, но при этом e2fsck сообщает, что c casper-rw все хорошо. Можно спать спокойно...  8)
 
  Проверено мной на Ubuntu Jaunty Live USB (созданном с помощью штатной убунтовской утилиты) с отдельным ext2-разделом casper-rw. Steve также сказал, что у него на Intrepid тоже все работает.
 Источник решения (LP bug: #125702)

P.S. Если кому надо, то позже смогу выложить патченый casper и initrd.gz
        (хотя, думаю, правильнее будет все-же сделать все самим на своей системе)
« Последнее редактирование: 05 Мая 2009, 11:05:04 от Magalex_2x14 »

Оффлайн Lemonadnый_Jo

  • Новичок
  • *
  • Сообщений: 33
    • Просмотр профиля
Re: IO Errors при перезагрузке Ubuntu 9.04 и 8.10 Live USB
« Ответ #2 : 17 Июля 2009, 17:29:47 »
Доброго времени !

 У меня ситуация с ошибками ввода/вывода на Live USB Linux Mint 7 (Ubuntu 9.04)  воспроизводится в процессе загрузки в Persistent режиме, а не при выходе из системы. Однако,  система все же загружается в Persistent режим, но уж ооочень долго ждать приходится. (Замечу, что с дистрибутивом 8.10 такой проблемы у меня не наблюдалось. Ну а в 8.04 известная похожая проблема, так же требующая замены/фикса initrd.gz)
 Попробую вышепреведенный патч patch, если поможет - отпишусь.



New:
Собственно под спойлерами предлагается пофиксить два файла. Первый - initrd.gz, который лежит в папке casper.
Его нужно скопиорвать с флэшки/диска/образа из этой папки в папку tmp,  и выполнить следующие команды (от имени root):

cd /tmp
gunzip initrd.gz
mkdir ird
cd ird
cpio -i <../initrd
patch scripts/casper <<'EOM'
diff -Nur casper-1.152.orig/scripts/casper casper-1.152/scripts/casper
--- casper-1.152.orig/scripts/casper 2008-10-25 23:46:45.000000000 +0100
+++ casper-1.152/scripts/casper 2009-04-03 00:57:25.000000000 +0100
@@ -396,6 +396,8 @@
     mount -t ${cow_fstype} -o ${cow_mountopt} ${cowdevice} /cow || panic "Can not mount $cowdevice on /cow"

     mount -t ${UNIONFS} -o noatime,dirs=/cow=rw:$rofsstring ${UNIONFS} "$rootmnt" || panic "${UNIONFS} mount failed"
+ [ -d "${rootmnt}/cow" ] || mkdir "${rootmnt}/cow"
+ mount /cow "${rootmnt}/cow" -o move

     # Adding other custom mounts
     if [ -n "${PERSISTENT}" ]; then
@@ -592,3 +594,5 @@
     exec 2>&7 7>&-
     cp casper.log "${rootmnt}/var/log/"
 }
+
+# vi:ts=4:et:
EOM
find | cpio -H newc -o >../newird
cd ..
gzip newird

Затем надо скопировать новоиспеченный файл newird.gz на флэшку в папку casper заменив им initrd.gz.

 Чтобы пропатчить второй файл - casper, который лежит в основной файловой системе,  надо загрузиться в вашу   live persistent   систему, и выполнить такие команды (от имени root):

patch /etc/init.d/casper <<'EOM'
diff -Nur casper-1.152.orig/debian/casper.init casper-1.152/debian/casper.init
--- casper-1.152.orig/debian/casper.init 2008-10-25 23:46:45.000000000 +0100
+++ casper-1.152/debian/casper.init 2009-04-10 14:49:09.000000000 +0100
@@ -75,6 +75,17 @@
  prompt=
     fi

+ # remount cow ro
+ OPTS=`grep '^aufs / aufs ' /proc/mounts | awk '{print $4}'`
+ if [ -n "$OPTS" ]; then
+ OPTS=`echo "$OPTS" | sed -e 's/xino=.*,/noxino,/' -e
+ 's/cow=rw/cow=ro/' -e 's/^rw/ro/'`
+ mount / -no remount,$OPTS
+ mount /cow -no remount,ro
+ sync # you'd think mount would do this ..
+ sleep 5 # could probably get away with less
+ fi
+
     for path in $(which halt) $(which reboot) /etc/rc?.d /etc/default $(which stty); do
         cache_path "$path"
     done
@@ -113,3 +124,5 @@
         exit 3
         ;;
 esac
+
+# vi:ts=4:et:
EOM

  Лично у меня после применения патчей проблема осталась  :-\
 Будем надеется в октябрьсом релизе разработчики вспомнят про нужды ливюэзбишнеков  :),
а пока что сделал на флэшке дуалбут на пару с Puppy ).
« Последнее редактирование: 17 Июля 2009, 20:55:44 от Lemonadnый_Jo »

 

Страница сгенерирована за 0.017 секунд. Запросов: 19.