diff options
-rw-r--r-- | chapter01/changelog.xml | 12 | ||||
-rw-r--r-- | chapter05/coreutils.xml | 9 | ||||
-rw-r--r-- | chapter06/bash.xml | 6 | ||||
-rw-r--r-- | chapter06/coreutils.xml | 21 | ||||
-rw-r--r-- | general.ent | 4 |
5 files changed, 31 insertions, 21 deletions
diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index ec8c02abe..27cd0f76e 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -35,6 +35,18 @@ </itemizedlist> </listitem> --> + + <listitem> + <para>2007-04-03</para> + <itemizedlist> + <listitem> + <para>[jhuntwork] - Install su from coreutils in chapter 5 as su-tools. + Use su-tools to run test suites from coreutils and bash as user nobody. + Fixes #1877.</para> + </listitem> + </itemizedlist> + </listitem> + <listitem> <para>2007-04-01</para> <itemizedlist> diff --git a/chapter05/coreutils.xml b/chapter05/coreutils.xml index 991338d9c..19211d802 100644 --- a/chapter05/coreutils.xml +++ b/chapter05/coreutils.xml @@ -56,6 +56,15 @@ <screen><userinput>make install</userinput></screen> + <para>The above command refuses to install <filename>su</filename> + because it cannot install it setuid root as a non-privileged user. By + manually installing it with a different name, we can use it for running + tests in the final system as a non-privileged user and we keep a possibly + useful <command>su</command> from our host first place in our PATH. Install + it with:</para> + +<screen><userinput>cp -v src/su /tools/bin/su-tools</userinput></screen> + </sect2> <sect2 role="content"> diff --git a/chapter06/bash.xml b/chapter06/bash.xml index 88a76c612..147af875b 100644 --- a/chapter06/bash.xml +++ b/chapter06/bash.xml @@ -70,8 +70,10 @@ sed -i "s|htmldir = @htmldir@|htmldir = /usr/share/doc/bash-&bash-version;|" \ <screen><userinput>make</userinput></screen> - <para>To test the results, issue: - <userinput>make tests</userinput>.</para> + <para>To test the results, issue:</para> + +<screen><userinput>chown -Rv nobody ./ +su-tools nobody -s /bin/bash -c "make tests"</userinput></screen> <para>Install the package:</para> diff --git a/chapter06/coreutils.xml b/chapter06/coreutils.xml index 9b55fc312..84da49220 100644 --- a/chapter06/coreutils.xml +++ b/chapter06/coreutils.xml @@ -72,31 +72,18 @@ <screen><userinput>make</userinput></screen> - <para>The test suite of Coreutils makes several assumptions about the - presence of system users and groups that are not valid within the minimal - environment that exists at the moment. Therefore, additional items need - to be set up before running the tests. Skip down to <quote>Install the + <para>Skip down to <quote>Install the package</quote> if not running the test suite.</para> - <para>Create two dummy groups and a dummy user:</para> - -<screen><userinput>echo "dummy1:x:1000:" >> /etc/group -echo "dummy2:x:1001:dummy" >> /etc/group -echo "dummy:x:1000:1000::/root:/bin/bash" >> /etc/passwd</userinput></screen> - <para>Now the test suite is ready to be run. First, run the tests that are meant to be run as user <systemitem class="username">root</systemitem>:</para> -<screen><userinput>make NON_ROOT_USERNAME=dummy check-root</userinput></screen> +<screen><userinput>make NON_ROOT_USERNAME=nobody check-root</userinput></screen> <para>Then run the remainder of the tests as the - <systemitem class="username">dummy</systemitem> user:</para> - -<screen><userinput>src/su dummy -c "make RUN_EXPENSIVE_TESTS=yes check"</userinput></screen> - - <para>When testing is complete, remove the dummy user and groups:</para> + <systemitem class="username">nobody</systemitem> user:</para> -<screen><userinput>sed -i '/dummy/d' /etc/passwd /etc/group</userinput></screen> +<screen><userinput>su-tools nobody -s /bin/bash -c "make RUN_EXPENSIVE_TESTS=yes check"</userinput></screen> <para>Install the package:</para> diff --git a/general.ent b/general.ent index f63e9f3e2..62d79dbdb 100644 --- a/general.ent +++ b/general.ent @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="ISO-8859-1"?> -<!ENTITY version "SVN-20070401"> -<!ENTITY releasedate "April 1, 2007"> +<!ENTITY version "SVN-20070403"> +<!ENTITY releasedate "April 3, 2007"> <!ENTITY milestone "6.3"> <!ENTITY generic-version "development"> <!-- Use "development", "testing", or "x.y[-pre{x}]" --> |