[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

micro-HOWTO (was Serial consoles)



Hi!


I've seen FreeBSD being installed over a serial console and thought
"Hmm, how can I do this with debian?". I was aware of the sercons
stuff in recent 2.1 kernels. Initiated by a question from Shane Wegner
on debian-user I tried it out (up to "partition a harddisk" - I had no
spare disk to continue). Cleto Pescia <cleto@e-link.ch> finished an
installation and sent me all those missing hints. I'm summing this up
for all those of you intereseted in it. It's based on Debian 2.0
(hamm), but should work with other versions, too.

Get a recent 2.1 (or 2.2) kernel or patch your 2.0 sources with Miquel
van Smoorenburg's patch to backport the sercons stuff:
<ftp://ftp.cistron.nl/pub/people/miquels/kernel/>

Build a replacement kernel for the installation disk. Enable sercons,
initrd, ext2, msdosfs and all needed drivers. Do not use modules (or
prepare to hack the driver disk, too). Check the install manual for
more details (in case I missed something)

Put the kernel on the rescue disk:
	mount /tmp/resc1440.bin /mnt -o loop
	cp the new kernel to /mnt/linux and run 
	sh /mnt/rdev.sh

Edit /mnt/syslinux.cfg to automatically boot with sercons: 
set TIMEOUT to 1 and
add "console=ttyS0,9600n8" to all APPEND lines (for "COM1", 9600 Baud, 
no parity, 8bits, software handshake) (possibly unneded if you have no 
graphics card and keyboard attached)

Add the needed /dev/console to the rescue disk's root-fs:
	zcat /mnt/root.bin > /tmp/root.bin
	mount /tmp/root.bin /floppy
	mknod -m 622 console c 5 1 as root
	umount /floppy
	gzip -c9 /tmp/root.bin > /mnt/root.bin

The new rescue disk image is done. 
	umount /mnt

Make a boot floppy
	cp /tmp/resc144.bin /dev/fd0

boot from the rescue disk,
select monocolor and your keyboard (used for virtual console),

select "open a shell" from the menu,
manually run "fdisk" (cfdisk segfaults),
exit the shell and 
continue installation as usual
(alternatively symlink cfdisk -> fdisk in root.bin)

before you reboot your new system, reopen a shell.

make the new-style console device
	rm /target/dev/console
	cp /dev/console /target/dev/
(alternatively modify base*.tgz)

Instruct lilo to use the sercons, too:
	echo 'append = "console=ttyS0,9600n8"' >> /target/etc/lilo.conf
	echo 'serial=0,9600n8' >> /target/etc/lilo.conf
	lilo

Make root logins via the sercons possible:
	echo "ttyS0" >> /target/etc/securetty

and put a getty on the serial line: Edit /target/etc/inittab and
uncomment the line starting with T0. (alternatively modify
/etc/init-tab in root.bin)

reboot



Special Thanks to:
	Miquel van Smoorenburg for the sercons patch
	Cleto Pescia <cleto@e-link.ch> for finishing what I started.



Rainer



-- 
KeyID=58341901 fingerprint=A5 57 04 B3 69 88 A1 FB  78 1D B5 64 E0 BF 72 EB

Attachment: pgpvISQr6qQMJ.pgp
Description: PGP signature


Reply to: