Создание файлов passwd и group

Для возможности регистрации в качестве пользователя root и для распознавания имени "root", нам необходимо создать соответствующие элементы в файлах /etc/passwd и /etc/group.

Создадим файл /etc/passwd запуском команды:

cat > /etc/passwd << "EOF"
root:x:0:0:root:/root:/bin/bash
EOF

Пароль пользователя root (символ "x" заменяет его здесь) будет определен позднее.

Создадим файл /etc/group запуском следующей команды:

cat > /etc/group << "EOF"
root:x:0:
bin:x:1:
sys:x:2:
kmem:x:3:
tty:x:4:
tape:x:5:
daemon:x:6:
floppy:x:7:
disk:x:8:
lp:x:9:
dialout:x:10:
audio:x:11:
EOF

Созданные группы не являются частью какого-то стандарта -- эти группы используются скриптом MAKEDEV в следующей главе. Помимо группы "root", LSB (http://www.linuxbase.org) рекомендует устанавливать GID равный 1 для группы "bin". Все другие имена групп и их GID могут свободно выбираться пользователем, но некоторые пакеты зависят от имени группы, хоть и не зависят от номера GID.

Наконец, мы перезайдем в chroot. Имя пользователя и имя группы начнут работать правильно после создания файлов /etc/passwd и /etc/group потому, что мы установили полную Glibc в Главе 5. Это должно убрать вывод сообщения "I have no name!".

exec /tools/bin/bash --login +h

Замечание по использованию параметра +h. Это скажет bash не использовать внутренний кеш путей. Без этого bash будет запоминать пути к исполненым бинарникам. Поскольку мы собираемся использовать вновь скомпилированые пакеты по мере их установки, мы должны отключить эту функцию в этой главе.