switch_root man page

switch_root — switch to another filesystem as the root of the mount tree


switch_root [-hV]

switch_root newroot init [arg...]


switch_root moves already mounted /proc, /dev, /sys and /run to newroot and makes newroot the new root filesystem and starts init process.

WARNING: switch_root removes recursively all files and directories on the current root filesystem.


-h, --help
Display help text and exit.
-V, --version
Display version information and exit.

Return Value

switch_root returns 0 on success and 1 on failure.


switch_root will fail to function if newroot is not the root of a mount. If you want to switch root into a directory that does not meet this requirement then you can first use a bind-mounting trick to turn any directory into a mount point:

mount --bind $DIR $DIR

See Also

mount(8), chroot(2), init(8), mkinitrd(8)


Peter Jones <pjones@redhat.com>
Jeremy Katz <katzj@redhat.com>
Karel Zak <kzak@redhat.com>


The switch_root command is part of the util-linux package and is available from ftp://ftp.kernel.org/pub/linux/utils/ut….

Referenced By

namespaces(7), pid_namespaces(7), pivot_root(8).

Explore man page connections for switch_root(8).

util-linux June 2009