Adding a touch of mtab before the running of Coreutils test suite.

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@3257 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
This commit is contained in:
Alex Gronenwoud 2004-02-22 19:05:53 +00:00
parent 9da62ab0cd
commit cd0c92d633
5 changed files with 33 additions and 23 deletions

View File

@ -6,6 +6,9 @@
<itemizedlist>
<listitem><para>February 22nd, 2004 [alex]: Chapter 6 - Coreutils and
E2fsprogs: Clarified the prerequisites for running the tests.</para></listitem>
<listitem><para>February 19th, 2004 [alex]: Chapter 5 - Stripping: Removed
an unnecessary "{,share/}" from the documentation's <command>rm</command>
command.</para></listitem>

View File

@ -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>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>touch /etc/mtab</userinput></screen>
<para>Some tests are meant to run as <emphasis>root</emphasis>:</para>
<para>And create two dummy groups and a dummy user name:</para>
<screen><userinput>echo "dummy1:x:1000" &gt;&gt; /etc/group
echo "dummy2:x:1001:dummy" &gt;&gt; /etc/group
echo "dummy:x:1000:1000:::/bin/bash" &gt;&gt; /etc/passwd</userinput></screen>
<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>

View File

@ -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>

View File

@ -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' &gt;&gt; config.h</userinput></screen>
<para>Compile the package:</para>

View File

@ -2,8 +2,8 @@
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
"/usr/share/docbook/docbookx.dtd" [
<!ENTITY version "CVS-2004-02-19">
<!ENTITY releasedate "February 19th, 2004">
<!ENTITY version "CVS-2004-02-22">
<!ENTITY releasedate "February 22nd, 2004">
<!ENTITY milestone "5.2">
<!ENTITY nbsp " ">