[FE training-materials-updates] Tinysystem lab: instruct to create the dev/ directory

Michael Opdenacker michael.opdenacker at free-electrons.com
Wed Nov 20 17:13:52 CET 2013

Repository : git://git.free-electrons.com/training-materials.git

On branch  : master
Link       : http://git.free-electrons.com/training-materials/commit/?id=6589a4163a1bbf67201e4a9e650fb80e5566dac2


commit 6589a4163a1bbf67201e4a9e650fb80e5566dac2
Author: Michael Opdenacker <michael.opdenacker at free-electrons.com>
Date:   Wed Nov 20 17:13:09 2013 +0100

    Tinysystem lab: instruct to create the dev/ directory
    Signed-off-by: Michael Opdenacker <michael.opdenacker at free-electrons.com>


 labs/sysdev-tinysystem/sysdev-tinysystem.tex |   28 +++++++++++++++++++-------
 1 file changed, 21 insertions(+), 7 deletions(-)

diff --git a/labs/sysdev-tinysystem/sysdev-tinysystem.tex b/labs/sysdev-tinysystem/sysdev-tinysystem.tex
index b0a9de6..924341e 100644
--- a/labs/sysdev-tinysystem/sysdev-tinysystem.tex
+++ b/labs/sysdev-tinysystem/sysdev-tinysystem.tex
@@ -94,14 +94,29 @@ Of course, you need to adapt the IP addresses to your exact network
 setup. Save the environment variables (with \code{saveenv}).
 Now, boot your system. The kernel should be able to mount the root
-filesystem over NFS.
+filesystem over NFS:
+[    7.467895] VFS: Mounted root (nfs filesystem) readonly on device 0:12.
 If the kernel fails to mount the NFS filesystem, look carefully at the
 error messages in the console. If this doesn't give any clue, you can
 also have a look at the NFS server logs in \code{/var/log/syslog}.
-However, the kernel will complain that it can't find an init
+However, at this stage, the kernel should stop because of the below
+[    7.476715] devtmpfs: error mounting -2
+This happens because the kernel is trying to mount the {\em devtmpfs}
+filesystem in \code{/dev/} in the root filesystem. To address this,
+create a \code{dev} directory under \code{nfsroot} and reboot.
+Now, the kernel should complain for the last time, saying that it can't
+find an init application:
@@ -110,9 +125,9 @@ Kernel panic - not syncing: No init found.  Try passing init= option to kernel.
-Obviously, our root filesystem being empty, there isn't such an
-application. Follow on to add Busybox to our root filesystem and
-finally make it useful.
+Obviously, our root filesystem being mostly empty, there isn't such an
+application yet. In the next paragraph, you will add Busybox to your root
+filesystem and finally make it usable.
 \section{Root filesystem with Busybox}
@@ -217,7 +232,6 @@ Then, build Busybox with shared libraries, and install it again on the
 target filesystem. Make sure that the system still boots and see
 how much smaller the \code{busybox} executable got.
 \section{Implement a web interface for your device}
 Replicate \code{data/www/} to the \code{/www} directory in your target root filesystem.

More information about the training-materials-updates mailing list