From ceeee4ea7cec659fb7d469cf9b842bdb89f99be9 Mon Sep 17 00:00:00 2001 From: Google Code Exporter Date: Wed, 16 Mar 2016 03:00:11 -0400 Subject: [PATCH] Migrating wiki contents from Google Code --- 2013-02-05-nfsroot-cce-slides.pdf | Bin 0 -> 153696 bytes DOSboot.md | 245 +++++++++++++++++++++++++++++ HOWTO.md | 247 ++++++++++++++++++++++++++++++ KernelDevel.md | 67 ++++++++ ProjectHome.md | 27 ++++ github.md | 4 + pubs.md | 9 ++ 7 files changed, 599 insertions(+) create mode 100644 2013-02-05-nfsroot-cce-slides.pdf create mode 100644 DOSboot.md create mode 100644 HOWTO.md create mode 100644 KernelDevel.md create mode 100644 ProjectHome.md create mode 100644 github.md create mode 100644 pubs.md diff --git a/2013-02-05-nfsroot-cce-slides.pdf b/2013-02-05-nfsroot-cce-slides.pdf new file mode 100644 index 0000000000000000000000000000000000000000..59d58cc04b1119583b0aa2409affb94ac1bb5e63 GIT binary patch literal 153696 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
8NJ2`L9b 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 BcpLx# literal 0 HcmV?d00001 diff --git a/DOSboot.md b/DOSboot.md new file mode 100644 index 0000000..15f6d2e --- /dev/null +++ b/DOSboot.md @@ -0,0 +1,245 @@ +## Introduction ## + +Sometimes BIOS and other firmware updates can only be applied using +a DOS update utility. Starting with version 3.3, nfsroot provides a [FreeDOS](http://www.freedos.org) +boot image with serial console capability for your convenience. + +In a cluster, a mass BIOS update could be orchestrated by driving +multiple serial consoles in parallel with [ConMan](http://code.google.com/p/conman) +or by adding the update script to `autoexec.bat`, after testing one interactively of +course! + +Warning: some BIOS update programs invalidate the CMOS checksum. The BIOS may +pause at the next boot with an interactive prompt to accept defaults. +Make sure your update procedure handles save/restore of CMOS or includes +reasonable defaults before proceeding with a mass update. + +### FreeDOS Image Contents ### + +The provided image is based on a FreeDOS 1.0 floppy boot image, expanded so that it has approximately 9MB free for your payload. By default, only the himem driver is loaded. +An `autoexec.bat` redirects the console if the **sercons** kernel command line argument is present, and configures the serial port rate according to the **baud** or **baudhard** argument: + +**sercons=com1** selects the port used for redirection (required) + +**baud=value** sets the baud rate for values of 38,400 or less (optional) + +**baudhard=value** sets the baud rate factor for higher baud rates (optional) + +### Adding Payload ### + +A custom image containing your application can be created by copying the provided image +and adding your payload using mtools or loopback mount. For example: +``` +$ mkdir x7sla +$ unzip -d x7sla ~/Downloads/x7sla0.513.zip +$ cp /boot/freedos.img myfreedos.img +$ export MTOOLSRC=mtoolsrc +$ echo 'drive y: file="myfreedos.img"' >mtoolsrc +$ mcopy -s x7sla y: +$ rm mtoolsrc +``` + +Copy your boot image into /boot and create a pxlinux.cfg entry for it: +``` +label myfreedos + kernel memdisk + append nopassany=1 stack=2048 raw=1 initrd=myfreedos.img sercons=com1 baudhard=1152 +``` + +### Example: AMI BIOS Update ### + +``` +boot: myfreedos +Loading memdisk.. +Loading myfreedos.img......................................................................................................................................................................................ready. +``` +Here FreeDOS waits 5 seconds for the user to choose a non-default configuration +via the VGA display and keyboard. By default, only himem is loaded. +The autoexec.bat then redirects the console to the specified device. +``` +A:\>dir + Volume in drive A has no label + Volume Serial Number is 05D8-5287 + Directory of A:\ + +DRIVER 01-03-2011 5:15p +FREEDOS 01-03-2011 5:15p +X7SPA 01-03-2011 5:20p +AUTOEXEC BAT 447 01-03-2011 5:15p +COMMAND COM 66,945 01-03-2011 5:15p +FDCONFIG SYS 1,868 01-03-2011 5:15p +KERNEL SYS 45,341 01-03-2011 5:15p + 4 file(s) 114,601 bytes + 3 dir(s) 7,124,480 bytes free +A:\> +``` +Example BIOS update: +``` +A:\X7SPA>cd X7SPA +A:\X7SPA>dir + Volume in drive A has no label + Volume Serial Number is 05D8-5287 + + Directory of A:\X7SPA + +. 01-03-2011 5:20p +.. 01-03-2011 5:20p +AFUDOS SMC 150,976 01-03-2011 5:20p +AMI BAT 104 01-03-2011 5:20p +README~1 TXT 1,266 01-03-2011 5:20p +X7SPA0 C17 4,194,304 01-03-2011 5:20p + 4 file(s) 4,346,650 bytes + 2 dir(s) 7,124,480 bytes free +A:\X7SPA>AMI.BAT X7SPA0.C17 + +---------------------------------------------------------------------------+ + | AMI Firmware Update Utility v4.33 | + | Copyright (C)2009 American Megatrends Inc. All Rights Reserved. | + +---------------------------------------------------------------------------+ +- Bootblock checksum .... ok +- Module checksums ...... ok +- Warning: No SMBIOS structures are found. Nothing will be preserved in NVRAM. +- Erasing NCB ........... done +- Writing NCB ........... done +- Verifying NCB ......... done +- Erasing flash ......... done +- Writing flash ......... done +- Verifying flash ....... done +- Erasing NVRAM ......... done +- Writing NVRAM ......... done +- Verifying NVRAM ....... done +- Erasing Bootblock ..... done +- Writing Bootblock ..... done +- Verifying Bootblock ... done +- CMOS checksum destroyed +- Program ended normally. + +A:\X7SPA> +``` + +### Appendix: Creating the Initial Image ### + +Nfsroot provides a working FreeDOS boot image. This appendix +documents the procedure used to create that image. See also the `img` +subdirectory of the nfsroot source code. + +Start with `fdboot.img` 1440K floppy image from FreeDOS 1.0 distribution. +Also download `sys-freedos-linux.zip` and `fdfullcd.iso` from the FreeDOS web site. + +Unzip `sys-freedos-linux.zip` in the current directory: +``` +$ unzip ~/Downloads/sys-freedos-linux.zip +Archive: /home/garlick/Downloads/sys-freedos-linux.zip + creating: bootsecs/ + inflating: bootsecs/boot.asm + inflating: bootsecs/boot32.asm + inflating: bootsecs/copying + inflating: bootsecs/boot32lb.asm + extracting: bootsecs/version.txt + inflating: sys-freedos.pl +$ +``` + +Extract `mode.com` out of the `fdfullcd.iso` image: +``` +# mount -o loop fdfullcd.iso /mnt +# cp /mnt/freedos/setup/odin/mode.com . +# umount /mnt +# +``` + +Make sure you have the mtools and nasm packages installed. + +Set up `~/.mtoolsrc` with drive x: referring to source image, +and drive y: referring to destination image: +``` +drive x: file="fdboot.img" +drive y: file="freedos.img" +``` +Create a new FAT file system of about 10 megabytes on y: and copy the contents of `fdboot.img` plus `mode.com` into it: +``` +$ mformat -C -t 320 -s 36 -h 2 y: +$ mcopy -s x: y: +$ mcopy mode.com y: y:freedos +$ +``` + +Edit the `fdconfig.sys` file to change the `menudefault` and change `command.com` invocation +to source `autoexec.bat`. The new fdconfig.sys looks like this: +``` +; FreeDOS 1.0 Final distro by Blair Campbell [Blairdude@gmail.com], +; last update 2005-08-02 by Blair Campbell [Blairdude@gmail.com] +; config.sys loads system drivers. Please edit to suit your needs. + +; nfsroot changes +; - make choice 2 the default and only wait 5 seconds before assuming it [jg] + +;!SWITCHES=/E +!SWITCHES=/N + +menucolor=7,0 +MENU �������������������������������������������������������������������ͻ +MENU � FreeDOS 1.0 Final (2006-July-30) INSTALLATION/LIVE CD � +MENU �������������������������������������������������������������������͹ +MENU � 1. Install to harddisk using FreeDOS SETUP � +MENU � � +MENU � 2. FreeDOS Safe Mode (don't load any drivers) � +MENU � � +MENU � 3. FreeDOS Live CD with HIMEM + EMM386 � +MENU � � +MENU � 4. FreeDOS Live CD with HIMEM only (default) � +MENU � � +MENU � 5. FreeDOS Live CD only � +MENU � � +MENU � FreeDOS is a trademark of Jim Hall 1994-2006 � +MENU �������������������������������������������������������������������ͼ +MENUDEFAULT=4,5 + +134?!DEVICE=A:\DRIVER\HIMEM.EXE +3?!DEVICE=A:\DRIVER\EMM386.EXE X=TEST +12345?!SHELL=A:\COMMAND.COM A:\ /E:2048 /F /MSG /P=A:\AUTOEXEC.BAT +; 34?!DEVICEHIGH=A:\DRIVER\XDMA.SYS +; 345?!DEVICEHIGH=A:\DRIVER\XCDROM.SYS /D:FDCD0000 +!DOSDATA=UMB +!DOS=HIGH,UMB +!FILES=20 +!BUFFERS=20 +!LASTDRIVE=Z +``` +The new `autoexec.bat` looks like this +``` +REM borrowed from the top of freedos\fdauto.bat +@echo off +SET DEBUG=N +SET NLSPATH=A:\FREEDOS +set dircmd=/P /OGN /4 +set lang=EN +SET PATH=A:\FREEDOS;A:\DRIVER + +REM get boot arguments +getargs >temp.bat +call temp.bat +del temp.bat + +REM serial console redirect +if "%sercons%"=="" goto end +echo Redirecting console to %sercons% +if not "%baudhard%"=="" mode %sercons% baudhard=%baudhard% +if not "%baud%"=="" mode %sercons% baud=%baud% +ctty %sercons% +:end +``` +Copy modified `fdconfig.sys` and `autoexec.bat` into the image using mcopy as above. + +Sys the new image to make it bootable: +``` +$ ./sys-freedos.pl --disk freedos.img --sectors 36 --heads 2 + +DOS boot sector for freedos.img will be created by: + nasm -o /dev/stdout -dISFAT16 ./bootsecs/boot.asm +Using FAT16. Partn offset 0, CHS *x2x36 Drive 0, (0x0, 0x29), +SerNo 22A6-C611, Strings 'NO NAME ', 'FAT16 '. +CHS sector count changed to 36 +CHS head count changed to 2 +Boot sector successfully updated. +$ +``` \ No newline at end of file diff --git a/HOWTO.md b/HOWTO.md new file mode 100644 index 0000000..a843014 --- /dev/null +++ b/HOWTO.md @@ -0,0 +1,247 @@ +#summary nfsroot HOWTO +#labels Featured + +_This document pertains to nfsroot version 3_ + +## Introduction ## + +The **nfsroot** RPM is installed into a root image which is served to +clients. When the client boots, one of several methods is selected +to make this image usable as the basis for a root file system. +For example, if the _aufs_ method is selected, a union file system combines +a read-only NFS export with a read-write tmpfs file system on the client +to make a read-write file system where any changes on the client go to +the tmpfs. If the _bind_ method is selected, key directories in the read-only +root file system are copied to a local tmpfs, then the writeable tmpfs copies +are bind-mounted over the read-only originals. + +The server must provide DHCP, TFTP, and NFS service. Management of these +services and their config files is beyond the scope of the **nfsroot** +package. + +**nfsroot** is sensitive to OS distro verison. +Version 2 works with RHEL5 (CHAOS 4). +Version 3 works with RHEL6 (CHAOS 5). +If you want to use it on a different distro, porting is straightforward; +open a bug in the **nfsroot** issue tracker on google code with your changes. + +## Client Boot Sequence ## + + 1. C: BIOS ROM extension on network card broadcasts DHCP request + 1. S: DHCP server responds with info for C's MAC address + 1. C: tftp `pxelinux.0` and `pxelinux.cfg` from the `/boot` in the root image + 1. S: allow tftp + 1. C: pxelinux prompts for kernel selection, and boots default after no input + 1. C: tftp's`vmlinuz` and `initramfs` from `/boot` + 1. S: allow tftp + 1. C: initramfs broadcasts DHCP request, now in Linux environment + 1. S: DHCP server responds with info for C's MAC address + 1. C: initramfs mounts root image from server (normally read-only), switches into it, and execs `/etc/rc.nfsroot`. + 1. S: allow NFS mount + 1. C: `/etc/rc.nfsroot` (now in the NFS root image) makes the root file system at least partially writeable by running `/etc/rc.nfsroot.`, for each method in the METHODS list in `/etc/sysconfig/nfsroot`. The successful script execs `/etc/rc.nfsroot-init`. + 1. C: `/etc/rc.nfsroot-init` runs everything in `/etc/rc.nfsroot.d` (for example, your cfengine scripts), then execs `/sbin/init`. + 1. C: boots as usual + +## Example ISC dhcpd.conf ## + +In this example, root images are located in `/tftpboot/images` on the server. +A singe host named `webb` boots the `test` image. + +``` +ddns-update-style none; + +option space pxelinux; +option pxelinux.magic code 208 = string; +option pxelinux.configfile code 209 = text; +option pxelinux.pathprefix code 210 = text; +option pxelinux.reboottime code 211 = unsigned integer 32; + +# Needed for dhcp 3.0.5 +next-server 192.168.1.169; + +shared-network eth0 { + not authoritative; + use-host-decl-names true; + + site-option-space "pxelinux"; + option pxelinux.magic f1:00:74:7e; + if exists dhcp-parameter-request-list { + option dhcp-parameter-request-list = concat(option dhcp-parameter-request-list,d0,d1,d2,d3); + } + option pxelinux.reboottime 30; + + subnet 192.168.1.0 netmask 255.255.255.0 { + option subnet-mask 255.255.255.0; + option routers 192.168.1.222; + + host webb { + filename "images/test/boot/pxelinux.0"; + option root-path "192.168.1.169:/tftpboot/images/test"; + option pxelinux.configfile "pxelinux.cfg"; + option pxelinux.pathprefix "/images/test/boot/"; + hardware ethernet 00:13:72:18:DF:9A; + fixed-address 192.168.1.194; + } + } # end 192.168.1.0/255.255.255.0 + +} # end eth0 +``` + +In nfsroot version 3, nfs mount options can be appended to the root-path line, e.g. +``` +root-path "192.168.1.169:/tftpboot/images/test,nfsvers=3,rw,nolock,actimeo=600,nocto,nosharecache"; +``` + +If you are aware of how dracut-network is configured, nfsroot is using this behind the scenes, adding a config file to /etc/dracut.conf.d which limits the dracut modules to the minimum required for NFS and network, and installing a dracut module called xnfsroot which fakes kernel command line options root=dhcp and init=/etc/rc.nfsroot (see below). + +## Configuration ## + +The file `/etc/sysconfig/nfsroot` in the root image contains several tunable +parameters. This file should be updated on the server as its content is sourced early by the rc.nfsroot scripts: + * `METHODS` - If set, rc.nfsroot will try these methods (in order) to make root read-write. + * `TMPFSMAX` - If set, rc.nfsroot-method mounts tmpfs with `-osize=$TMPFSMAX`. Otherwise the default is half of RAM. + * `RAMDIRS` - If set, rc.nfsroot-bind will make working copies of these dirs on ramdisk. + * `INITPROG` - If set, rc.nfsroot will exec this (with `$@` args) in place of `/sbin/init`. + * `KDUMP_DIR` - Override default of `:/var/crash`. + * `KDUMP_DIR_MOUNTOPTS` - Set NFS mount options for KDUMP\_DIR. + * `KDUMP_LEVEL` - Set vmcore filter mask (see `makedumpfile -d` option). + * `KDUMP_FAILSAFE` - If vmcore save fails, `reboot` means reboot, `shell` means spawn a shell. + +Kernel command line options can be changed in `/boot/pxelinux.cfg` in the root image (from the server). The default linux entry is copied whenever a new kernel is added to the image so any options changed there will propagate to new entries as they are added. + +## Kernel Updates ## + +Nfsroot hooks into grubby so when a new kernel is installed/removed/updated, /boot content gets updated appropriately. + +The main scripts are `/usr/sbin/configpxe` which manages pxelinux.cfg entries, and `/usr/sbin/nfsroot-setdefault` which manages /boot symlinks for vmlinuz and initramfs corresponding to the default pxelinux.cfg boot entries. +The scripts are called by grubby's `/sbin/new-kernel-pkg` via the following hooks: `/etc/kernel/postinst.d/nfsroot-postinst` and +`/etc/kernel/prerm.d/nfsroot-prerm`. + +Two other helper scripts are `/usr/sbin/nfsroot-rebuild` which rebuilds all initramfs images upon an nfsroot update, or when manually invoked; and `/usr/sbin/nfsroot-kdumplinks` which maintains symbolic links required by kdump. + +It is possible in version 3 to install multiple kernels, CHAOS or Red Hat, and have them available as pxelinux boot options simultaneously, with all the /boot content managed automatically. + +## Boot Methods ## + +The `rc.nfsroot` startup script runs chrooted in the read-only root image. +It runs _boot method_ startup scripts in the order determined by the `METHODS` +variable in `/etc/sysconfig/nfsroot`. The first one that succeeds causes system startup to proceed. + +### kdump ### + +**nfsroot** works with RHEL kdump. `nfsroot-kdumplinks` (described above) maintains symlinks +for initramfs images such that `/etc/init.d/kdump` will arm +kexec with it during system startup. The crash sequence is as follows: + + 1. C: crashing kernel kexecs stored kernel/initramfs + 1. C: initramfs broadcasts DHCP request + 1. S: dhcp server responds with info for C's MAC address + 1. C: initramfs mounts root image from server (normally read-only), switches into it, and execs `/etc/rc.nfsroot`. + 1. S: allow NFS mount + 1. C: `/etc/rc.nfsroot` runs `/etc/rc.nfsroot-kdump` which detects kdump environment + 1. C: `/etc/rc.nfsroot-kdump mounts KDUMP\_PATH on /var/crash + 1. S: allow NFS mount + 1. C: copy vmcore to /var/crash + 1. C: hard reboot + +Vmcores can be examined with the crash utility, e.g. + +``` +crash /var/dumps/vmcore-ilc13-2007-11-04-19:12:21 +crash> bt +``` + +Note that the file `/etc/kdump.conf` only affects the kdump initrd, +thus when **nfsroot** is providing the initramfs, that file has no effect. +However, `/etc/sysconfig/kdump` is still used by `/etc/init.d/kdump`. + +### none ### + +If the initial root file system is mounted read-write, the none method will detect this and declare victory. +This presumes that the root image is not shared. + +### aufs ### + +A ramdisk is created and root is crafted as a union file system +based on a read-only NFS branch, and a read-write ramdisk branch. +The aufs file system is **not** included in the CHAOS 5 kernel, so this module is historical. + +### unionfs ### + +Same as aufs but use the unionfs file system. +The unionfs file system is **not** included in the CHAOS 5 kernel, so this module is historical. + +### bind ### + +A ramdisk is created and directories listed in the `$RAMDIRS` variable +in `/etc/sysconfig/nfsroot` are copied from the read-only root to the +ramdisk, and bind-mounted on top of the original. + +### rbind ### + +Same as bind except root is a ramdisk, `$RAMDIRS` directories +are copied there and remaining top-level read-only directories are +bind-mounted there. + +### ram ### + +Similar to rbind except the entire root file system is copied +to the ramdisk. Ensure that `$TMPFSMAX` is set to accomodate it. +This is really only practical for stripped-down appliance images. + +## Notes and Caveats ## + +With any of the methods, it is not recommended that the NFS +file system be changed on +the server while clients have it mounted. A good strategy is +to have the root-path mentioned in dhcpd.conf be a symbolic link, then updates can be made by +rsyncing the current image to a new directory, changing the new image, +then updating the symlink to switch clients to the new image on the +next reboot. Running clients will continue to use the old root image. + +The NFS clients generate a lot of traffic revalidating cached data. +To address this, NFS mount options such as `actimeo=600,nocto` can be +added to retain cached data longer. This costs nothing if, as suggested, +the read-only root file system will never change out from under the client. + +You may wish to disable cron on diskless clients, or prune default crontabs +such as makewhatis, logwatch, mlocate, and rpm and instead run these as +part of an image update procedure. Running them on the node increases +ramdisk utilization. + +`pxelinux.cfg` may be kept under version control. The "master" file +should contain only the global pxelinux options plus the default "linux" +boot label options. After installing the master, run `nfsroot-rebuild` +(on the server!) to recreate entries for all the installed kernels. +A caveat is that all entries must have the same kernel command line arguments. + +LFS says that `/var/tmp` state must persist across a reboot, while `/tmp` +need not persist. On diskless systems, `/tmp` can be a ramdisk while `/var/tmp` +should be an NFS mount unique to the node. Scripts that need to pass state +across a reboot should be wired for `/var/tmp`. + +If a root image is exported read-write but configured to be mounted read-only +by **nfsroot**, `rc.nfsroot` halts boot-up because `/etc/rc.sysinit` will +attempt to remount root read-write. +Booting a read-write root image shared between clients may corrupt the image. + +**kexec-tools** will test if `/etc/kdump.conf` is newer than the +initramfs image and attempt to rebuild the initrd if so. This rebuild will fail or produce a broken initrd in the nfsroot +environment, so a test for this condition has been added to `rc.nfsroot-kdump` +to halt boot-up if found during boot. + +## Resources ## + +[Yum package manager home page](http://yum.baseurl.org/). + +[The Syslinux Project home page](http://syslinux.zytor.com/wiki/index.php/The_Syslinux_Project). + +[Internet Systems Consortium DHCP project page](http://www.isc.org/software/dhcp). + +[Kdump, a Kexec-based Kernel Crash Dumping Mechanism](http://lse.sourceforge.net/kdump/documentation/ols2oo5-kdump-paper.pdf). + +[Linux NFS-HOWTO](http://nfs.sourceforge.net/nfs-howto/) + +[AUFS sourceforge project](http://aufs.sourceforge.net/) + +[Unionfs: A Stackable Unification File System](http://www.fsl.cs.sunysb.edu/project-unionfs.html) \ No newline at end of file diff --git a/KernelDevel.md b/KernelDevel.md new file mode 100644 index 0000000..06b77ae --- /dev/null +++ b/KernelDevel.md @@ -0,0 +1,67 @@ +#summary Using nfsroot in a Kernel Development Environment + +## Introduction ## + +An nfsroot based diskless system is an excellent platform for linux +kernel development because the root file system is protected from +damage from repeated crashes, and reboot time is relatively fast. +Because nfsroot is closely integrated with the Red Hat kernel RPM, +it can be tricky to set up a system for kernel testing. + +## Building and Installing a Vanilla Kernel ## + +The main challenge is that the redhat kernel includes hooks to rebuild +the initramfs for a new kernel, to create entries in pxelinux.cfg, to +run depmod, etc.. You can just run the appropriate scripts manually +after installing a kernel. + +Avoid installing multiple kernels into an image. There's a potential +for conflicts in /lib/firmware and it slows everything down. +Get rid of the redhat/chaos one that probably was installed when your +image was built using `rpm -e --nodeps kernel` (chrooted in the image +on the server of course). + +When configuring your kernel, make sure that modules for the network device +you plan to boot from is getting built. + +``` +$ git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git +Initialized empty Git repository in /home/garlick/work/linux/.git/ +remote: Counting objects: 2339358, done. +remote: Compressing objects: 100% (360172/360172), done. +Receiving objects: 100% (2339358/2339358), 466.84 MiB | 7.75 MiB/s, done. +remote: Total 2339358 (delta 1956888), reused 2339080 (delta 1956647) +Resolving deltas: 100% (1956888/1956888), done. +$ cd linux +$ make defconfig +$ vi .config +$ make oldconfig +$ make rpm +... +Wrote: /home/garlick/rpmbuild/SRPMS/kernel-3.3.0_rc5+-1.src.rpm +Wrote: /home/garlick/rpmbuild/RPMS/x86_64/kernel-3.3.0_rc5+-1.x86_64.rpm +Wrote: /home/garlick/rpmbuild/RPMS/x86_64/kernel-headers-3.3.0_rc5+-1.x86_64.rpm +... +$ cd /tftpboot/images/clarence +$ sudo chroot $(pwd) /usr/sbin/depmod -a 3.3.0-rc5+ +$ sudo rpm -r $(pwd) -Uvh /home/garlick/rpmbuild/RPMS/x86_64/kernel-3.3.0_rc5+-1.x86_64.rpm +Preparing... ########################################### [100%] + 1:kernel ########################################### [100%] +$ sudo chroot $(pwd) /usr/sbin/nfsroot-rebuild +nfsroot-rebuild: rebuilding 3.3.0-rc5+ initramfs +nfsroot-setdefault: DEFAULT set to 3.3.0-rc5+ +$ +``` + +Forget about crash dumps, kdump is a redhat thing. + +## Other Neat Things to Do ## + +Set up powerman and conman to control your test system. +Boot with serial consoles enabled. +Enable sysreq - you can send them on the serial console via conman +with +``` +&B? +``` +where ? is the sysreq character you want to send. \ No newline at end of file diff --git a/ProjectHome.md b/ProjectHome.md new file mode 100644 index 0000000..fb60a18 --- /dev/null +++ b/ProjectHome.md @@ -0,0 +1,27 @@ +**nfsroot** is a package designed to help make Linux root file system images +network-bootable and sharable by many clients. It was designed for the [CHAOS](http://code.google.com/p/chaos-release) +Linux distribution for clusters, developed at Lawrence Livermore National Laboratory, +but will work with other Red Hat Enterprise Linux derived distros. + +**nfsroot** distinguishes itself from other tools for managing diskless clusters by +restricting itself to things that can be done by a package installed within +the root image, e.g.: + * management of initramfs images in /boot (leveraging [dracut](http://fedoraproject.org/wiki/Dracut)) and [pxelinux](http://syslinux.zytor.com/wiki/index.php/PXELINUX) boot options + * making a shared, read-only root file system usable using selectable methods (unionfs, aufs, bind-mounts, etc) + * hook for saving kdump vmcore images to NFS + * hook for configuration management before init starts +The goal is that one can install the **nfsroot** RPM into a root image and presto, +it becomes bootable and sharable given appropriate server configuration. + +**nfsroot** leaves the root server configuration and configuration management within +the image to your superior mental prowess. This minimalist design is intended for +sites (like ours) that already have procedures and techniques in place for managing +these subsystems and don't want a diskless solution to help. + +**nfsroot version 1** ran on CHAOS 3 (RHEL 4 based), _end-of-life_. + +**nfsroot version 2** ran on CHAOS 4/TOSS 1 (RHEL 5 based), _end-of-life_. + +**nfsroot version 3** runs on CHAOS 5/TOSS 2 (RHEL 6 based), _feature frozen_. + +**nfsroot version 4** will run on TOSS 3 (RHEL 7 based), _in development_. \ No newline at end of file diff --git a/github.md b/github.md new file mode 100644 index 0000000..00798b3 --- /dev/null +++ b/github.md @@ -0,0 +1,4 @@ +**nfsroot** source is managed on https://github.com/chaos/nfsroot. + +Releases (including 'make dist' tarballs) can be downloaded from +https://github.com/chaos/nfsroot/releases \ No newline at end of file diff --git a/pubs.md b/pubs.md new file mode 100644 index 0000000..b28154a --- /dev/null +++ b/pubs.md @@ -0,0 +1,9 @@ +#summary nfsroot Publications +#labels Featured + + +--- + +## Presentations ## + +[nfsroot overview and discussion points](http://wiki.nfsroot.googlecode.com/git/2013-02-05-nfsroot-cce-slides.pdf) (NNSA Tri-laboratory CCE System Software Meeting, Feb 2013) \ No newline at end of file