| .\" Copyright 1992, 1993 Rickard E. Faith (faith@cs.unc.edu) |
| .\" May be distributed under the GNU General Public License |
| .\" Changes from sct@dcs.ed.ac.uk added Sat Oct 9 09:54:00 1993. |
| .TH RDEV 8 "20 November 1993" "Linux 0.99" "Linux Programmer's Manual" |
| .SH NAME |
| rdev \- query/set image root device, RAM disk size, or video mode |
| .SH SYNOPSIS |
| .B rdev |
| .RB [ \-Rrvh ] |
| .RB [ \-o |
| .IR offset ] |
| .RI [ image |
| .RI [ value |
| .RI [ offset ]]] |
| .br |
| .B rdev |
| .RB [ \-o |
| .IR offset ] |
| .RI [ image |
| .RI [ root_device |
| .RI [ offset ]]] |
| .br |
| .B ramsize |
| .RB [ \-o |
| .IR offset ] |
| .RI [ image |
| .RI [ size |
| .RI [ offset ]]] |
| .br |
| .B vidmode |
| .RB [ \-o |
| .IR offset ] |
| .RI [ image |
| .RI [ mode |
| .RI [ offset ]]] |
| .br |
| .B rootflags |
| .RB [ \-o |
| .IR offset ] |
| .RI [ image |
| .RI [ flags |
| .RI [ offset ]]] |
| .SH DESCRIPTION |
| With no arguments, |
| .B rdev |
| outputs an |
| .I /etc/mtab |
| line for the current root file system. |
| With no arguments, |
| .BR ramsize ", " vidmode ", and " rootflags |
| print usage information. |
| |
| In a bootable image for the Linux kernel on i386, there are several pairs |
| of bytes which specify the root device, the video mode, and the size of |
| the RAM disk. These pairs of bytes, by default, begin |
| at offset 504 (decimal) in the kernel image: |
| |
| .nf |
| .RS |
| 498 Root flags |
| (500 and 502 Reserved) |
| 504 RAM Disk Size |
| 506 VGA Mode |
| 508 Root Device |
| (510 Boot Signature) |
| .RE |
| .fi |
| |
| .B rdev |
| will change these values. |
| |
| Typical values for the |
| .I image |
| parameter, which is a bootable Linux kernel image, might be: |
| |
| .nf |
| .RS |
| /vmlinux |
| /vmunix |
| /boot/bzImage-2.4.0 |
| /dev/fd0 |
| /dev/fd1 |
| .RE |
| .fi |
| |
| When using the |
| .B rdev |
| command, the |
| .I root_device |
| parameter might be something like: |
| |
| .nf |
| .RS |
| /dev/hda1 |
| /dev/hdf13 |
| /dev/sda2 |
| /dev/sdc4 |
| /dev/ida/c0d0p1 |
| .RE |
| .fi |
| |
| One may also specify the device by a comma-separated pair |
| of decimal integers |
| .IR major , minor . |
| |
| For the |
| .B ramsize |
| command, the |
| .I size |
| parameter specifies the size of the RAM disk in kilobytes. 2.0.x kernels |
| and newer dynamically allocate the ramdisk and do not need this setting. |
| |
| For the |
| .B rootflags |
| command, the |
| .I flags |
| parameter contains extra information used when mounting root. |
| Currently the only effect of these flags is to force the kernel to |
| mount the root filesystem in readonly mode if |
| .I flags |
| is non-zero. |
| |
| For the |
| .B vidmode |
| command, the |
| .I mode |
| parameter specifies the video mode: |
| |
| .nf |
| .RS |
| -3 = Prompt |
| -2 = Extended VGA |
| -1 = Normal VGA |
| 0 = as if "0" was pressed at the prompt |
| 1 = as if "1" was pressed at the prompt |
| 2 = as if "2" was pressed at the prompt |
| n = as if "n" was pressed at the prompt |
| .RE |
| .fi |
| |
| If the |
| .I value |
| is not specified, the |
| .I image |
| will be examined to determine the current settings. |
| .SH OPTIONS |
| .TP |
| .B \-r |
| Causes |
| .B rdev |
| to act like |
| .BR ramsize |
| (Not relevant for 2.0.x and newer kernels). |
| .TP |
| .B \-R |
| Causes |
| .B rdev |
| to act like |
| .BR rootflags . |
| .TP |
| .B \-v |
| Causes |
| .B rdev |
| to act like |
| .BR vidmode . |
| .TP |
| .B \-h |
| Provides help. |
| .SH BUGS |
| The |
| .B rdev |
| utility, when used other than to find a name for the current root device, |
| is an ancient hack that works by patching a kernel image at a magic offset |
| with magic numbers. It does not work on architectures other than i386. |
| Its use is strongly discouraged. Use a boot loader like SysLinux or LILO |
| instead. |
| .SH HISTORY |
| At offset 502 there used to be the device number of the swap device |
| (in Linux 0.12), and "rdev -s" or "swapdev" would set this. |
| However, since Linux 0.95 this constant is not used any longer, |
| and the swap device is specified using the |
| .BR swapon (2) |
| system call. |
| |
| At offset 504 there used to be the size of the ramdisk in kilobytes. |
| One would specify a size, and this much was grabbed off the top of memory. |
| In Linux 1.1.39 it became also possible to set this value on the kernel |
| command line. |
| In Linux 1.3.48 the ramdisk setup was changed. Ramdisk memory is now |
| taken from the buffer cache, so that the ramdisk can grow dynamically. |
| The interpretation of the ramdisk word was changed to a word of which |
| the high order bit is a prompt flag (1: prompt for ramdisk: |
| "VFS: Insert ramdisk floppy and press ENTER" - this is needed with a |
| two-floppy boot), the next bit a load flag (1: load ramdisk), |
| and the low order 11 bits give the starting block number of the |
| root filesystem image (so that one can have a single floppy boot). |
| See also |
| .IR linux/Documentation/ramdisk.txt . |
| .SH AUTHORS |
| .nf |
| Originally by Werner Almesberger (almesber@nessie.cs.id.ethz.ch) |
| Modified by Peter MacDonald (pmacdona@sanjuan.UVic.CA) |
| rootflags support added by Stephen Tweedie (sct@dcs.ed.ac.uk) |
| .fi |
| .SH AVAILABILITY |
| The rdev command is part of the util-linux-ng package and is available from |
| ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/. |