1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../general.ent">
8 <sect1 id="ch-system-creatingdirs">
9 <?dbhtml filename="creatingdirs.html"?>
11 <title>Creating Directories</title>
13 <para>It is time to create some structure in the LFS file system. Create a
14 standard directory tree by issuing the following commands:</para>
16 <screen><userinput>mkdir -pv /{bin,boot,etc/{opt,sysconfig},home,lib/firmware,mnt,opt}
17 mkdir -pv /{media/{floppy,cdrom},sbin,srv,var}
18 install -dv -m 0750 /root
19 install -dv -m 1777 /tmp /var/tmp
20 mkdir -pv /usr/{,local/}{bin,include,lib,sbin,src}
21 mkdir -pv /usr/{,local/}share/{color,dict,doc,info,locale,man}
22 mkdir -v /usr/{,local/}share/{misc,terminfo,zoneinfo}
24 mkdir -pv /usr/{,local/}share/man/man{1..8}
27 x86_64) mkdir -v /lib64 ;;
30 mkdir -v /var/{log,mail,spool}
32 ln -sv /run/lock /var/lock
33 mkdir -pv /var/{opt,cache,lib/{color,misc,locate},local}</userinput></screen>
35 <para>Directories are, by default, created with permission mode 755, but
36 this is not desirable for all directories. In the commands above, two
37 changes are made—one to the home directory of user <systemitem
38 class="username">root</systemitem>, and another to the directories for
39 temporary files.</para>
41 <para>The first mode change ensures that not just anybody can enter
42 the <filename class="directory">/root</filename> directory—the
43 same as a normal user would do with his or her home directory. The
44 second mode change makes sure that any user can write to the
45 <filename class="directory">/tmp</filename> and <filename
46 class="directory">/var/tmp</filename> directories, but cannot remove
47 another user's files from them. The latter is prohibited by the so-called
48 <quote>sticky bit,</quote> the highest bit (1) in the 1777 bit mask.</para>
51 <title>FHS Compliance Note</title>
53 <para>The directory tree is based on the Filesystem Hierarchy Standard
54 (FHS) (available at <ulink
55 url="https://wiki.linuxfoundation.org/en/FHS"/>). The FHS also specifies
56 the optional existence of some directories such as <filename
57 class="directory">/usr/local/games</filename> and <filename
58 class="directory">/usr/share/games</filename>. We create only the
59 directories that are needed. However, feel free to create these