aboutsummaryrefslogtreecommitdiffstats
path: root/chapter02/aboutlfs.xml
blob: 2743e00bfdb81108d743e3abd108d4b6f87e1e7b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
<sect1 id="ch02-aboutlfs">
<title>About $LFS</title>

<para>
Please read the following carefully: throughout this book 
the variable $LFS will be used frequently. $LFS must at all times be
replaced by the directory where the partition that contains the LFS system 
is mounted. How to create and where to mount the partition will be
explaind in full detail in chapter 4. In my case, the LFS 
partition is mounted  on /mnt/lfs.
</para>

<para>
For example when you are told to run a command like
<userinput>./configure --prefix=$LFS</userinput> you will actually run
<userinput>./configure --prefix=/mnt/lfs</userinput>
</para>

<para>
It's important that this is done no matter where it is read; be it in
commands entered in a shell, or in a file edited or created.
</para>

<para>
Another possible solution is to set the environment variable LFS.
This way $LFS can be entered literally instead of replacing it by 
/mnt/lfs. This is accomplished by running <userinput>export
LFS=/mnt/lfs</userinput>.
</para>

<para>
Now, if you read to run a command like <userinput>./configure
--prefix=$LFS</userinput> you can type that literally. Your shell will
replace $LFS with /mnt/lfs when it processes the command line (meaning
when you hit enter).
</para>

<para>
If you plan to use $LFS, do not forget to set the $LFS variable at all 
times. If the variable is not set and is used it in a command, $LFS will 
be ignored and whatever is left will be executed. A command like
<userinput>echo "root:x:0:0:root:/root:/bin/bash" &gt; 
$LFS/etc/passwd</userinput> without the $LFS variable set will
re-create your host system's /etc/passwd file. Simply put: it will
destroy your current password database file.
</para>

<para>
One way to make sure that $LFS is set at all times is adding it to
the /root/.bash_profile and/or /root/.bashrc file(s) so that every time
you login as user root, or you 'su' to user root, the $LFS variable is
set.
</para>

</sect1>