首页 > 科技 > Runt, Serial Port boot defaultly

Runt, Serial Port boot defaultly

2006年12月11日 20点34分 发表评论 阅读评论

What is RUNT?
RUNT is Slackware Linux designed to run off of a 128 MB or more USB pen drive. It consists of a boot floppy image and a zip file, similar to zipslack. It is intended to be a fairly complete Linux installation for use as a testing tool capable of booting on any x86 computer with a USB port and a bootable floppy drive. The kernel is slackware’s bare.i kernel. RUNT also contains an initial ramdisk to load usb-storage related modules and it pauses for 5 seconds to allow the drive to initialize. The zip file contains a UMSDOS filesystem designed to be extracted onto a 128 MB pen drive with an msdos filesystem using 2K clusters. (Larger cluster sizes are required for drives larger than 128 MB) The package set is based off of Slackware’s zipslack, but contains other commonly used networking components not available in the zipslack distribution which is limited to 100 MB. RUNT was originally designed for use at North Carolina State University by the ResNet department. ResNet regularly provides support to students in University Housing using their personal computers on the NC State network. RUNT automatically probes for network cards on startup and configures them using DHCP. Although RUNT is intended for use on the NC State network, there is nothing peculiar to our network preventing RUNT from being a useful tool on any network.

What’s required?
A USB 128 MB pen drive with an msdos filesystem using 2K clusters. Larger drives are also acceptable. Most any pen drive will work. Sandisk and Lexar make some of the most popular ones, and they are known to work well. RUNT can also work with any USB storage device such as flash card readers, cameras, watches, etc… Those are the weird ones people have sent in to me. Theoretically RUNT can run off of any FAT drive accessible by the kernel. The bootdisk provided will work with fast USB drives or IDE drives. a USB zip drive takes longer to initialize, and the disk below doesn’t provide adequate time. If you wish to boot RUNT off of SCSI or some other interface, another bootdisk will probably be required. Find or make a Slackware boot disk to meet your needs.
If you can’t boot off of USB, you’ll need a blank floppy.

To boot it you’ll need any x86 based computer cable of USB booting or with a bootable floppy drive and a USB port.

How to install

Unzip the zip file to the FAT partition you intend to run linux off of. If extracing in linux, the drive should be mounted with -t msdos. This doesn’t have to be the only thing on the drive, but make sure the extracted files are in two directory called linux and runtutil in the root of the drive. The process of writing to the USB drive takes a very long time in Windows. You may have better results extracting the file to a hard drive and then copying the linux directory to the USB drive. Also, enabling write-behind caching on the drive may speed it up slightly. This still took me almost an hour though. The fastest way is to just use Linux. It’s done in a few minutes.
In the runtutil directory, run the makeboot.bat(Windows) or makeboot.sh(Linux) script. This will make the ben drive bootable on computers that support it.
If you require a boot floppy, run the mkfloppy.bat(Windows) or mkfloppy.sh(Linux) script.
Restart the computer with the floppy in if necessary and USB drive connected. At the boot prompt just press enter, or provide your own parameters if necessary. If you use a USB floppy drive to boot, you will need to type usbfloppy on the boot prompt. If you are able to boot from USB, you can also type memtest to check the system’s RAM for defects. If you need to select a different keyboard layout, type “usb keymap” at the prompt.
NOTE: Windows NT/2000/XP/2003 is required to perform the operations in makeboot.bat and mkfloppy.sh. If you are using Windows 95/98/Me you should download the boot floppy below and create a floppy using RawWrite for windows. Alternatively you could perform the operation on another computer running Windows NT/2000/XP/2003 or Linux. Booting Knoppix or a similar live distribution will also make this possible.

—From http://runt.mybox.org/

Format the 128 MB USB disk to FAT in Windows OS firstly.
I download runt4.0 zip file, and extract to local harddisk, then copy two folders “Linux” and “runtuti” to formatted USB disk. In fact, the USB capacity is just 108MB, so I had to delete the “man” and “doc” parts in “Linux” directory to ensure copying successfully. In USB “runtui” directory, execute “mkboot.bat” in Windows(I also tested in Linux). Done.

This mini Linux in USB could boot in the machines which has been set related boot order(USB first). It was 2.4.28 with null root password, of course should set password when log in.

Now, I want this Linux to start with Serial port default, which means all its bootable messages and logon informations would be displayed in other machines connected by serial port. As I known, the only one resolution is add supporting console info in lilo or grub, I tried to append “console=ttyS0,9600n8” to “linux.bat” in the USB disk on my Windows environment, it is failed to boot as serial port. Finally, I use this USB boot its mini system, and issue “liloconfig” to view its “lilo.conf” configuration, Yes, I got it(since no lilo.conf file really exists in this slackware like Linux) and created a new “lilo.conf” file by vi.

# Phillip@lilo.conf
boot = /dev/sda
disk = /dev/sda
bios = 0x80
prompt
timeout = 120
change-rules
reset
#vga = normal
image = /boot/vmlinuz
initrd = /boot/initrd.gz
root = /dev/sda1
lable = runt_linux
read-write
append = “console=ttyS0,9600n8”

Save and issue “lilo -C lilo.conf” to make it activated. Is it enough? No, “/etc/inittab” should also be modified, release the “S0” comment and add it to standard console lists:

# These are the standard console login getties in multiuser mode:
s0:2345:respawn:/sbin/agetty -L ttyS0 9600 vt100
c1:1235:respawn:/sbin/agetty 38400 tty1 linux
c2:1235:respawn:/sbin/agetty 38400 tty2 linux
c3:1235:respawn:/sbin/agetty 38400 tty3 linux
c4:1235:respawn:/sbin/agetty 38400 tty4 linux
c5:1235:respawn:/sbin/agetty 38400 tty5 linux
c6:12345:respawn:/sbin/agetty 38400 tty6 linux

# Local serial lines:
# s1:12345:respawn:/sbin/agetty -L ttyS0 9600 vt100
# s2:12345:respawn:/sbin/agetty -L ttyS1 9600 vt100
# Dialup lines:
# d1:12345:respawn:/sbin/agetty -mt60 38400,19200,9600,2400,1200 ttyS0 vt100
# d2:12345:respawn:/sbin/agetty -mt60 38400,19200,9600,2400,1200 ttyS1 vt100

Ok, reboot the mini Linux, when it displays lilo menu, all bootable information was redirected to serial port, I checked the messages in other machined by serial port connection, and log in successfully. Of course, the local also supports login on the screen.

Configure serial port in BIOS is not required, it would also be access by serial port without BIOS rules. I tried to set the serial port in BIOS, Hmm, all the boot messages displayed even contains the basic BIOS checking process.

分类: 科技 标签:
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.
您必须在 登录 后才能发布评论.