The OpenNET Project / Index page

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

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

"chroot"
Сообщение от serg2003 emailИскать по авторуВ закладки(ok) on 10-Ноя-04, 14:34  (MSK)
Не пойму , как работает команда chroot .
Предистория такова : начал я устанавливать LFS , версия 5.1 .
Выделил для него раздел , примонтировал его как /mnt/lfs .
Затем создал нового пользователя lfs с ограниченными правами и из под него
откомпилировал основные бинарники .
Структура сборки бинарников там такова , что основные каталоги легли не в /mnt/lfs ,
а в /mnt/lfs/tools - я имею ввиду /etc , /proc , /usr и т.д.
Ну и вот : после сборки  я уже root-ом запускаю команду :
chroot /mnt/lfs
и в ответ получаю :
/bin/bash: No such file or directory
Это понятно - действительно , нет такого файла /mnt/lfs/bin/bash .
Тогда я запускаю по-другому :
chroot /mnt/lfs /tools/bin/bash .
Но в ответ все та же ругань , хотя файл /mnt/lfs/tools/bin/bash существует !
Этого я не могу понять .
АСП 9.2 .
  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

  • chroot, teebot, 15:12 , 10-Ноя-04, (1)
    • chroot, serg2003, 15:19 , 10-Ноя-04, (2)
      • chroot, vnp, 04:17 , 11-Ноя-04, (4)
  • chroot, Дмитрий Ю. Карпов, 23:10 , 10-Ноя-04, (3)

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "chroot"
Сообщение от teebot Искать по авторуВ закладки on 10-Ноя-04, 15:12  (MSK)
>Не пойму , как работает команда chroot .
>Предистория такова : начал я устанавливать LFS , версия 5.1 .
>Выделил для него раздел , примонтировал его как /mnt/lfs .
...
>chroot /mnt/lfs
>и в ответ получаю :
>/bin/bash: No such file or directory

Не знаю что такое LFS если ты все поставил в /mnt/lfs, тогда наверное запуск должен выглядеть так: chroot /mnt/lfs название_твоей_проги_которую_ты_так_долго_ставил

З.Ы. http://www.opennet.me/man.shtml?topic=chroot&russian=0&category=

  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "chroot"
Сообщение от serg2003 emailИскать по авторуВ закладки(ok) on 10-Ноя-04, 15:19  (MSK)
>наверное запуск должен выглядеть так: chroot /mnt/lfs название_твоей_проги_которую_ты_так_долго_ставил

Смотрел я эту доку - формат запуска chroot такой :
chroot НОВЫЙ_КАТАЛОГ [КОМАНДА...]

НОВЫЙ_КАТАЛОГ - это /mnt/lfs
[КОМАНДА...]  - это /tools/bin/bash
Т.е. с учетом смены каталога , если смотреть от самого линуксового корня , фактически  это получается /mnt/lfs/tools/bin/bash .
Тут все правильно - файл существует .
Но chroot его не хочет запускать и говорит , что его нет !


  Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "chroot"
Сообщение от vnp emailИскать по авторуВ закладки(??) on 11-Ноя-04, 04:17  (MSK)
>>наверное запуск должен выглядеть так: chroot /mnt/lfs название_твоей_проги_которую_ты_так_долго_ставил
>
>Смотрел я эту доку - формат запуска chroot такой :
>chroot НОВЫЙ_КАТАЛОГ [КОМАНДА...]
>
>НОВЫЙ_КАТАЛОГ - это /mnt/lfs
>[КОМАНДА...]  - это /tools/bin/bash
>Т.е. с учетом смены каталога , если смотреть от самого линуксового корня
>, фактически  это получается /mnt/lfs/tools/bin/bash .
>Тут все правильно - файл существует .
>Но chroot его не хочет запускать и говорит , что его нет!

Таки нету его, все он правильно говорит. chroot _сначала_ меняет корень, а потом ищет программу -- от _нового_ корня.

Иначе говоря, запускать надо
/tools/bin/bash

PS: Полная документация для chroot поддерживается в виде руководства в формате Texinfo. Если программы info и chroot нормально установлены на вашем сайте, то по команде

    info chroot

Вы получите доступ к полному руководству.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "chroot"
Сообщение от Дмитрий Ю. Карпов Искать по авторуВ закладки on 10-Ноя-04, 23:10  (MSK)
> Тогда я запускаю по-другому:
> chroot /mnt/lfs /tools/bin/bash .
> Но в ответ все та же ругань , хотя файл /mnt/lfs/tools/bin/bash существует!

Это потому, что программа chroot делает сист.вызов exec("/bin/bash", "/tools/bin/bash"); и чего бы ты ни написал вторым аргументом команды chroot, первым аргументом exec всё равно будет "/bin/bash". Откуда она это берёт? Да из /etc/passwd, колонка "Shell"...

Короче говоря, символьные линки рулят. Лучше всего перед сборкой сделать
ln -s .. /mnt/lfs/tools
и тогда все программы лягут куда надо. Или сам домозгуй, что в консерватории надо подправить... :)

  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

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