OSDN Git Service

Retire LDP man-pages repository
[linuxjm/LDP_man-pages.git] / original / man4 / initrd.4
diff --git a/original/man4/initrd.4 b/original/man4/initrd.4
deleted file mode 100644 (file)
index 1839d4c..0000000
+++ /dev/null
@@ -1,492 +0,0 @@
-.\" This man-page is Copyright (C) 1997 John S. Kallal
-.\"
-.\" %%%LICENSE_START(VERBATIM)
-.\" Permission is granted to make and distribute verbatim copies of this
-.\" manual provided the copyright notice and this permission notice are
-.\" preserved on all copies.
-.\"
-.\" Permission is granted to copy and distribute modified versions of this
-.\" manual under the conditions for verbatim copying, provided that the
-.\" entire resulting derived work is distributed under the terms of a
-.\" permission notice identical to this one.
-.\"
-.\" Since the Linux kernel and libraries are constantly changing, this
-.\" manual page may be incorrect or out-of-date.  The author(s) assume no
-.\" responsibility for errors or omissions, or for damages resulting from
-.\" the use of the information contained herein.  The author(s) may not
-.\" have taken the same level of care in the production of this manual,
-.\" which is licensed free of charge, as they might when working
-.\" professionally.
-.\"
-.\" Formatted or processed versions of this manual, if unaccompanied by
-.\" the source, must acknowledge the copyright and author(s) of this work.
-.\" %%%LICENSE_END
-.\"
-.\" If the you wish to distribute versions of this work under other
-.\" conditions than the above, please contact the author(s) at the following
-.\" for permission:
-.\"
-.\"  John S. Kallal -
-.\"    email: <kallal@voicenet.com>
-.\"    mail: 518 Kerfoot Farm RD, Wilmington, DE 19803-2444, USA
-.\"    phone: (302)654-5478
-.\"
-.\" $Id: initrd.4,v 0.9 1997/11/07 05:05:32 kallal Exp kallal $
-.TH INITRD 4 2010-09-04 "Linux" "Linux Programmer's Manual"
-.SH NAME
-initrd \- boot loader initialized RAM disk
-.SH CONFIGURATION
-The
-.I /dev/initrd
-is a read-only block device assigned
-major number 1 and minor number 250.
-Typically
-.I /dev/initrd
-is owned by
-.I root.disk
-with mode 0400 (read access by root only).
-If the Linux system does not have
-.I /dev/initrd
-already created, it can be created with the following commands:
-.nf
-\fB
-        mknod \-m 400 /dev/initrd b 1 250
-        chown root:disk /dev/initrd
-\fP
-.fi
-.PP
-Also, support for both "RAM disk" and "Initial RAM disk"
-(e.g.,
-.BR CONFIG_BLK_DEV_RAM=y
-and
-.BR CONFIG_BLK_DEV_INITRD=y )
-must be compiled directly into the Linux kernel to use
-.IR /dev/initrd .
-When using
-.IR /dev/initrd ,
-the RAM disk driver cannot be loaded as a module.
-.\"
-.\"
-.\"
-.SH DESCRIPTION
-The special file
-.I /dev/initrd
-is a read-only block device.
-This device is a RAM disk that is initialized (e.g., loaded)
-by the boot loader before the kernel is started.
-The kernel then can use
-.IR /dev/initrd "'s "
-contents for a two-phase system boot-up.
-.PP
-In the first boot-up phase, the kernel starts up
-and mounts an initial root filesystem from the contents of
-.I /dev/initrd
-(e.g., RAM disk initialized by the boot loader).
-In the second phase, additional drivers or other modules
-are loaded from the initial root device's contents.
-After loading the additional modules, a new root filesystem
-(i.e., the normal root filesystem) is mounted from a
-different device.
-.\"
-.\"
-.\"
-.SS Boot-up operation
-When booting up with
-.BR initrd ,
-the system boots as follows:
-.IP 1. 3
-The boot loader loads the kernel program and
-.IR /dev/initrd 's
-contents into memory.
-.IP 2.
-On kernel startup,
-the kernel uncompresses and copies the contents of the device
-.I /dev/initrd
-onto device
-.I /dev/ram0
-and then frees the memory used by
-.IR /dev/initrd .
-.IP 3.
-The kernel then read-write mounts the device
-.I /dev/ram0
-as the initial root filesystem.
-.IP 4.
-If the indicated normal root filesystem is also the initial
-root filesystem (e.g.,
-.IR /dev/ram0 )
-then the kernel skips to the last step for the usual boot sequence.
-.IP 5.
-If the executable file
-.IR /linuxrc
-is present in the initial root filesystem,
-.I /linuxrc
-is executed with UID 0.
-(The file
-.I /linuxrc
-must have executable permission.
-The file
-.I /linuxrc
-can be any valid executable, including a shell script.)
-.IP 6.
-If
-.I /linuxrc
-is not executed or when
-.I /linuxrc
-terminates, the normal root filesystem is mounted.
-(If
-.I /linuxrc
-exits with any filesystems mounted on the initial root
-filesystem, then the behavior of the kernel is
-.BR UNSPECIFIED .
-See the NOTES section for the current kernel behavior.)
-.IP 7.
-If the normal root filesystem has a directory
-.IR /initrd ,
-the device
-.I /dev/ram0
-is moved from
-.IR /
-to
-.IR /initrd .
-Otherwise, if the directory
-.IR /initrd
-does not exist, the device
-.I /dev/ram0
-is unmounted.
-(When moved from
-.IR /
-to
-.IR /initrd ,
-.I /dev/ram0
-is not unmounted and therefore processes can remain running from
-.IR /dev/ram0 .
-If directory
-.I /initrd
-does not exist on the normal root filesystem
-and any processes remain running from
-.IR /dev/ram0
-when
-.I /linuxrc
-exits, the behavior of the kernel is
-.BR UNSPECIFIED .
-See the NOTES section for the current kernel behavior.)
-.IP 8.
-The usual boot sequence (e.g., invocation of
-.IR /sbin/init )
-is performed on the normal root filesystem.
-.\"
-.\"
-.\"
-.SS Options
-The following boot loader options, when used with
-.BR initrd ,
-affect the kernel's boot-up operation:
-.TP
-.BI initrd= "filename"
-Specifies the file to load as the contents of
-.IR /dev/initrd .
-For
-.B LOADLIN
-this is a command-line option.
-For
-.B LILO
-you have to use this command in the
-.B LILO
-configuration file
-.IR /etc/lilo.config .
-The filename specified with this
-option will typically be a gzipped filesystem image.
-.TP
-.I noinitrd
-This boot option disables the two-phase boot-up operation.
-The kernel performs the usual boot sequence as if
-.I /dev/initrd
-was not initialized.
-With this option, any contents of
-.I /dev/initrd
-loaded into memory by the boot loader contents are preserved.
-This option permits the contents of
-.I /dev/initrd
-to be any data and need not be limited to a filesystem image.
-However, device
-.I /dev/initrd
-is read-only and can be read only one time after system startup.
-.TP
-.BI root= "device-name"
-Specifies the device to be used as the normal root filesystem.
-For
-.B LOADLIN
-this is a command-line option.
-For
-.B LILO
-this is a boot time option or
-can be used as an option line in the
-.B LILO
-configuration file
-.IR /etc/lilo.config .
-The device specified by the this option must be a mountable
-device having a suitable root filesystem.
-.\"
-.\"
-.\"
-.SS Changing the normal root filesystem
-By default,
-the kernel's settings
-(e.g., set in the kernel file with
-.BR rdev (8)
-or compiled into the kernel file),
-or the boot loader option setting
-is used for the normal root filesystems.
-For an NFS-mounted normal root filesystem, one has to use the
-.B nfs_root_name
-and
-.B nfs_root_addrs
-boot options to give the NFS settings.
-For more information on NFS-mounted root see the kernel documentation file
-.BR Documentation/filesystems/nfsroot.txt .
-For more information on setting the root filesystem see also the
-.BR LILO
-and
-.BR LOADLIN
-documentation.
-.PP
-It is also possible for the
-.I /linuxrc
-executable to change the normal root device.
-For
-.I /linuxrc
-to change the normal root device,
-.IR /proc
-must be mounted.
-After mounting
-.IR /proc ,
-.I /linuxrc
-changes the normal root device by writing into the proc files
-.IR /proc/sys/kernel/real-root-dev ,
-.IR /proc/sys/kernel/nfs-root-name ,
-and
-.IR /proc/sys/kernel/nfs-root-addrs .
-For a physical root device, the root device is changed by having
-.I /linuxrc
-write the new root filesystem device number into
-.IR /proc/sys/kernel/real-root-dev .
-For an NFS root filesystem, the root device is changed by having
-.I /linuxrc
-write the NFS setting into files
-.IR /proc/sys/kernel/nfs-root-name
-and
-.I /proc/sys/kernel/nfs-root-addrs
-and then writing 0xff (e.g., the pseudo-NFS-device number) into file
-.IR /proc/sys/kernel/real-root-dev .
-For example, the following shell command line would change
-the normal root device to
-.IR /dev/hdb1 :
-.nf
-
-    echo 0x365 >/proc/sys/kernel/real-root-dev
-
-.fi
-For an NFS example, the following shell command lines would change the
-normal root device to the NFS directory
-.I /var/nfsroot
-on a local networked NFS server with IP number 193.8.232.7 for a system with
-IP number 193.8.232.2 and named "idefix":
-.nf
-
-    echo /var/nfsroot >/proc/sys/kernel/nfs-root-name
-    echo 193.8.232.2:193.8.232.7::255.255.255.0:idefix \\
-        >/proc/sys/kernel/nfs-root-addrs
-    echo 255 >/proc/sys/kernel/real-root-dev
-.fi
-
-.BR Note :
-The use of
-.I /proc/sys/kernel/real-root-dev
-to change the root filesystem is obsolete.
-See the Linux kernel source file
-.I Documentation/initrd.txt
-as well as
-.BR pivot_root (2)
-and
-.BR pivot_root (8)
-for information on the modern method of changing the root filesystem.
-.\" FIXME . Should this manual page  describe the pivot_root mechanism?
-.\"
-.\"
-.\"
-.SS Usage
-The main motivation for implementing
-.B initrd
-was to allow for modular kernel configuration at system installation.
-.PP
-A possible system installation scenario is as follows:
-.IP 1. 3
-The loader program boots from floppy or other media with a minimal kernel
-(e.g., support for
-.IR /dev/ram ,
-.IR /dev/initrd ,
-and the ext2 filesystem) and loads
-.IR /dev/initrd
-with a gzipped version of the initial filesystem.
-.IP 2.
-The executable
-.I /linuxrc
-determines what is needed to (1) mount the normal root filesystem
-(i.e., device type, device drivers, filesystem) and (2) the
-distribution media (e.g., CD-ROM, network, tape, ...).
-This can be done by asking the user, by auto-probing,
-or by using a hybrid approach.
-.IP 3.
-The executable
-.I /linuxrc
-loads the necessary modules from the initial root filesystem.
-.IP 4.
-The executable
-.I /linuxrc
-creates and populates the root filesystem.
-(At this stage the normal root filesystem does not have to be a
-completed system yet.)
-.IP 5.
-The executable
-.IR /linuxrc
-sets
-.IR /proc/sys/kernel/real-root-dev ,
-unmount
-.IR /proc ,
-the normal root filesystem and any other filesystems
-it has mounted, and then terminates.
-.IP 6.
-The kernel then mounts the normal root filesystem.
-.IP 7.
-Now that the filesystem is accessible and intact,
-the boot loader can be installed.
-.IP 8.
-The boot loader is configured to load into
-.I /dev/initrd
-a filesystem with the set of modules that was used to bring up the system.
-(e.g., Device
-.I /dev/ram0
-can be modified, then unmounted, and finally, the image is written from
-.I /dev/ram0
-to a file.)
-.IP 9.
-The system is now bootable and additional installation tasks can be
-performed.
-.PP
-The key role of
-.I /dev/initrd
-in the above is to reuse the configuration data during normal system operation
-without requiring initial kernel selection, a large generic kernel or,
-recompiling the kernel.
-.PP
-A second scenario is for installations where Linux runs on systems with
-different hardware configurations in a single administrative network.
-In such cases, it may be desirable to use only a small set of kernels
-(ideally only one) and to keep the system-specific part of configuration
-information as small as possible.
-In this case, create a common file
-with all needed modules.
-Then, only the
-.I /linuxrc
-file or a file executed by
-.I /linuxrc
-would be different.
-.PP
-A third scenario is more convenient recovery disks.
-Because information like the location of the root filesystem
-partition is not needed at boot time, the system loaded from
-.I /dev/initrd
-can use a dialog and/or auto-detection followed by a
-possible sanity check.
-.PP
-Last but not least, Linux distributions on CD-ROM may use
-.B initrd
-for easy installation from the CD-ROM.
-The distribution can use
-.B LOADLIN
-to directly load
-.I /dev/initrd
-from CD-ROM without the need of any floppies.
-The distribution could also use a
-.B LILO
-boot floppy and then bootstrap a bigger RAM disk via
-.IR /dev/initrd
-from the CD-ROM.
-.\"
-.\"
-.\"
-.SH FILES
-.I /dev/initrd
-.br
-.I /dev/ram0
-.br
-.I /linuxrc
-.br
-.I /initrd
-.\"
-.\"
-.\"
-.SH NOTES
-.IP 1. 3
-With the current kernel, any filesystems that remain mounted when
-.I /dev/ram0
-is moved from
-.I /
-to
-.I /initrd
-continue to be accessible.
-However, the
-.I /proc/mounts
-entries are not updated.
-.IP 2.
-With the current kernel, if directory
-.I /initrd
-does not exist, then
-.I /dev/ram0
-will
-.B not
-be fully unmounted if
-.I /dev/ram0
-is used by any process or has any filesystem mounted on it.
-If
-.IR /dev/ram0
-is
-.B not
-fully unmounted, then
-.I /dev/ram0
-will remain in memory.
-.IP 3.
-Users of
-.I /dev/initrd
-should not depend on the behavior give in the above notes.
-The behavior may change in future versions of the Linux kernel.
-.\"
-.\"
-.\"
-.\" .SH AUTHORS
-.\" The kernel code for device
-.\" .BR initrd
-.\" was written by Werner Almesberger <almesber@lrc.epfl.ch> and
-.\" Hans Lermen <lermen@elserv.ffm.fgan.de>.
-.\" The code for
-.\" .BR initrd
-.\" was added to the baseline Linux kernel in development version 1.3.73.
-.SH SEE ALSO
-.BR chown (1),
-.BR mknod (1),
-.BR ram (4),
-.BR freeramdisk (8),
-.BR rdev (8)
-
-.I Documentation/initrd.txt
-in the Linux kernel source tree, the LILO documentation,
-the LOADLIN documentation, the SYSLINUX documentation
-.SH COLOPHON
-This page is part of release 3.79 of the Linux
-.I man-pages
-project.
-A description of the project,
-information about reporting bugs,
-and the latest version of this page,
-can be found at
-\%http://www.kernel.org/doc/man\-pages/.