switch_root - Man Page

switch to another filesystem as the root of the mount tree

Examples (TL;DR)


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

Print version and exit.

Exit Status

switch_root returns 1 on failure, it never returns on success.


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


Peter Jones, Jeremy Katz, Karel Zak

See Also

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

Reporting Bugs

For bug reports, use the issue tracker at https://github.com/util-linux/util-linux/issues.


The switch_root command is part of the util-linux package which can be downloaded from Linux Kernel Archive.

Referenced By

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

2024-01-31 util-linux 2.40 System Administration