addinguser.xml 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. <?xml version="1.0" encoding="ISO-8859-1"?>
  2. <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
  3. <!ENTITY % general-entities SYSTEM "../general.ent">
  4. %general-entities;
  5. ]>
  6. <sect1 id="ch-tools-addinguser">
  7. <title>Adding the user lfs</title>
  8. <?dbhtml filename="addinguser.html"?>
  9. <para>When logged in as <emphasis>root</emphasis>, making a single mistake
  10. can damage or even wreck your system. Therefore we recommend that you
  11. build the packages in this chapter as an unprivileged user. You could
  12. of course use your own user name, but to make it easier to set up a clean
  13. work environment we'll create a new user <emphasis>lfs</emphasis> as a
  14. member of a new group (also named <emphasis>lfs</emphasis>) and
  15. use this one during the installation process. As <emphasis>root</emphasis>,
  16. issue the following commands to add the new user:</para>
  17. <screen><userinput>groupadd lfs
  18. useradd -s /bin/bash -g lfs -m -k /dev/null lfs</userinput></screen>
  19. <para>The meaning of the switches:</para>
  20. <variablelist>
  21. <varlistentry>
  22. <term><parameter>-s /bin/bash</parameter></term>
  23. <listitem><para>This makes
  24. <command>bash</command> the default shell for user
  25. <emphasis>lfs</emphasis>.</para></listitem>
  26. </varlistentry>
  27. <varlistentry>
  28. <term><parameter>-g lfs</parameter></term>
  29. <listitem><para>This adds user <emphasis>lfs</emphasis> to group
  30. <emphasis>lfs</emphasis></para></listitem>
  31. </varlistentry>
  32. <varlistentry>
  33. <term><parameter>-m</parameter></term>
  34. <listitem><para>This creates a home
  35. directory for <emphasis>lfs</emphasis>.</para></listitem>
  36. </varlistentry>
  37. <varlistentry>
  38. <term><parameter>-k /dev/null</parameter></term>
  39. <listitem><para>This parameter
  40. prevents possible copying of files from a skeleton directory (default
  41. is <filename class="directory">/etc/skel</filename>) by changing the input location to
  42. the special null device.</para></listitem>
  43. </varlistentry>
  44. </variablelist>
  45. <para>If you want to be able to log in as <emphasis>lfs</emphasis>, then give
  46. <emphasis>lfs</emphasis> a password:</para>
  47. <screen><userinput>passwd lfs</userinput></screen>
  48. <para>and grant <emphasis>lfs</emphasis> full access to
  49. <filename class="directory">$LFS/tools</filename> by making
  50. <emphasis>lfs</emphasis> the directory owner:</para>
  51. <screen><userinput>chown lfs $LFS/tools</userinput></screen>
  52. <para>If you made a separate working directory as suggested, give user
  53. <emphasis>lfs</emphasis> ownership of this directory too:</para>
  54. <screen><userinput>chown lfs $LFS/sources</userinput></screen>
  55. <para>Next, login as user <emphasis>lfs</emphasis>. This can be done via a
  56. virtual console, through a display manager, or with the following substitute
  57. user command:</para>
  58. <screen><userinput>su - lfs</userinput></screen>
  59. <para>The <quote><parameter>-</parameter></quote> instructs <command>su</command> to
  60. start a <emphasis>login</emphasis> shell.</para>
  61. </sect1>