blob: c0dc9ad67fd60d4c781c8fa908234951cdfb5632 (
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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
|
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
<sect1 id="ch-tools-addinguser">
<title>Adding the user lfs</title>
<?dbhtml filename="addinguser.html"?>
<para>When logged in as <emphasis>root</emphasis>, making a single mistake
can damage or even wreck your system. Therefore we recommend that you
build the packages in this chapter as an unprivileged user. You could
of course use your own user name, but to make it easier to set up a clean
work environment we'll create a new user <emphasis>lfs</emphasis> as a
member of a new group (also named <emphasis>lfs</emphasis>) and
use this one during the installation process. As <emphasis>root</emphasis>,
issue the following commands to add the new user:</para>
<screen><userinput>groupadd lfs
useradd -s /bin/bash -g lfs -m -k /dev/null lfs</userinput></screen>
<para>The meaning of the switches:</para>
<variablelist>
<varlistentry>
<term><parameter>-s /bin/bash</parameter></term>
<listitem><para>This makes
<command>bash</command> the default shell for user
<emphasis>lfs</emphasis>.</para></listitem>
</varlistentry>
<varlistentry>
<term><parameter>-g lfs</parameter></term>
<listitem><para>This adds user <emphasis>lfs</emphasis> to group
<emphasis>lfs</emphasis></para></listitem>
</varlistentry>
<varlistentry>
<term><parameter>-m</parameter></term>
<listitem><para>This creates a home
directory for <emphasis>lfs</emphasis>.</para></listitem>
</varlistentry>
<varlistentry>
<term><parameter>-k /dev/null</parameter></term>
<listitem><para>This parameter
prevents possible copying of files from a skeleton directory (default
is <filename class="directory">/etc/skel</filename>) by changing the input location to
the special null device.</para></listitem>
</varlistentry>
</variablelist>
<para>If you want to be able to log in as <emphasis>lfs</emphasis>, then give
<emphasis>lfs</emphasis> a password:</para>
<screen><userinput>passwd lfs</userinput></screen>
<para>and grant <emphasis>lfs</emphasis> full access to
<filename class="directory">$LFS/tools</filename> by making
<emphasis>lfs</emphasis> the directory owner:</para>
<screen><userinput>chown lfs $LFS/tools</userinput></screen>
<para>If you made a separate working directory as suggested, give user
<emphasis>lfs</emphasis> ownership of this directory too:</para>
<screen><userinput>chown lfs $LFS/sources</userinput></screen>
<para>Next, login as user <emphasis>lfs</emphasis>. This can be done via a
virtual console, through a display manager, or with the following substitute
user command:</para>
<screen><userinput>su - lfs</userinput></screen>
<para>The <quote><parameter>-</parameter></quote> instructs <command>su</command> to
start a <emphasis>login</emphasis> shell.</para>
</sect1>
|