Creating directories Let's now create some structure in our LFS file system. Let's create a directory tree. Issuing the following commands will create a more or less standard tree: mkdir -p /{bin,boot,dev/{pts,shm},etc/opt,home,lib,mnt,proc} mkdir -p /{root,sbin,tmp,usr/local,var,opt} for dirname in /usr /usr/local     do     mkdir $dirname/{bin,etc,include,lib,sbin,share,src}     ln -s share/{man,doc,info} $dirname     mkdir $dirname/share/{dict,doc,info,locale,man}     mkdir $dirname/share/{nls,misc,terminfo,zoneinfo}     mkdir $dirname/share/man/man{1,2,3,4,5,6,7,8} done mkdir /var/{lock,log,mail,run,spool} mkdir -p /var/{tmp,opt,cache,lib/misc,local} mkdir /opt/{bin,doc,include,info} mkdir -p /opt/{lib,man/man{1,2,3,4,5,6,7,8}} Directories are, by default, created with permission mode 755, but this isn't desirable for all directories. We will make two changes: one to the home directory of root, and another to the directories for temporary files. chmod 0750 /root chmod 1777 /tmp /var/tmp The first mode change ensures that not just anybody can enter the /root directory -- the same as a normal user would do with his or her home directory. The second mode change makes sure that any user can write to the /tmp and /var/tmp directories, but cannot remove other users' files from them. The latter is prohibited by the so-called "sticky bit" -- the highest bit in the 1777 bit mask. FHS compliance note We have based our directory tree on the FHS standard (available at ). Besides the above created tree this standard stipulates the existence of /usr/local/games and /usr/share/games, but we don't much like these for a base system. However, feel free to make your system FHS-compliant. As to the structure of the /usr/local/share subdirectory, the FHS isn't precise, so we created here the directories that we think are needed.