Мнение Общественности |
Оценка Проекта
Всего ответов: 2940
|
Статистика |
|
|
Dr.Web Live USB и GRUB
| |
userforspam | Дата: Четверг, 26.01.2012, 14:13 | Сообщение # 166 |
Неизвестный
Группа: Пользователи
Сообщений: 6
Статус: Отсутствует
| 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
Статус: Отсутствует
| Блин, всю ветку прочитал, никто так и не обратил внимание на то что в версии: 6.x.x - уже давно не используются опции: looptype=squashfs loop=/boot/module/white.mo Все продолжают дружно копировать старые конфиги.
Вот что реально необходимо:
----==== 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
Статус: Отсутствует
| народ может в жопу этот dr web? на чистой флешке он не запукается. в техподдержке толком ничего не говорят. только с диска он адекватно работает. но с диска не ризон. хотя бы потому что базы не обновишь. а менять диски тоже не удобно. может касперский лучше?
|
|
| |
Sphinx114 | Дата: Суббота, 11.02.2012, 01:24 | Сообщение # 169 |
Экспериментатор
Группа: Пользователи
Сообщений: 128
Статус: Отсутствует
| У меня базы нормально обновляются и сохраняются (снапшотом пользуюсь).
А как сделать чтобы по умолчанию в докторе загружался русский язык? Что означает CONSOLE=/dev/tty1? Где можно найти список допустимых параметров ядра для доктора (для каспера тоже желательно) и их сакральный смысл?
|
|
| |
Sh1td0wn | Дата: Суббота, 11.02.2012, 17:27 | Сообщение # 170 |
Программист
Группа: Модераторы
Сообщений: 3829
Статус: Отсутствует
| > Что означает CONSOLE=/dev/tty1? Какой-то из сервисов, из которых состоит DrWeb, читает этот параметр и общается с консолью на первом виртуальном терминале.
> Где можно найти список допустимых параметров ядра для доктора Либо в официальной документации, либо в документации используемого для сборки дистрибутива (Gentoo), либо в документации ядра (для специфичных для ядра параметров), либо самостоятельно по результату прочтения загрузочных скриптов.
НАЖМИ МЕНЯ, прежде чем что-либо написать
|
|
| |
userforspam | Дата: Суббота, 18.02.2012, 15:56 | Сообщение # 171 |
Неизвестный
Группа: Пользователи
Сообщений: 6
Статус: Отсутствует
| ничего не помогает.графика не загружается с флешки
|
|
| |
ShadowNev | Дата: Вторник, 21.02.2012, 09:12 | Сообщение # 172 |
Неизвестный
Группа: Пользователи
Сообщений: 1
Статус: Отсутствует
| userforspam На этой странице господин hunter64 описал 100% рабочий метод, я сам, независимо от него поднял таким же способом Dr.WEB на своей мульти-флешке.
|
|
| |
Orestik | Дата: Вторник, 21.02.2012, 12:19 | Сообщение # 173 |
Экспериментатор
Группа: Пользователи
Сообщений: 41
Статус: Отсутствует
| подтверждаю выше написанное, все грузится и работает.... Вот мой код для наглядности:
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
Статус: Отсутствует
| Просто у человека неподдерживаемая видеокарта. Нужно обратиться в техподдержку DrWeb'а, там пришлют исправленный xorg.conf и инструкции, как его протестировать.
НАЖМИ МЕНЯ, прежде чем что-либо написать
|
|
| |
userforspam | Дата: Среда, 22.02.2012, 15:16 | Сообщение # 175 |
Неизвестный
Группа: Пользователи
Сообщений: 6
Статус: Отсутствует
| Sh1td0wn, писал уже. ничего не помогает
|
|
| |
yoda832 | Дата: Четверг, 12.04.2012, 22:00 | Сообщение # 176 |
Неизвестный
Группа: Проверенные
Сообщений: 15
Статус: Отсутствует
| Люди если у вас есть установщик дрв лайв юсб то ошибка cannot find идёт изза того что установщик изменяет исходный код initrd.gz можно попытаться запустить прогу заново шанса избежать ошибки 85%
|
|
| |
b0s | Дата: Четверг, 19.04.2012, 01:00 | Сообщение # 177 |
Ищущий
Группа: Пользователи
Сообщений: 22
Статус: Отсутствует
| 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
Статус: Отсутствует
| > как работает данный сценарий Сложно. Хочется сказать "криво". Может быть, это и не так, но логика здесь явно инопланетная.
> вообще зачем его придумали? Не знаю. Если логику 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
Статус: Отсутствует
| 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
Статус: Отсутствует
| > в какой-то момент, на данном форуме вы предлагали свою версию initrd Да, со своим костылём для запуска из ISO-образа/с NTFS. Сам им не пользуюсь. Кроме того, в один момент костыль почему-то поломал загрузку DrWeb'а, а спустя 1 переписывание и несколько версий DrWeb'а всё починилось обратно, хотя Snapshot'ы всё равно не работают.
> можно ли как-то, этот странный сценарий заменить на более эффективный? Можно, если убедиться, что всё остальное не зависит от этого сценария. Опыт написания костыля показывает, что не всё так просто.
> Можно было бы написать сценарий который ждал бы минуту, и затем проводил загрузку, произведя один единственный поиск по всем устройствам. И всё это время пользователь должен будет смотреть на скучный кислотно-зелёный экран (или чёрный с мелкими непонятными буковками, кому как больше нравится), несмотря на то, что флешка уже давно проснулась и готова к бою?
> зачем сравнения изменённого списка устройств? Появилось новое устройство => нужно подмонтировать его и поискать на нём модули (см. find_root). Не появилось => ждём.
> Зачем все эти секунды, минуты, когда устройство есть в списке и оно а значит к нему можно обратиться, например через минуту, на ряду с другими устройствами? Чтобы не ждать минуту, когда можно не ждать минуту.
> устройство есть в списке и оно а значит к нему можно обратиться Когда новый ls -x показал отличия от старого, файл-дырка в /dev уже существует, что значит, что устройство уже должно быть готово к монтированию и работе.
Почему-то на всех машинах, на которых мне нужно было запустить DrWeb, он запускался, так что этот вопрос для меня нов.
НАЖМИ МЕНЯ, прежде чем что-либо написать
|
|
| |
|
|