about summary refs log tree commit diff
diff options
context:
space:
mode:
authorLaurent Bercot <ska-skaware@skarnet.org>2017-01-24 17:48:24 +0000
committerLaurent Bercot <ska-skaware@skarnet.org>2017-01-24 17:48:24 +0000
commit917fab4b4ddf202b078eae83de3e1311f2111cfa (patch)
tree812bb6f665bd05772bf6531482cae965acd6dca2
parent5b7777a52d0b70b6094547c7cb4056aa9664f69d (diff)
downloads6-917fab4b4ddf202b078eae83de3e1311f2111cfa.tar.gz
s6-917fab4b4ddf202b078eae83de3e1311f2111cfa.tar.xz
s6-917fab4b4ddf202b078eae83de3e1311f2111cfa.zip
Delete obsolete examples/ROOT, refer to s6-linux-init instead
-rw-r--r--doc/s6-svscan-1.html19
-rw-r--r--examples/ROOT/README6
l---------examples/ROOT/dev1
-rw-r--r--examples/ROOT/etc/README5
l---------examples/ROOT/etc/init1
-rw-r--r--examples/ROOT/etc/s6-init/README9
-rw-r--r--examples/ROOT/etc/s6-init/env/PATH1
-rw-r--r--examples/ROOT/etc/s6-init/env/README6
l---------examples/ROOT/etc/s6-init/init1
-rwxr-xr-xexamples/ROOT/etc/s6-init/init-stage159
-rwxr-xr-xexamples/ROOT/etc/s6-init/init-stage227
-rwxr-xr-xexamples/ROOT/etc/s6-init/init-stage346
-rw-r--r--examples/ROOT/etc/s6-rc/README9
-rw-r--r--examples/ROOT/img/README4
-rw-r--r--examples/ROOT/img/tmpfs/README9
-rw-r--r--examples/ROOT/img/tmpfs/dev/README4
-rw-r--r--examples/ROOT/img/tmpfs/dev/pts/README2
l---------examples/ROOT/img/tmpfs/dev/shm1
-rw-r--r--examples/ROOT/img/tmpfs/service/.s6-svscan/README9
-rwxr-xr-xexamples/ROOT/img/tmpfs/service/.s6-svscan/SIGINT3
-rwxr-xr-xexamples/ROOT/img/tmpfs/service/.s6-svscan/SIGUSR13
-rwxr-xr-xexamples/ROOT/img/tmpfs/service/.s6-svscan/SIGUSR23
-rwxr-xr-xexamples/ROOT/img/tmpfs/service/.s6-svscan/crash13
l---------examples/ROOT/img/tmpfs/service/.s6-svscan/finish1
-rw-r--r--examples/ROOT/img/tmpfs/service/README5
-rw-r--r--examples/ROOT/img/tmpfs/service/getty/README2
-rwxr-xr-xexamples/ROOT/img/tmpfs/service/getty/run2
-rw-r--r--examples/ROOT/img/tmpfs/service/s6-svscan-log/README9
-rwxr-xr-xexamples/ROOT/img/tmpfs/service/s6-svscan-log/run13
-rw-r--r--examples/ROOT/img/tmpfs/shm/README3
-rw-r--r--examples/ROOT/img/tmpfs/tmp/README4
-rw-r--r--examples/ROOT/img/tmpfs/tmp/uncaught-logs/README4
-rw-r--r--examples/ROOT/mnt/README1
-rw-r--r--examples/ROOT/mnt/procfs/README1
l---------examples/ROOT/mnt/rofs1
-rw-r--r--examples/ROOT/mnt/rwfs/README1
-rw-r--r--examples/ROOT/mnt/sysfs/README1
-rw-r--r--examples/ROOT/mnt/tmpfs/README1
-rw-r--r--examples/ROOT/mnt/tmpfs/dev/README14
l---------examples/ROOT/proc1
l---------examples/ROOT/run1
l---------examples/ROOT/sys1
l---------examples/ROOT/tmp1
l---------examples/ROOT/var1
44 files changed, 11 insertions, 298 deletions
diff --git a/doc/s6-svscan-1.html b/doc/s6-svscan-1.html
index 64ef6b1..e58c54a 100644
--- a/doc/s6-svscan-1.html
+++ b/doc/s6-svscan-1.html
@@ -374,17 +374,20 @@ initialization tasks with the guarantee that s6-svscan is running.
 <p>
  This whole page may sound very theoretical, dry, wordy, and hard to
 grasp without a live example to try things on; unfortunately, s6 cannot provide
-live examples without becoming system-specific. However, it provides a whole
-set of script skeletons for you to edit and make your own working init.
+live examples without becoming system-specific.
 </p>
 
 <p>
- The <tt>examples/ROOT</tt> subdirectory in the s6 distribution contains
-the relevant parts of a small root filesystem that works under Linux and follows
-all that has been explained here. In every directory, a <tt>README</tt> file
-has been added, to sum up what this directory does. You can copy those files
-and modify them to suit your needs; if you have the proper software installed,
-and the right configuration, some of them might even work verbatim.
+ However, the
+<a href="http://skarnet.org/software/s6-linux-init/">s6-linux-init</a>
+package provides you with the
+<a href="http://skarnet.org/software/s6-linux-init/s6-linux-init-maker">s6-linux-init-maker</a>
+command, which produces a set of working scripts, including a script
+that is suitable as <tt>/sbin/init</tt>, for you to study and edit.
+You can <em>run</em> the <tt>s6-linux-init-maker</tt> command even
+on non-Linux systems: it will produce scripts that do not work as
+is for another OS, but can still be used for study and as a basis for
+a working stage 1 script.
 </p>
 
 </body>
diff --git a/examples/ROOT/README b/examples/ROOT/README
deleted file mode 100644
index 6e4806c..0000000
--- a/examples/ROOT/README
+++ /dev/null
@@ -1,6 +0,0 @@
-Study this filesystem tree skeleton carefully.
-After a few adjustments for your system, it can
-become the basis for a very fast, efficient and
-lightweight boot, with s6-svscan running as process 1
-for all of stage 2, i.e. practically the whole
-system lifetime.
diff --git a/examples/ROOT/dev b/examples/ROOT/dev
deleted file mode 120000
index c957e39..0000000
--- a/examples/ROOT/dev
+++ /dev/null
@@ -1 +0,0 @@
-mnt/tmpfs/dev
\ No newline at end of file
diff --git a/examples/ROOT/etc/README b/examples/ROOT/etc/README
deleted file mode 100644
index a605680..0000000
--- a/examples/ROOT/etc/README
+++ /dev/null
@@ -1,5 +0,0 @@
-Add this to your /etc/ directory.
-/etc/leapsecs.dat is needed for skalibs programs to work properly!
-/etc/init is what the kernel launches as process 1 if it does not
-find an init binary in other places. Make sure you remove other
-init programs to run this /etc/init as process 1 at boot time!
diff --git a/examples/ROOT/etc/init b/examples/ROOT/etc/init
deleted file mode 120000
index d97434e..0000000
--- a/examples/ROOT/etc/init
+++ /dev/null
@@ -1 +0,0 @@
-s6-init/init
\ No newline at end of file
diff --git a/examples/ROOT/etc/s6-init/README b/examples/ROOT/etc/s6-init/README
deleted file mode 100644
index 7e104fd..0000000
--- a/examples/ROOT/etc/s6-init/README
+++ /dev/null
@@ -1,9 +0,0 @@
-This is an example directory containing booting scripts
-that lead to s6-svscan running as process 1 in stage 2.
-
-Read them carefully and edit them to suit your needs.
-Some scripts are Linux-dependent; they can be easily
-adapted to other Unix systems.
-
-The skarnet.org servers actually run such a system, with
-scripts that are based on this model.
diff --git a/examples/ROOT/etc/s6-init/env/PATH b/examples/ROOT/etc/s6-init/env/PATH
deleted file mode 100644
index a4c496e..0000000
--- a/examples/ROOT/etc/s6-init/env/PATH
+++ /dev/null
@@ -1 +0,0 @@
-/command:/usr/bin:/bin:/usr/sbin:/sbin
diff --git a/examples/ROOT/etc/s6-init/env/README b/examples/ROOT/etc/s6-init/env/README
deleted file mode 100644
index 6c84e3b..0000000
--- a/examples/ROOT/etc/s6-init/env/README
+++ /dev/null
@@ -1,6 +0,0 @@
-
-This directory is read by s6-envdir at boot time.
-It contains environment variables that will be present in
-all the supervision tree, and all the launched services.
-Make sure to remove this file, or else you'll have a
-README environment variable in all your daemons. :)
diff --git a/examples/ROOT/etc/s6-init/init b/examples/ROOT/etc/s6-init/init
deleted file mode 120000
index 4ac5fd9..0000000
--- a/examples/ROOT/etc/s6-init/init
+++ /dev/null
@@ -1 +0,0 @@
-init-stage1
\ No newline at end of file
diff --git a/examples/ROOT/etc/s6-init/init-stage1 b/examples/ROOT/etc/s6-init/init-stage1
deleted file mode 100755
index 810948b..0000000
--- a/examples/ROOT/etc/s6-init/init-stage1
+++ /dev/null
@@ -1,59 +0,0 @@
-#!/command/execlineb -P
-
-# This file is the first program run at boot time,
-# as process 1.
-# Edit it to suit your needs.
-
-# Make sure everything is sane and ignore input
-s6-setsid -qb
-cd /
-umask 022
-fdclose 0
-
-# This should be printed to the console
-if { s6-echo "* init stage 1" }
-
-
-# Mount /sys and /proc
-if { s6-mount -wt sysfs sys /mnt/sysfs }
-if { s6-mount -wt proc proc /mnt/procfs }
-
-# Close remaining handles to /dev/console
-fdclose 1 fdclose 2
-
-# Now no process has any open fd to /dev/console (or to
-# anything for that matter).
-# We can safely overwrite the minimal /dev with the real one.
-
-# in case some Linux kernel has mounted a devtmpfs
-foreground { s6-umount /mnt/tmpfs/dev }
-
-# Make the tmpfs
-if { s6-mount -wt tmpfs -o mode=0755,size=67108864 tmpfs /mnt/tmpfs }
-
-# Copy the image to the tmpfs
-if { s6-hiercopy /img/tmpfs /mnt/tmpfs }
-
-# Now we have a working /dev and /tmp, and a minimal writable /service
-# with a catch-all logger and a getty. We're good for stage 2 !
-
-# Reopen stdin/stdout/stderr and make them point to the right places
-redirfd -r 0 /dev/null
-redirfd -wnb 1 /service/s6-svscan-log/fifo # (black magic: doesn't block)
-fdmove -c 2 1
-
-# Load the general environment
-s6-envdir /etc/s6-init/env
-
-# Fork the "init-stage2" script and have it ready to start as soon
-# as the catch-all logger is in place
-background
-{
-  s6-setsid
-  redirfd -w 1 /service/s6-svscan-log/fifo # (blocks until the logger reads)
-  /etc/s6-init/init-stage2
-}
-unexport !
-
-# Start stage 2.
-s6-svscan -st0 /service
diff --git a/examples/ROOT/etc/s6-init/init-stage2 b/examples/ROOT/etc/s6-init/init-stage2
deleted file mode 100755
index 86f31a5..0000000
--- a/examples/ROOT/etc/s6-init/init-stage2
+++ /dev/null
@@ -1,27 +0,0 @@
-#!/command/execlineb -P
-
-# This file is executed (not as process 1!) as soon as s6-svscan
-# starts. It should perform all the remaining one-time initialization
-# tasks.
-
-if -nt
-{
-
-# This should be logged in /mnt/tmpfs/uncaught-logs/current,
-# NOT on /dev/console !
-  if { s6-echo "* init-stage2 starting." }
-
-# Call your service manager commands here to run the boot scripts.
-  if { s6-rc-init /service }
-  if { s6-rc -u change normal-state }
-
-# We're done and the machine is fully operational.
-  s6-echo "* init-stage2 completed."
-}
-
-
-# If anything in the if -nt { } block fails, control jumps here.
-# No need to do much because there's already an operational getty running.
-
-redirfd -w 1 /dev/console
-s6-echo "\n!!!!!\ninit-stage2 failed, please log in and investigate.\n!!!!!"
diff --git a/examples/ROOT/etc/s6-init/init-stage3 b/examples/ROOT/etc/s6-init/init-stage3
deleted file mode 100755
index 7ea5639..0000000
--- a/examples/ROOT/etc/s6-init/init-stage3
+++ /dev/null
@@ -1,46 +0,0 @@
-#!/command/execlineb -S0
-
-# This is the shutdown script, running as process 1.
-
-# Make sure we have no open handle to anywhere else
-# than /dev/console
-cd /
-fdclose 0
-redirfd -w 1 /dev/console
-fdmove -c 2 1
-
-foreground { s6-echo "Syncing disks." }
-foreground { s6-sync }
-
-
-# Even if s6-rc and s6-svscan properly brought all the services down
-# before exec'ing into this script, users might have launched
-# background nohup processes, so we have to kill everything.
-
-foreground { s6-echo "Sending all processes the TERM signal." }
-foreground { s6-nuke -th }
-foreground { s6-sleep 1 }
-foreground { s6-echo "Sending all processes the KILL signal." }
-foreground { s6-nuke -k }
-
-# Here, s6-nuke sends a SIGKILL to every process on the system.
-# It kills itself, but not before the SIGKILL has been broadcast.
-# The "foreground" process runs as process 1, so it survives,
-# and execs into the rest of the script when s6-nuke dies.
-
-# Reap the huge army of zombies we just created
-wait { }
-
-
-foreground { s6-echo "Syncing disks." }
-foreground { s6-sync } # yes, it helps.
-foreground { s6-echo "Unmounting disks." }
-
-# Unmount all your filesystems here, turn off swap,
-# remount / read-only if needed, etc.
-# foreground { s6-umount /mnt/rwfs }
-
-# Reboot, halt or poweroff the machine, depending on the parameter
-# that was given to the script.
-foreground { s6-echo "\nPerforming "${1}"." }
-s6-${1} -f
diff --git a/examples/ROOT/etc/s6-rc/README b/examples/ROOT/etc/s6-rc/README
deleted file mode 100644
index 959f280..0000000
--- a/examples/ROOT/etc/s6-rc/README
+++ /dev/null
@@ -1,9 +0,0 @@
- If you are using s6-rc as your service manager, this directory should
-be the place where you store your compiled service databases.
-
- The /etc/s6-init/init-stage2 script invokes s6-rc which expects to
-find its data here by default.
-
- The /run/service/.s6-svscan/SIG{INT,USR1,USR2} scripts invoke
-s6-rc to bring down all the managed services before shutting down
-s6-svscan.
diff --git a/examples/ROOT/img/README b/examples/ROOT/img/README
deleted file mode 100644
index 185a3e6..0000000
--- a/examples/ROOT/img/README
+++ /dev/null
@@ -1,4 +0,0 @@
-This directory is read-only. It contains an image of the
-tmpfs that it copied as-is at boot-time (during stage 1
-init). It is only used at boot-time, it is never
-written to.
diff --git a/examples/ROOT/img/tmpfs/README b/examples/ROOT/img/tmpfs/README
deleted file mode 100644
index 0a9035d..0000000
--- a/examples/ROOT/img/tmpfs/README
+++ /dev/null
@@ -1,9 +0,0 @@
-/img/tmpfs is the hierarchy that will be copied to /mnt/tmpfs
-during stage 1 init, so the basics are covered for stage 2:
- - /dev points to a real, writable device directory
- - /tmp points to a real, writable temporary directory
- - /service points to a real, writable scan directory that
-already contains basic services (s6-svscan's own logger and
-an early getty)
- - /mnt/tmpfs/uncaught-logs is the place in RAM where the
-catch-all logger stores and rotates its logs.
diff --git a/examples/ROOT/img/tmpfs/dev/README b/examples/ROOT/img/tmpfs/dev/README
deleted file mode 100644
index 8b944ff..0000000
--- a/examples/ROOT/img/tmpfs/dev/README
+++ /dev/null
@@ -1,4 +0,0 @@
-This directory is the /dev image.
-It should contain all your static devices.
-It MUST contain at least /dev/null and /dev/console,
-else the system will crash during stage 1 init.
diff --git a/examples/ROOT/img/tmpfs/dev/pts/README b/examples/ROOT/img/tmpfs/dev/pts/README
deleted file mode 100644
index e0553f0..0000000
--- a/examples/ROOT/img/tmpfs/dev/pts/README
+++ /dev/null
@@ -1,2 +0,0 @@
-The place (after it's copied to the tmpfs) where
-the virtual devpts filesystem will be mounted.
diff --git a/examples/ROOT/img/tmpfs/dev/shm b/examples/ROOT/img/tmpfs/dev/shm
deleted file mode 120000
index c71cdc8..0000000
--- a/examples/ROOT/img/tmpfs/dev/shm
+++ /dev/null
@@ -1 +0,0 @@
-../shm
\ No newline at end of file
diff --git a/examples/ROOT/img/tmpfs/service/.s6-svscan/README b/examples/ROOT/img/tmpfs/service/.s6-svscan/README
deleted file mode 100644
index f61dc8d..0000000
--- a/examples/ROOT/img/tmpfs/service/.s6-svscan/README
+++ /dev/null
@@ -1,9 +0,0 @@
-This is the image of the control directory of the s6-svscan process
-running as pid 1.
-"crash" is run if s6-svscan fails.
-"finish" is run when s6-svscan exits its loop.
-
- The "SIG*" files are run as children of s6-svscan when it receives
-the corresponding signal. SIGINT, SIGUSR1 and SIGUSR2 will all
-trigger "s6-rc -da change" (the service manager will shut down all
-the services), then s6-svscan will be told to exit its loop.
diff --git a/examples/ROOT/img/tmpfs/service/.s6-svscan/SIGINT b/examples/ROOT/img/tmpfs/service/.s6-svscan/SIGINT
deleted file mode 100755
index f0ff213..0000000
--- a/examples/ROOT/img/tmpfs/service/.s6-svscan/SIGINT
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/command/execlineb -P
-foreground { s6-rc -da change }
-s6-svscanctl -6 .
diff --git a/examples/ROOT/img/tmpfs/service/.s6-svscan/SIGUSR1 b/examples/ROOT/img/tmpfs/service/.s6-svscan/SIGUSR1
deleted file mode 100755
index cb4a4ef..0000000
--- a/examples/ROOT/img/tmpfs/service/.s6-svscan/SIGUSR1
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/command/execlineb -P
-foreground { s6-rc -da change }
-s6-svscanctl -0 .
diff --git a/examples/ROOT/img/tmpfs/service/.s6-svscan/SIGUSR2 b/examples/ROOT/img/tmpfs/service/.s6-svscan/SIGUSR2
deleted file mode 100755
index e5932be..0000000
--- a/examples/ROOT/img/tmpfs/service/.s6-svscan/SIGUSR2
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/command/execlineb -P
-foreground { s6-rc -da change }
-s6-svscanctl -7 .
diff --git a/examples/ROOT/img/tmpfs/service/.s6-svscan/crash b/examples/ROOT/img/tmpfs/service/.s6-svscan/crash
deleted file mode 100755
index 501e316..0000000
--- a/examples/ROOT/img/tmpfs/service/.s6-svscan/crash
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/command/execlineb -P
-
-# This file is run when an unrecoverable error happens
-# to s6-svscan. Edit it to suit your needs.
-
-cd /
-redirfd -r 0 /dev/console
-redirfd -w 1 /dev/console
-fdmove -c 2 1
-
-foreground { s6-echo "s6-svscan panicked! Dropping to a root shell.\n" }
-
-/bin/sh -i
diff --git a/examples/ROOT/img/tmpfs/service/.s6-svscan/finish b/examples/ROOT/img/tmpfs/service/.s6-svscan/finish
deleted file mode 120000
index feb771e..0000000
--- a/examples/ROOT/img/tmpfs/service/.s6-svscan/finish
+++ /dev/null
@@ -1 +0,0 @@
-/etc/s6-init/init-stage3
\ No newline at end of file
diff --git a/examples/ROOT/img/tmpfs/service/README b/examples/ROOT/img/tmpfs/service/README
deleted file mode 100644
index dab0447..0000000
--- a/examples/ROOT/img/tmpfs/service/README
+++ /dev/null
@@ -1,5 +0,0 @@
-This is the initial image of the scan directory.
-When init executes into s6-svscan, s6-svscan will immediately
-start the "s6-svscan-log" service, which logs s6-svscan's own
-output, and the "getty1" service, which spawns a getty on
-tty1 as early as possible, in case debugging is needed.
diff --git a/examples/ROOT/img/tmpfs/service/getty/README b/examples/ROOT/img/tmpfs/service/getty/README
deleted file mode 100644
index efb079b..0000000
--- a/examples/ROOT/img/tmpfs/service/getty/README
+++ /dev/null
@@ -1,2 +0,0 @@
-This service is started very early, to make sure a tty exists as soon
-as s6-svscan is run, so early debugging is possible.
diff --git a/examples/ROOT/img/tmpfs/service/getty/run b/examples/ROOT/img/tmpfs/service/getty/run
deleted file mode 100755
index 3240ffd..0000000
--- a/examples/ROOT/img/tmpfs/service/getty/run
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/command/execlineb -P
-getty -L -H DEBUG 38400 tty1
diff --git a/examples/ROOT/img/tmpfs/service/s6-svscan-log/README b/examples/ROOT/img/tmpfs/service/s6-svscan-log/README
deleted file mode 100644
index 282d4f0..0000000
--- a/examples/ROOT/img/tmpfs/service/s6-svscan-log/README
+++ /dev/null
@@ -1,9 +0,0 @@
-This service reads from the "fifo" named pipe and logs
-what it reads to the /tmp/uncaught-logs log directory.
-The whole supervision tree has its stderr redirected to "fifo",
-as well as services that do not have their own logger.
-So, /tmp/uncaught-logs is the catch-all logger: logs that aren't
-caught anywhere else end up there.
-
- You should create the "fifo" named pipe in this directory,
-belonging to nobody:nogroup with rights 0622.
diff --git a/examples/ROOT/img/tmpfs/service/s6-svscan-log/run b/examples/ROOT/img/tmpfs/service/s6-svscan-log/run
deleted file mode 100755
index 47eb828..0000000
--- a/examples/ROOT/img/tmpfs/service/s6-svscan-log/run
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/command/execlineb -P
-redirfd -w 2 /dev/console
-redirfd -rnb 0 fifo
-s6-setuidgid nobody
-exec -c
-s6-log -bp t /mnt/tmpfs/uncaught-logs
-
-#  The -p option is important:
-# even if s6-svscan is told to kill everything,
-# you do not want this logger to die.
-#  The -b option ensures s6-log processes lines one
-# at a time, so it doesn't eat up too much memory
-# in case of a problem spike.
diff --git a/examples/ROOT/img/tmpfs/shm/README b/examples/ROOT/img/tmpfs/shm/README
deleted file mode 100644
index 7ef7853..0000000
--- a/examples/ROOT/img/tmpfs/shm/README
+++ /dev/null
@@ -1,3 +0,0 @@
-This directory exists so /dev/shm points to a place
-in the tmpfs.
-It should have "1777" rights.
diff --git a/examples/ROOT/img/tmpfs/tmp/README b/examples/ROOT/img/tmpfs/tmp/README
deleted file mode 100644
index 1e437a0..0000000
--- a/examples/ROOT/img/tmpfs/tmp/README
+++ /dev/null
@@ -1,4 +0,0 @@
-This directory contains what will be /mnt/tmpfs/tmp after
-stage 1 init, so it contains everything /tmp should point
-to.
-It should have "1777" rights.
diff --git a/examples/ROOT/img/tmpfs/tmp/uncaught-logs/README b/examples/ROOT/img/tmpfs/tmp/uncaught-logs/README
deleted file mode 100644
index c13d539..0000000
--- a/examples/ROOT/img/tmpfs/tmp/uncaught-logs/README
+++ /dev/null
@@ -1,4 +0,0 @@
-This directory should not belong to root, but to nobody:nogroup;
-it should also have "2700" rights.
-It is the catch-all logdir.
-/tmp/uncaught-logs/current will be the current catch-all log file.
diff --git a/examples/ROOT/mnt/README b/examples/ROOT/mnt/README
deleted file mode 100644
index 7f0e106..0000000
--- a/examples/ROOT/mnt/README
+++ /dev/null
@@ -1 +0,0 @@
-The directory containing all the real mount points.
diff --git a/examples/ROOT/mnt/procfs/README b/examples/ROOT/mnt/procfs/README
deleted file mode 100644
index 79b2fe0..0000000
--- a/examples/ROOT/mnt/procfs/README
+++ /dev/null
@@ -1 +0,0 @@
-/proc will be mounted here.
diff --git a/examples/ROOT/mnt/rofs b/examples/ROOT/mnt/rofs
deleted file mode 120000
index a96aa0e..0000000
--- a/examples/ROOT/mnt/rofs
+++ /dev/null
@@ -1 +0,0 @@
-..
\ No newline at end of file
diff --git a/examples/ROOT/mnt/rwfs/README b/examples/ROOT/mnt/rwfs/README
deleted file mode 100644
index c8b4ade..0000000
--- a/examples/ROOT/mnt/rwfs/README
+++ /dev/null
@@ -1 +0,0 @@
-If you have a disk read-write filesystem, you may mount it here.
diff --git a/examples/ROOT/mnt/sysfs/README b/examples/ROOT/mnt/sysfs/README
deleted file mode 100644
index 9c02561..0000000
--- a/examples/ROOT/mnt/sysfs/README
+++ /dev/null
@@ -1 +0,0 @@
-/sys will be mounted here.
diff --git a/examples/ROOT/mnt/tmpfs/README b/examples/ROOT/mnt/tmpfs/README
deleted file mode 100644
index 0900a3a..0000000
--- a/examples/ROOT/mnt/tmpfs/README
+++ /dev/null
@@ -1 +0,0 @@
-The general tmpfs will be mounted here.
diff --git a/examples/ROOT/mnt/tmpfs/dev/README b/examples/ROOT/mnt/tmpfs/dev/README
deleted file mode 100644
index 4489cc5..0000000
--- a/examples/ROOT/mnt/tmpfs/dev/README
+++ /dev/null
@@ -1,14 +0,0 @@
-This directory (/mnt/tmpfs/dev on the root filesystem) will
-be brutally overriden when the tmpfs is mounted. Its only
-purpose is to provide an initial /dev/console to the kernel
-when it starts process 1.
-The directory should contain a working /dev/console device!
-
- init-stage1 will close all handles to this /dev/console,
-then mount the tmpfs and copy the tmpfs image to the tmpfs
-- the image contains a full version of /dev, which will then
-be used.
- This trick is necessary to have a working read-write /dev
-when you have a root-only filesystem and when you cannot or
-do not want to rely on fancy Linux-specific tricks such as
-devtmpfs.
diff --git a/examples/ROOT/proc b/examples/ROOT/proc
deleted file mode 120000
index e018ea9..0000000
--- a/examples/ROOT/proc
+++ /dev/null
@@ -1 +0,0 @@
-mnt/procfs
\ No newline at end of file
diff --git a/examples/ROOT/run b/examples/ROOT/run
deleted file mode 120000
index cc11a99..0000000
--- a/examples/ROOT/run
+++ /dev/null
@@ -1 +0,0 @@
-mnt/tmpfs
\ No newline at end of file
diff --git a/examples/ROOT/sys b/examples/ROOT/sys
deleted file mode 120000
index 6dc454d..0000000
--- a/examples/ROOT/sys
+++ /dev/null
@@ -1 +0,0 @@
-mnt/sysfs
\ No newline at end of file
diff --git a/examples/ROOT/tmp b/examples/ROOT/tmp
deleted file mode 120000
index d3b5871..0000000
--- a/examples/ROOT/tmp
+++ /dev/null
@@ -1 +0,0 @@
-mnt/tmpfs/tmp
\ No newline at end of file
diff --git a/examples/ROOT/var b/examples/ROOT/var
deleted file mode 120000
index a492c97..0000000
--- a/examples/ROOT/var
+++ /dev/null
@@ -1 +0,0 @@
-mnt/rwfs/var
\ No newline at end of file