Пришло время создать структуру каталогов для файловой системы LFS.
Некоторые каталоги были созданы ранее с помощью явных инструкций или при установке некоторых пакетов. Они повторяются ниже для полноты картины.
Создайте несколько каталогов, которые не входили в ограниченный набор, используемый в предыдущих главах, выполнив следующую команду:
mkdir -pv /{boot,home,mnt,opt,srv}
Создайте необходимые подкаталоги, выполнив следующие команды:
mkdir -pv /etc/{opt,sysconfig}
mkdir -pv /lib/firmware
mkdir -pv /media/{floppy,cdrom}
mkdir -pv /usr/{,local/}{include,src}
mkdir -pv /usr/local/{bin,lib,sbin}
mkdir -pv /usr/{,local/}share/{color,dict,doc,info,locale,man}
mkdir -pv /usr/{,local/}share/{misc,terminfo,zoneinfo}
mkdir -pv /usr/{,local/}share/man/man{1..8}
mkdir -pv /var/{cache,local,log,mail,opt,spool}
mkdir -pv /var/lib/{color,misc,locate}
ln -sfv /run /var/run
ln -sfv /run/lock /var/lock
install -dv -m 0750 /root
install -dv -m 1777 /tmp /var/tmp
По умолчанию каталоги создаются с правами 755, но это нежелательно
для всех каталогов. В приведенных выше командах вносятся два
изменения — одно в домашний каталог пользователя root, а другое в каталог для временных файлов.
Первое изменение гарантирует, что никто не сможет войти в каталог
/root — но он так же, как обычный
пользователь сможет работать в своем домашнем каталоге. Второе
изменение гарантирует, что любой пользователь может писать в каталоги
/tmp и /var/tmp, но не может удалять из них файлы другого
пользователя. Последнее запрещено так называемым «sticky bit (липким
битом)», старшим битом (1) в битовой маске 1777
Дерево каталогов основано на стандарте иерархии файловой системы
(FHS) (доступен по адресу https://refspecs.linuxfoundation.org/fhs.shtml).
FHS также указывает, что наличие некоторых каталогов необязательно,
например, /usr/local/games и
/usr/share/games. Мы создаем только
необходимые каталоги. Несмотря на это, вы имеете полное право
создать их.