diff options
Diffstat (limited to 'chapter06')
-rw-r--r-- | chapter06/coreutils.xml | 40 | ||||
-rw-r--r-- | chapter06/e2fsprogs.xml | 7 | ||||
-rw-r--r-- | chapter06/shadow.xml | 2 |
3 files changed, 28 insertions, 21 deletions
diff --git a/chapter06/coreutils.xml b/chapter06/coreutils.xml index 4c5bdf129..1562d0598 100644 --- a/chapter06/coreutils.xml +++ b/chapter06/coreutils.xml @@ -40,35 +40,39 @@ provided by Net-tools. Prevent its installation by applying a patch:</para> <screen><userinput>make</userinput></screen> -<para>The <command>su</command> program from Coreutils wasn't installed in -<xref linkend="chapter-temporary-tools"/> because it needed -<emphasis>root</emphasis> privilege to do so. We're going to need it in a few -moments for the test suite. Therefore we install it now:</para> +<para>The test suite of Coreutils makes several assumptions about the presence +of files and users that aren't valid yet this early in the LFS build. We will +therefore have to set up a few things before being able to run the tests. If +you choose not to run these tests, skip down to "Install the package".</para> + +<para>To be able to run the full test suite, the <command>su</command> program +needs to be installed. We didn't bother to install this little program in +<xref linkend="chapter-temporary-tools"/> because it requires root privileges, +so do it now:</para> <screen><userinput>make install-root</userinput></screen> -<para>The test suite of this package -makes some assumptions with regards to the presence of non-root users and -groups that don't apply this early into the LFS build. We therefore create -a dummy system user and two dummy groups to allow the tests to run -properly. Should you choose not to run the test suite, skip down to -"Install the package". The following commands will prepare us for the test -suite. Create two dummy groups and a dummy user name:</para> +<para>Create a 'table of mounted filesystems' file with:</para> + +<screen><userinput>touch /etc/mtab</userinput></screen> + +<para>And create two dummy groups and a dummy user name:</para> -<screen><userinput>echo "dummy1:x:1000" >> /etc/group -echo "dummy2:x:1001:dummy" >> /etc/group -echo "dummy:x:1000:1000:::/bin/bash" >> /etc/passwd</userinput></screen> +<screen><userinput>echo "dummy1:x:1000" >> /etc/group +echo "dummy2:x:1001:dummy" >> /etc/group +echo "dummy:x:1000:1000:::/bin/bash" >> /etc/passwd</userinput></screen> -<para>Some tests are meant to run as <emphasis>root</emphasis>:</para> +<para>Now you're all set to run the test suite. First run the few tests that +are meant to be run as <emphasis>root</emphasis>:</para> <screen><userinput>make check-root</userinput></screen> -<para>The remainder of the tests are run as the <emphasis>dummy</emphasis> +<para>Then run the remainder of the tests as the <emphasis>dummy</emphasis> user:</para> <screen><userinput>su dummy -c "make RUN_EXPENSIVE_TESTS=yes check"</userinput></screen> -<para>Remove the dummy groups and user name:</para> +<para>When you're done testing, remove the dummy user and groups:</para> <screen><userinput>sed -i.bak '/dummy/d' /etc/passwd /etc/group</userinput></screen> @@ -90,7 +94,7 @@ Remove the one installed by Coreutils:</para> <screen><userinput>rm /usr/bin/kill</userinput></screen> -<para>Finally, create a few necessary symlinks:</para> +<para>Finally, create two symlinks to be FHS-compliant:</para> <screen><userinput>ln -s test /bin/[ ln -s ../../bin/install /usr/bin</userinput></screen> diff --git a/chapter06/e2fsprogs.xml b/chapter06/e2fsprogs.xml index 81af66eff..89badb958 100644 --- a/chapter06/e2fsprogs.xml +++ b/chapter06/e2fsprogs.xml @@ -49,8 +49,11 @@ of.</para></listitem> <screen><userinput>make</userinput></screen> -<para>To have the results tested, issue: -<userinput>make check</userinput>.</para> +<para>If you wish to have the results tested, first make sure an mtab file +exists with <userinput>touch /etc/mtab</userinput> to prevent some sixty tests +from failing, and (if it doesn't already exist) fake the presence of an old +pager with <userinput>ln -s /tools/bin/cat /bin/more</userinput> to prevent one +test from failing, then issue: <userinput>make check</userinput>.</para> <para>Install most of the package:</para> diff --git a/chapter06/shadow.xml b/chapter06/shadow.xml index 377dbae04..714393c2a 100644 --- a/chapter06/shadow.xml +++ b/chapter06/shadow.xml @@ -34,7 +34,7 @@ properly:</para> <para>Work around a problem that prevents Shadow's internationalization from working:</para> -<screen><userinput>echo '#define HAVE_SETLOCALE 1' >> config.h</userinput></screen> +<screen><userinput>echo '#define HAVE_SETLOCALE 1' >> config.h</userinput></screen> <para>Compile the package:</para> |