Documentation/admin-guide/nfs/nfsroot.rst

Source file repositories/reference/linux-study-clean/Documentation/admin-guide/nfs/nfsroot.rst

File Facts

System
Linux kernel
Corpus path
Documentation/admin-guide/nfs/nfsroot.rst
Extension
.rst
Size
13177 bytes
Lines
365
Domain
Support Tooling And Documentation
Bucket
Documentation
Inferred role
Support Tooling And Documentation: documentation
Status
atlas-only

Why This File Exists

Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.

Dependency Surface

Detected Declarations

Annotated Snippet

===============================================
Mounting the root filesystem via NFS (nfsroot)
===============================================

:Authors:
	Written 1996 by Gero Kuhlmann <gero@gkminix.han.de>

	Updated 1997 by Martin Mares <mj@atrey.karlin.mff.cuni.cz>

	Updated 2006 by Nico Schottelius <nico-kernel-nfsroot@schottelius.org>

	Updated 2006 by Horms <horms@verge.net.au>

	Updated 2018 by Chris Novakovic <chris@chrisn.me.uk>



In order to use a diskless system, such as an X-terminal or printer server for
example, it is necessary for the root filesystem to be present on a non-disk
device. This may be an initramfs (see
Documentation/filesystems/ramfs-rootfs-initramfs.rst), a ramdisk (see
Documentation/admin-guide/initrd.rst) or a filesystem mounted via NFS. The
following text describes on how to use NFS for the root filesystem. For the rest
of this text 'client' means the diskless system, and 'server' means the NFS
server.




Enabling nfsroot capabilities
=============================

In order to use nfsroot, NFS client support needs to be selected as
built-in during configuration. Once this has been selected, the nfsroot
option will become available, which should also be selected.

In the networking options, kernel level autoconfiguration can be selected,
along with the types of autoconfiguration to support. Selecting all of
DHCP, BOOTP and RARP is safe.




Kernel command line
===================

When the kernel has been loaded by a boot loader (see below) it needs to be
told what root fs device to use. And in the case of nfsroot, where to find
both the server and the name of the directory on the server to mount as root.
This can be established using the following kernel command line parameters:


root=/dev/nfs
  This is necessary to enable the pseudo-NFS-device. Note that it's not a
  real device but just a synonym to tell the kernel to use NFS instead of
  a real device.


nfsroot=[<server-ip>:]<root-dir>[,<nfs-options>]
  If the `nfsroot' parameter is NOT given on the command line,
  the default ``"/tftpboot/%s"`` will be used.

  <server-ip>	Specifies the IP address of the NFS server.
		The default address is determined by the ip parameter
		(see below). This parameter allows the use of different
		servers for IP autoconfiguration and NFS.

  <root-dir>	Name of the directory on the server to mount as root.
		If there is a "%s" token in the string, it will be
		replaced by the ASCII-representation of the client's

Annotation

Implementation Notes