diff --git a/chapter07/createfiles.xml b/chapter07/createfiles.xml
new file mode 100644
index 0000000..6033eb4
--- /dev/null
+++ b/chapter07/createfiles.xml
@@ -0,0 +1,217 @@
+
+
+ %general-entities;
+]>
+
+
+
+
+ Создание основных файлов и символических ссылок
+
+
+ /etc/passwd
+
+
+
+ /etc/group
+
+
+
+ /run/utmp
+
+
+
+ /var/log/btmp
+
+
+
+ /var/log/lastlog
+
+
+
+ /var/log/wtmp
+
+
+ Исторически сложилось, что Linux хранит список примонтированных файловых
+ систем в файле /etc/mtab. Современные ядра хранят этот список
+ внутри себя и предоставляют его пользователю через файловую систему /proc. Чтобы удовлетворять требованиям утилит, которые
+ ожидают наличие /etc/mtab создайте следующую символическую ссылку:
+
+ln -sv /proc/self/mounts /etc/mtab
+
+ :Создайте файл /etc/hosts, на который будут ссылаться
+ некоторые наборы тестов, а также один из файлов конфигурации Perl:
+
+cat > /etc/hosts << EOF
+127.0.0.1 localhost $(hostname)
+::1 localhost
+EOF
+
+ Чтобы пользователь root мог войти в
+ систему и распознавался системой, в файлах
+ /etc/passwd и /etc/group должны
+ быть соответствующие записи.
+
+ Создайте файл /etc/passwd выполнив следующую команду:
+
+cat > /etc/passwd << "EOF"
+root:x:0:0:root:/root:/bin/bash
+bin:x:1:1:bin:/dev/null:/usr/bin/false
+daemon:x:6:6:Daemon User:/dev/null:/usr/bin/false
+messagebus:x:18:18:D-Bus Message Daemon User:/run/dbus:/usr/bin/false
+uuidd:x:80:80:UUID Generation Daemon User:/dev/null:/usr/bin/false
+nobody:x:65534:65534:Unprivileged User:/dev/null:/usr/bin/false
+EOF
+
+cat > /etc/passwd << "EOF"
+root:x:0:0:root:/root:/bin/bash
+bin:x:1:1:bin:/dev/null:/usr/bin/false
+daemon:x:6:6:Daemon User:/dev/null:/usr/bin/false
+messagebus:x:18:18:D-Bus Message Daemon User:/run/dbus:/usr/bin/false
+systemd-journal-gateway:x:73:73:systemd Journal Gateway:/:/usr/bin/false
+systemd-journal-remote:x:74:74:systemd Journal Remote:/:/usr/bin/false
+systemd-journal-upload:x:75:75:systemd Journal Upload:/:/usr/bin/false
+systemd-network:x:76:76:systemd Network Management:/:/usr/bin/false
+systemd-resolve:x:77:77:systemd Resolver:/:/usr/bin/false
+systemd-timesync:x:78:78:systemd Time Synchronization:/:/usr/bin/false
+systemd-coredump:x:79:79:systemd Core Dumper:/:/usr/bin/false
+uuidd:x:80:80:UUID Generation Daemon User:/dev/null:/usr/bin/false
+systemd-oom:x:81:81:systemd Out Of Memory Daemon:/:/usr/bin/false
+nobody:x:65534:65534:Unprivileged User:/dev/null:/usr/bin/false
+EOF
+
+ Пароль пользователя root
+ будет задан позднее.
+
+ Создайте файл /etc/group выполнив следующую команду:
+
+cat > /etc/group << "EOF"
+root:x:0:
+bin:x:1:daemon
+sys:x:2:
+kmem:x:3:
+tape:x:4:
+tty:x:5:
+daemon:x:6:
+floppy:x:7:
+disk:x:8:
+lp:x:9:
+dialout:x:10:
+audio:x:11:
+video:x:12:
+utmp:x:13:
+usb:x:14:
+cdrom:x:15:
+adm:x:16:
+messagebus:x:18:
+input:x:24:
+mail:x:34:
+kvm:x:61:
+uuidd:x:80:
+wheel:x:97:
+users:x:999:
+nogroup:x:65534:
+EOF
+
+cat > /etc/group << "EOF"
+root:x:0:
+bin:x:1:daemon
+sys:x:2:
+kmem:x:3:
+tape:x:4:
+tty:x:5:
+daemon:x:6:
+floppy:x:7:
+disk:x:8:
+lp:x:9:
+dialout:x:10:
+audio:x:11:
+video:x:12:
+utmp:x:13:
+usb:x:14:
+cdrom:x:15:
+adm:x:16:
+messagebus:x:18:
+systemd-journal:x:23:
+input:x:24:
+mail:x:34:
+kvm:x:61:
+systemd-journal-gateway:x:73:
+systemd-journal-remote:x:74:
+systemd-journal-upload:x:75:
+systemd-network:x:76:
+systemd-resolve:x:77:
+systemd-timesync:x:78:
+systemd-coredump:x:79:
+uuidd:x:80:
+systemd-oom:x:81:
+wheel:x:97:
+users:x:999:
+nogroup:x:65534:
+EOF
+
+ Созданные группы не являются частью какого-либо стандарта — эти группы
+ частично определяются требованиями конфигурации Udev в главе
+ 9, и частично соглашением, используемым рядом существующих Linux
+ дистрибутивов. Кроме того, некоторые наборы тестов зависят от конкретных пользователей или
+ групп. Специфкация LSB (доступна по адресу ) рекомендует, чтобы,
+ помимо группы root с
+ идентификатор (GID) 0 присутствовала группа bin
+ с GID 1. GID 5 широко используется для
+ группы tty, число 5
+ также используется в systemd
+ /etc/fstab для
+ файловой системы devpts.
+ Все остальные имена групп и GID могут свободно выбираться системным
+ администратором, так как хорошо написанные программы не зависят от номеров GID,
+ а чаще используют название группы.
+
+ Идентификатор 65534 используется ядром для NFS и отдельных пользовательских
+ пространств имен для несопоставленных пользователей и групп (они существуют на сервере NFS
+ или родительском пространстве имен пользователя, но не существует
на локальном
+ компьютере или в отдельном пространстве имен). Мы присваиваем nobody
+ и nogroup для того, чтобы избежать
+ несопоставленных идентификаторов. Другие дистрибутивы могут обрабатывать этот
+ идентификатор по-разному, поэтому любая переносимая программа не должна зависеть
+ от этого.
+
+ Для некоторых тестов в главе требуется
+ обычный пользователь. Добавим такого пользователя здесь и удалим эту учетную запись
+ в конце главы.
+
+echo "tester:x:101:101::/home/tester:/bin/bash" >> /etc/passwd
+echo "tester:x:101:" >> /etc/group
+install -o tester -d /home/tester
+
+ Чтобы удалить приглашение I have no name!
, запустите новую
+ оболочку. Поскольку файлы /etc/passwd и /etc/group
+ были созданы, разрешение имен пользователей и групп теперь будет работать:
+
+exec /usr/bin/bash --login
+
+ Программы login, agetty,
+ init (и другие) используют ряд журналов для записи такой
+ информации, как кто и когда входил в систему. Однако эти программы не будут
+ записывать данные в журналы, если они еще не существуют. Инициализируйте
+ журналы и предоставьте им соответствующие разрешения:
+
+touch /var/log/{btmp,lastlog,faillog,wtmp}
+chgrp -v utmp /var/log/lastlog
+chmod -v 664 /var/log/lastlog
+chmod -v 600 /var/log/btmp
+
+ В файл /var/log/wtmp записываются все входы и выходы
+ из системы. В файл /var/log/lastlog записывается время
+ последнего входа каждого пользователя в систему. В файл /var/log/faillog
+ записываются неудачные попытки входа в систему. В файл /var/log/btmp
+ записываются неудачные попытки входа в систему.
+
+ В файле /run/utmp записываются пользователи,
+ которые в данный момент вошли в систему. Он создаётся динамически, в процессе
+ выполнения сценариев загрузки.
+
+
diff --git a/chapter07/creatingdirs.xml b/chapter07/creatingdirs.xml
index 059f06b..c797ec3 100644
--- a/chapter07/creatingdirs.xml
+++ b/chapter07/creatingdirs.xml
@@ -11,15 +11,15 @@
Создание каталогов
Пришло время создать структуру каталогов для файловой системы LFS.
+
+ Некоторые каталоги были созданы ранее с помощью явных инструкций или
+ при установке некоторых пакетов. Они повторяются ниже для полноты картины.
Создайте несколько каталогов, которые не входили в ограниченный набор,
используемый в предыдущих главах, выполнив следующую команду:
mkdir -pv /{boot,home,mnt,opt,srv}
- Некоторые каталоги были созданы ранее с помощью явных инструкций или
- при установке некоторых пакетов. Они повторяются ниже для полноты картины.
-
Создайте необходимые подкаталоги, выполнив следующие команды:
mkdir -pv /etc/{opt,sysconfig}