Пользовательского поиска
Воскресенье, 24.11.2024, 03:26
Приветствую Вас Гость | RSS
Главная | Dr.Web Live USB и GRUB - Страница 12 - Форум | Регистрация | Вход
Меню Проекта
Форма входа
Мы Рекомендуем:
Мнение Общественности
Какой объем должна занимать Мультизагрузочная флешка?
1. 8Gb
2. 4 gb
3. 16 Gb
4. 32 Gb
5. 2 Gb
6. 1 gb
7. 512 Mb
Всего ответов: 6156
Статистика
GreenFlash
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Модератор форума: Sh1td0wn, asdqqww  
Dr.Web Live USB и GRUB
userforspamДата: Четверг, 26.01.2012, 14:13 | Сообщение # 166
Неизвестный
Группа: Пользователи
Сообщений: 6
Репутация: 0
Статус: Отсутствует
title Dr.Web LiveCD Normal Mode
kernel /boot/vmlinuz root=/dev/ram0 init=/linuxrc init_opts=4 quiet dokeymap looptype=squashfs loop=/boot/module/white.mo usbroot=/dev/sd[a-z][0-9] slowusb vga=791 splash=silent,theme:drweb CONSOLE=/dev/tty1 SDELAY=12 USBWAIT=15 ID=lakNf2N9VsEzDeA4
initrd /boot/initrd

title Dr.Web LiveCD Safe Mode
kernel /boot/vmlinuz root=/dev/ram0 init=/linuxrc init_opts=3 quiet dokeymap looptype=squashfs loop=/boot/module/white.mo usbroot=/dev/sd[a-z][0-9] slowusb CONSOLE=/dev/tty1 SDELAY=12 USBWAIT=15 ID=lakNf2N9VsEzDeA4
initrd /boot/initrd

почему у меня не работает графический режим?
 
hunter64Дата: Четверг, 26.01.2012, 18:21 | Сообщение # 167
Неизвестный
Группа: Пользователи
Сообщений: 5
Репутация: 0
Статус: Отсутствует
Блин, всю ветку прочитал, никто так и не обратил внимание
на то что в версии: 6.x.x - уже давно не используются опции:
looptype=squashfs
loop=/boot/module/white.mo
Все продолжают дружно копировать старые конфиги. sad

Вот что реально необходимо:

----==== File: "/sr/drweb/0600/menu.lst" - beg: ====----
default 0
timeout 16

title DrWeb 0600 (DWB+GUI, FrameBuffer Vga=791)
kernel /sr/drweb/0600/vmlinuz root=/dev/ram0 vga=791 ID=flashdrive init=/linuxrc init_opts=4 splash=silent,theme:drweb CONSOLE=/dev/tty1
initrd /sr/drweb/0600/initrd

title DrWeb 0600 (DWB+CLI, FrameBuffer Vga=791)
kernel /sr/drweb/0600/vmlinuz root=/dev/ram0 vga=791 ID=flashdrive init=/linuxrc init_opts=3 CONSOLE=/dev/tty1
initrd /sr/drweb/0600/initrd
----==== File: "/sr/drweb/0600/menu.lst" - end: ====----

Ессно, заменяем на свои данные:
1. папка где лежит ядро: /sr/drweb/0600/ - любая!
2. ключ: ID=flashdrive - который должен быть равен ключу:
BOOT_ID=flashdrive - находящемуся в файле: /boot/config

Ессно, сохраняем расположение:
3. папка баз данных: /boot/module/ - фиксирована!!!!!!!!!!

Список файлов:

Содержимое папки M:\boot

26.01.2012 13:05 99 config
26.01.2012 16:02 <DIR> module

Содержимое папки M:\boot\module

15.01.2012 23:01 73,302,016 drweb_bases.dwm
19.12.2011 15:16 5,074,944 flash.dwm
19.12.2011 15:17 98,484,224 _white.dwm

Содержимое папки M:\sr\drweb\0600

26.01.2012 12:00 828 menu.lst
19.12.2011 15:16 3,325,952 initrd
19.12.2011 15:16 2,786,672 vmlinuz

P.S. Папка баз данных: /boot/module/ - фиксирована сейчас,
но есть мысли отвязать ее от константы и сделать назначаемой
через аргумент коммандной строки, но только при условии что
модули сборки используют ее только из переменной: $MODULES
В противном случае, если в сборке используется константа,
то это все - не имеет смысла.
Пока анализирую скрипты...


Сообщение отредактировал hunter64 - Четверг, 26.01.2012, 18:25
 
userforspamДата: Воскресенье, 29.01.2012, 13:44 | Сообщение # 168
Неизвестный
Группа: Пользователи
Сообщений: 6
Репутация: 0
Статус: Отсутствует
народ может в жопу этот dr web? на чистой флешке он не запукается. в техподдержке толком ничего не говорят. только с диска он адекватно работает. но с диска не ризон. хотя бы потому что базы не обновишь. а менять диски тоже не удобно. может касперский лучше?
 
Sphinx114Дата: Суббота, 11.02.2012, 01:24 | Сообщение # 169
Экспериментатор
Группа: Пользователи
Сообщений: 128
Репутация: 17
Статус: Отсутствует
У меня базы нормально обновляются и сохраняются (снапшотом пользуюсь).

А как сделать чтобы по умолчанию в докторе загружался русский язык? Что означает CONSOLE=/dev/tty1? Где можно найти список допустимых параметров ядра для доктора (для каспера тоже желательно) и их сакральный смысл?
 
Sh1td0wnДата: Суббота, 11.02.2012, 17:27 | Сообщение # 170
Программист
Группа: Модераторы
Сообщений: 3829
Репутация: 210
Статус: Отсутствует
> Что означает CONSOLE=/dev/tty1?
Какой-то из сервисов, из которых состоит DrWeb, читает этот параметр и общается с консолью на первом виртуальном терминале.

> Где можно найти список допустимых параметров ядра для доктора
Либо в официальной документации, либо в документации используемого для сборки дистрибутива (Gentoo), либо в документации ядра (для специфичных для ядра параметров), либо самостоятельно по результату прочтения загрузочных скриптов.


НАЖМИ МЕНЯ, прежде чем что-либо написать
 
userforspamДата: Суббота, 18.02.2012, 15:56 | Сообщение # 171
Неизвестный
Группа: Пользователи
Сообщений: 6
Репутация: 0
Статус: Отсутствует
ничего не помогает.графика не загружается с флешки
 
ShadowNevДата: Вторник, 21.02.2012, 09:12 | Сообщение # 172
Неизвестный
Группа: Пользователи
Сообщений: 1
Репутация: 0
Статус: Отсутствует
userforspam
На этой странице господин hunter64 описал 100% рабочий метод, я сам, независимо от него поднял таким же способом Dr.WEB на своей мульти-флешке.
 
OrestikДата: Вторник, 21.02.2012, 12:19 | Сообщение # 173
Экспериментатор
Группа: Пользователи
Сообщений: 41
Репутация: 1
Статус: Отсутствует
подтверждаю выше написанное, все грузится и работает.... Вот мой код для наглядности:

title Dr.Web LiveCD
kernel /boot/0600/vmlinuz root=/dev/ram0 vga=791 ID=AJBt0xHNGqJPlroG init=/linuxrc init_opts=4 splash=silent,theme:drweb CONSOLE=/dev/tty1
initrd /boot/0600/initrd
 
Sh1td0wnДата: Вторник, 21.02.2012, 21:59 | Сообщение # 174
Программист
Группа: Модераторы
Сообщений: 3829
Репутация: 210
Статус: Отсутствует
Просто у человека неподдерживаемая видеокарта. Нужно обратиться в техподдержку DrWeb'а, там пришлют исправленный xorg.conf и инструкции, как его протестировать.

НАЖМИ МЕНЯ, прежде чем что-либо написать
 
userforspamДата: Среда, 22.02.2012, 15:16 | Сообщение # 175
Неизвестный
Группа: Пользователи
Сообщений: 6
Репутация: 0
Статус: Отсутствует
Sh1td0wn, писал уже. ничего не помогает
 
yoda832Дата: Четверг, 12.04.2012, 22:00 | Сообщение # 176
Неизвестный
Группа: Проверенные
Сообщений: 15
Репутация: 12
Статус: Отсутствует
Люди если у вас есть установщик дрв лайв юсб то ошибка cannot find идёт изза
того что установщик изменяет исходный код initrd.gz
можно попытаться запустить прогу заново шанса избежать ошибки 85%
 
b0sДата: Четверг, 19.04.2012, 01:00 | Сообщение # 177
Ищущий
Группа: Пользователи
Сообщений: 22
Репутация: 0
Статус: Отсутствует
Sh1td0wn
Здравствуйте! Честно говоря, как и наверное многие участники данного и многих других форумов, я замучился. Я вот просто не могу понять, что за "хрень" с этим поиском загрузочного устройства. Я уже вторую неделю мучаюсь совершая разные попытки компоновки и загрузки с флешки KRD и DrWeb. Я ну вот просто не понимаю, ну как так может быть, что один и тот же сценарий, в initrd на одной и той же машине, то работает то не работает, если он вообще не меняется... Ну кааак?

Я сделал диск с которого загружался и KRD и Cure IT, решил обновить базы Kaspersky, и всё перестало работать.

Вот уже который час, сижу как дурак и учусь разбирать загрузочный сценарий init и find_root. В частности у меня просьба-вопрос. Объясните мне пожалуйста, как вот полному идиоту, как работает данный сценарий, и вообще зачем его придумали?

Code

delay() {
   DELAY=${1}
   DEV=${2}
   while [ "x$(ls -x /dev/[hs]d[a-z]* /dev/[hs][rg][0-9]* /dev/cd* 2>/dev/null)" = "x${DEV}" ]
    do
     if [ ${DELAY} -eq 0 ]
      then
       return 0
      fi
     sleep 1
     DELAY=$(expr ${DELAY} - 1)
  done
  return 1
}

if ! delay ${SDELAY}
then
   unset MODULES
   eval $(/sbin/find_root)
   while [ "x${MODULES}" = "x" ]
   do
  if delay ${SDELAY} "$(ls -x /dev/[hs]d[a-z]* /dev/[hs][rg][0-9]* /dev/cd* 2>/dev/null)"
  then  
   break
         fi  
  eval $(/sbin/find_root)
   done
fi


К сожалению не могу найти описания данного языка, так как к сожалению, Google не выдал мне полезной информации по вариациям ключевых слов тегам включая BusyBox Eval if fi ls. Что здесь за язык используется? Вообще не могу понять как данный сценарий работает? И зачем она. Конечно разработчики умные люди, они наверняка не просто так этот сценарий написали, но я вот установил SDELAY=600, DEBUG=1, смотрю экран компьютера и ну вот хоть убейте не могу понять как работает.

Есть один большущий плюс от SDELAY = 600, за это время можно пару тройку раз вытащить и вставить флешку, и загрузка продолжается, то есть сценарий почему то её обнаруживает. Это к сожалению всё что мне удалось разобрать.. Как работает в данном случае команда ls с параметром -x и опять же зачем тут программа которая всего лишь отображает текст который указывается в её пораметрах?

Простите Sh1td0wn, если мои вопросы являются нарочитыми или массивными. Я бы очень хотел разобраться. Также хотел бы вас попросить дать ссылку на ядро которое вы перекомпилировали.
 
Sh1td0wnДата: Четверг, 19.04.2012, 01:54 | Сообщение # 178
Программист
Группа: Модераторы
Сообщений: 3829
Репутация: 210
Статус: Отсутствует
> как работает данный сценарий
Сложно. Хочется сказать "криво". Может быть, это и не так, но логика здесь явно инопланетная.

> вообще зачем его придумали?
Не знаю. Если логику find_root ещё можно как-то объяснить, то причины написания этого уже мало понятны.

> К сожалению не могу найти описания данного языка
Там первой строкой должно идти "#!/bin/sh". Это отличное ключевое слово для Google.
Эта программа написана на языке POSIX shell (ключевые слова: sh ash posix shell).

Логика функции delay примерно такова:
1) Ждать по 1-й секунде, не появилось ли новых устройств (сравнивает новые данные со старыми, переданными аргументом).
2) Если новых нет, завершиться с кодом 0.
3) Если появилось новое устройство, завершиться с кодом 1.

Флаг -x ("Выдавать список файлов в многоколоночном режиме, с сортировкой по горизонтали", взято из man ls) заставляет писать полный список файлов в одну строку (а не в один столбец, как ls это делает обычно, когда stdout не подсоиденён к терминалу).

Цикл, проверяющий вывод delay, запускает find_root в случае, если delay нашёл новое устройство, и смотрит, нашёл ли тот модули.

И я не перекомпилировал никакого ядра.


НАЖМИ МЕНЯ, прежде чем что-либо написать
 
b0sДата: Четверг, 19.04.2012, 02:13 | Сообщение # 179
Ищущий
Группа: Пользователи
Сообщений: 22
Репутация: 0
Статус: Отсутствует
Sh1td0wn, спасибо за ваш быстрый ответ!
Я примерно представляю, чем является POSIX Shell, но предполагал, что сценарий написан на языке Python.

Возникает вопрос. Который наверное и у вас возникал? Не знайте ли вы или не удалось ли вам приблизится к осознанию причины того, почему или из-за чего, или за что в конце концов, на одной и той же машине срабатывает лишь одна загрузка из какого-то случайного кол-ва загрузок?
Моя ситуация в общем такая же как и у Apal0n. Я проделал все действия что вы советовали ему, и точно также обнаружил, что во время загрузки по неизвестной мистической для меня причине, сценарий, даже при существовании и обнаружении флешки, не признаёт её как источник на котором есть папка Modules, но если же сразу после появления BusyBox ввести exec ash -x /init или даже просто exec /init у меня загрузка происходит и вполне успешно.

Простите, если я неверно выразился. Кажется в какой-то момент, на данном форуме вы предлагали свою версию initrd, я назвал это ядром, хотя наверное это не ядро. Не могли бы вы дать на него ссылку? Если конечно я ничего не путаю. А также хотелось бы узнать, можно ли как-то, этот странный сценарий заменить на более эффективный? И есть ли вообще вариант более эффективного сценария? Ну ведь наверное нет таких "исправных" устройств, которым, надо было бы больше минуты на инициализацию? Можно было бы написать сценарий который ждал бы минуту, и затем проводил загрузку, произведя один единственный поиск по всем устройствам. Не пойму... зачем сравнения изменённого списка устройств? Зачем все эти секунды, минуты, когда устройство есть в списке и оно а значит к нему можно обратиться, например через минуту, на ряду с другими устройствами?


Сообщение отредактировал b0s - Четверг, 19.04.2012, 02:17
 
Sh1td0wnДата: Четверг, 19.04.2012, 02:28 | Сообщение # 180
Программист
Группа: Модераторы
Сообщений: 3829
Репутация: 210
Статус: Отсутствует
> в какой-то момент, на данном форуме вы предлагали свою версию initrd
Да, со своим костылём для запуска из ISO-образа/с NTFS. Сам им не пользуюсь. Кроме того, в один момент костыль почему-то поломал загрузку DrWeb'а, а спустя 1 переписывание и несколько версий DrWeb'а всё починилось обратно, хотя Snapshot'ы всё равно не работают.

> можно ли как-то, этот странный сценарий заменить на более эффективный?
Можно, если убедиться, что всё остальное не зависит от этого сценария. Опыт написания костыля показывает, что не всё так просто.

> Можно было бы написать сценарий который ждал бы минуту, и затем проводил загрузку, произведя один единственный поиск по всем устройствам.
И всё это время пользователь должен будет смотреть на скучный кислотно-зелёный экран (или чёрный с мелкими непонятными буковками, кому как больше нравится), несмотря на то, что флешка уже давно проснулась и готова к бою?

> зачем сравнения изменённого списка устройств?
Появилось новое устройство => нужно подмонтировать его и поискать на нём модули (см. find_root). Не появилось => ждём.

> Зачем все эти секунды, минуты, когда устройство есть в списке и оно а значит к нему можно обратиться, например через минуту, на ряду с другими устройствами?
Чтобы не ждать минуту, когда можно не ждать минуту.

> устройство есть в списке и оно а значит к нему можно обратиться
Когда новый ls -x показал отличия от старого, файл-дырка в /dev уже существует, что значит, что устройство уже должно быть готово к монтированию и работе.

Почему-то на всех машинах, на которых мне нужно было запустить DrWeb, он запускался, так что этот вопрос для меня нов.


НАЖМИ МЕНЯ, прежде чем что-либо написать
 
Поиск:
Чат

Copyright GreenFlash © 2024
Рейтинг@Mail.ru