The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Определение девайса с которого был запущен линух."
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"Определение девайса с которого был запущен линух."  
Сообщение от Fagot email on 29-Дек-06, 10:39 
Здравствуйте.
Собираю свой линух, запускается из initrd.
Самописный linuxrc (на Си).
Определяет какие block devices есть в системе и создаёт для них файлы устройств в /dev/.
Как сделать, чтобы linuxrc мог определить на каком из этих девайсов находится ядро и initrd. Т.е. от куда он был запущен.
Сейчас сделал так: по порядку монтирует все девайсы и ищет спец файл. Если находит то это и есть нужный девайс.
Но такой подход уж очень медленный.
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "Определение девайса с которого был запущен линух."  
Сообщение от vt (ok) on 30-Дек-06, 19:33 
>Собираю свой линух, запускается из initrd.
>Самописный linuxrc (на Си).
>Определяет какие block devices есть в системе и создаёт для них файлы
>устройств в /dev/.
>Как сделать, чтобы linuxrc мог определить на каком из этих девайсов находится
>ядро и initrd. Т.е. от куда он был запущен.

Никак не сделать. Это "знает" только загрузчик.
Чтобы передавать эту информацию ядру нужен самописный isolinux )

>Сейчас сделал так: по порядку монтирует все девайсы и ищет спец файл.
>Если находит то это и есть нужный девайс.
>Но такой подход уж очень медленный.

Live-CD примерно так и делают

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "Определение девайса с которого был запущен линух."  
Сообщение от andreyka459 email(??) on 01-Янв-07, 19:08 
>Live-CD примерно так и делают

именно. и связано это ИМХО с тем, что у разных ядер мб разные наименоваения для разных устройств. Более того, в зависимости от того, поддержка каких именно устройств включена в конкретное ядро, нумерация тоже может быть разной.  

в таких условиях требовать от загрузчика передачи правильного имени устройства низя.  

так что никакой "свой" isolinux  в общем случае не поможет(если не наложить какихто ограничений).

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Определение девайса с которого был запущен линух."  
Сообщение от tungus on 31-Дек-06, 05:12 
cat /proc/cmdline ?
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Определение девайса с которого был запущен линух."  
Сообщение от vt (ok) on 31-Дек-06, 13:21 
>cat /proc/cmdline ?

Только если кто-то или что-то при загрузке поместит туда что-нибудь типа bootdev=/dev/...
Тогда, кстати, это появится не только в /proc/cmdline, но и в env
Но автоматически isolinux ничего такого не делает - остается только руками в boot-prompt

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Спонсоры:
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2021 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру