1196 lines
22 KiB
HTML
1196 lines
22 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
|
<HTML
|
|
><HEAD
|
|
><TITLE
|
|
>CompaqT1500-Linux HOWTO</TITLE
|
|
><META
|
|
NAME="GENERATOR"
|
|
CONTENT="Modular DocBook HTML Stylesheet Version 1.7"></HEAD
|
|
><BODY
|
|
CLASS="ARTICLE"
|
|
BGCOLOR="#FFFFFF"
|
|
TEXT="#000000"
|
|
LINK="#0000FF"
|
|
VLINK="#840084"
|
|
ALINK="#0000FF"
|
|
><DIV
|
|
CLASS="ARTICLE"
|
|
><DIV
|
|
CLASS="TITLEPAGE"
|
|
><H1
|
|
CLASS="TITLE"
|
|
><A
|
|
NAME="AEN2"
|
|
></A
|
|
>CompaqT1500-Linux HOWTO</H1
|
|
><H3
|
|
CLASS="AUTHOR"
|
|
><A
|
|
NAME="AEN4"
|
|
>Thomas Chiverton</A
|
|
></H3
|
|
><DIV
|
|
CLASS="AFFILIATION"
|
|
><DIV
|
|
CLASS="ADDRESS"
|
|
><P
|
|
CLASS="ADDRESS"
|
|
>falken@bigfoot.com</P
|
|
></DIV
|
|
></DIV
|
|
><DIV
|
|
CLASS="REVHISTORY"
|
|
><TABLE
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
><TR
|
|
><TH
|
|
ALIGN="LEFT"
|
|
VALIGN="TOP"
|
|
COLSPAN="3"
|
|
><B
|
|
>Revision History</B
|
|
></TH
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revision 1.04</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>2007-9-1</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revised by: tjc</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
COLSPAN="3"
|
|
>Correct XF86Config URL, spellings</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revision 1.03</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>2006-1-13</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revised by: tjc</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
COLSPAN="3"
|
|
>Note about root-path option and refusing DHCP OFFER, notes on booting own kernel !</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revision 1.02</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>2005-4-22</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revised by: tjc</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
COLSPAN="3"
|
|
>URL change, tweaks, solution to NFS null !</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revision 1.01</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>2002-3-17</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revised by: gea</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
COLSPAN="3"
|
|
>Conversion to Docbook format</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revision 1.0</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>2002-03-11</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revised by: tjc</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
COLSPAN="3"
|
|
>LDP release</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revision 0.85</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>2001-12-13</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revised by: tjc</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
COLSPAN="3"
|
|
>Security hints. XFree.</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revision 0.8</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>2001-12-13</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revised by: tjc</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
COLSPAN="3"
|
|
>Kernel transfer problem fix (NFS null). General tidy.</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revision 0.7</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>2001-09-11</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revised by: tjc</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
COLSPAN="3"
|
|
>Much FLASHing and mounting notes added</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revision 0.61</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>2001-08-20</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revised by: tjc</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
COLSPAN="3"
|
|
>Tweak debian unpack notes. Add URL. Notes on re-FLASH</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revision 0.6</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>2001-07-28</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revised by: tjc</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
COLSPAN="3"
|
|
>Add example syslog output. Add in securetty changes</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revision 0.5</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>2001-07-28</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revised by: tjc</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
COLSPAN="3"
|
|
>Initial release for feedback, comments from community</TD
|
|
></TR
|
|
></TABLE
|
|
></DIV
|
|
><DIV
|
|
><DIV
|
|
CLASS="ABSTRACT"
|
|
><A
|
|
NAME="AEN65"
|
|
></A
|
|
><P
|
|
><B
|
|
>Abstract</B
|
|
></P
|
|
><P
|
|
> Lists the procedures and tools needed to boot the Compaq T1500, using a Netboot of both the native file system and a generic Linux installation.
|
|
</P
|
|
></DIV
|
|
></DIV
|
|
><HR></DIV
|
|
><DIV
|
|
CLASS="TOC"
|
|
><DL
|
|
><DT
|
|
><B
|
|
>Table of Contents</B
|
|
></DT
|
|
><DT
|
|
>1. <A
|
|
HREF="#ABOUT"
|
|
>About this guide</A
|
|
></DT
|
|
><DD
|
|
><DL
|
|
><DT
|
|
>1.1. <A
|
|
HREF="#AEN70"
|
|
>Purpose and scope</A
|
|
></DT
|
|
><DT
|
|
>1.2. <A
|
|
HREF="#AEN73"
|
|
>Latest update</A
|
|
></DT
|
|
><DT
|
|
>1.3. <A
|
|
HREF="#AEN77"
|
|
>Feedback</A
|
|
></DT
|
|
></DL
|
|
></DD
|
|
><DT
|
|
>2. <A
|
|
HREF="#AEN80"
|
|
>Introduction</A
|
|
></DT
|
|
><DT
|
|
>3. <A
|
|
HREF="#COMPAQ"
|
|
>The Compaq way</A
|
|
></DT
|
|
><DT
|
|
>4. <A
|
|
HREF="#DEBIAN"
|
|
>The one true way</A
|
|
></DT
|
|
><DT
|
|
>5. <A
|
|
HREF="#AEN131"
|
|
>Editing FLASH image and other tools</A
|
|
></DT
|
|
><DD
|
|
><DL
|
|
><DT
|
|
>5.1. <A
|
|
HREF="#AEN133"
|
|
>Editing Flash image</A
|
|
></DT
|
|
><DT
|
|
>5.2. <A
|
|
HREF="#AEN142"
|
|
>Mounting FLASH</A
|
|
></DT
|
|
></DL
|
|
></DD
|
|
><DT
|
|
>6. <A
|
|
HREF="#AEN146"
|
|
>XFree86</A
|
|
></DT
|
|
><DT
|
|
>7. <A
|
|
HREF="#AEN153"
|
|
>Trouble Shooting</A
|
|
></DT
|
|
><DD
|
|
><DL
|
|
><DT
|
|
>7.1. <A
|
|
HREF="#AEN166"
|
|
>Intermittent kernel transfer problems (NFS null)</A
|
|
></DT
|
|
><DT
|
|
>7.2. <A
|
|
HREF="#AEN173"
|
|
>T1500 ignores DHCP OFFER and just asks again</A
|
|
></DT
|
|
></DL
|
|
></DD
|
|
><DT
|
|
>8. <A
|
|
HREF="#AEN176"
|
|
>Pending projects</A
|
|
></DT
|
|
><DT
|
|
>9. <A
|
|
HREF="#AEN183"
|
|
>Contributors and thanks</A
|
|
></DT
|
|
></DL
|
|
></DIV
|
|
><DIV
|
|
CLASS="SECT1"
|
|
><H1
|
|
CLASS="SECT1"
|
|
><A
|
|
NAME="ABOUT"
|
|
></A
|
|
>1. About this guide</H1
|
|
><DIV
|
|
CLASS="SECT2"
|
|
><H2
|
|
CLASS="SECT2"
|
|
><A
|
|
NAME="AEN70"
|
|
></A
|
|
>1.1. Purpose and scope</H2
|
|
><P
|
|
>This document is aimed at the Linux enthusiast with an average level of knowledge. In particular you must be happy with configuring, restarting (or installing) new services.You will need a Linux server and (of course) a T1500.</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="SECT2"
|
|
><HR><H2
|
|
CLASS="SECT2"
|
|
><A
|
|
NAME="AEN73"
|
|
></A
|
|
>1.2. Latest update</H2
|
|
><P
|
|
>The most up to date copy of this document can be found at <A
|
|
HREF="http://www.falkensweb.com/t1500.html"
|
|
TARGET="_top"
|
|
>www.falkensweb.com/t1500.html</A
|
|
></P
|
|
></DIV
|
|
><DIV
|
|
CLASS="SECT2"
|
|
><HR><H2
|
|
CLASS="SECT2"
|
|
><A
|
|
NAME="AEN77"
|
|
></A
|
|
>1.3. Feedback</H2
|
|
><P
|
|
>Comments and feedback should go the the author listed at the head of the document.</P
|
|
></DIV
|
|
></DIV
|
|
><DIV
|
|
CLASS="SECT1"
|
|
><HR><H1
|
|
CLASS="SECT1"
|
|
><A
|
|
NAME="AEN80"
|
|
></A
|
|
>2. Introduction</H1
|
|
><P
|
|
>The T1500 is a Linux based diskless thin client, able to boot off internal FLASH RAM into X. It will acquire TCP/IP information from DHCP, and includes telnet and a WWW browser. In this configuration, the T1500 is useful as a small
|
|
Internet access device.However, the T1500 can also operate as a diskless client, acquiring it's initial
|
|
kernel and root file system from a remote machine (this uses 'TFTP' for the
|
|
1st stage, and 'NFS' for the latter). Compaq provide a CD with a kernel image
|
|
and root file system, along with management tools, but these tools are not needed,
|
|
and have been found to fail on some systems. This will be discussed in the 'Compaq
|
|
Way' section.</P
|
|
><P
|
|
>It is also possible to use the Compaq kernel to boot a normal Linux based distribution.
|
|
We use <A
|
|
HREF="http://www.debian.org"
|
|
TARGET="_top"
|
|
>Debian</A
|
|
> as an example, but the process
|
|
is fairly generic, and discussed in the 'One True Way' section.</P
|
|
><P
|
|
>We will assume:
|
|
A working DNS server on 192.168.1.1 (bookcase) and that this machine will serve
|
|
the kernel and file system
|
|
The T1500 is to be installed as 192.168.1.52 (box).
|
|
The domain is 'house'.
|
|
No special routing is needed.
|
|
In the examples a RedHat server is used, but the specifics should apply to any
|
|
GNU based system.</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="SECT1"
|
|
><HR><H1
|
|
CLASS="SECT1"
|
|
><A
|
|
NAME="COMPAQ"
|
|
></A
|
|
>3. The Compaq way</H1
|
|
><P
|
|
>Create the directories for the kernel and file system on your server, mount
|
|
and copy the files from the Compaq CD. Unpack the file system:</P
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
>mkdir /exports/T1500
|
|
mkdir /exports/T1500/root
|
|
mkdir /exports/T1500/tftpboot
|
|
mount /cdrom
|
|
cp /cdrom/product/vmlinux /exports/T1500/tftpboot
|
|
cd /exports/T1500/root
|
|
tar xvf /cdrom/product/netboot.tar</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>Configure DHCP by adding a section like this to your /etc/dhcpd.conf</P
|
|
><P
|
|
>Change the ethernet address to that of your T1500.</P
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
>group {
|
|
#little black box
|
|
host box {
|
|
hardware ethernet 00:80:64:10:1d:1c;
|
|
fixed-address box.house;
|
|
option host-name "box";
|
|
server-name "192.168.1.1";
|
|
filename "/exports/T1500/tftpboot/vmlinux";
|
|
option root-path "192.168.1.1:/exports/T1500/root";
|
|
}
|
|
}</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>Configure a new host in DNS</P
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
>db.192.168.1.1:
|
|
52 in ptr box. </PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
>db.house:
|
|
box in a 192.168.1.52</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>Export the root file system by adding</P
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
>/exports/T1500/root box(rw,no_root_squash)</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>to</P
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
>/etc/exports</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>Configuring tftp by adding/altering a line to /etc/inetd.conf</P
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
>tftp dgram udp wait root /usr/sbin/tcpd in.tftpd /exports/T1500/tftpboot</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>Now restart inetd,dhcpd,nfs and named
|
|
Select the 'netboot' option on the T1500, and reboot.
|
|
The T1500 will now boot into something very similar to its normal O/S.
|
|
You may want to add</P
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
>exec /nor/Xbin/xterm &</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>as the penultimate line in</P
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
>/exports/T1500/root/root/.xinitrc</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>and then logout and back in again, to get an xterm.</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="SECT1"
|
|
><HR><H1
|
|
CLASS="SECT1"
|
|
><A
|
|
NAME="DEBIAN"
|
|
></A
|
|
>4. The one true way</H1
|
|
><P
|
|
>We use the debian 'potato' (2.2) release as an example. The procedure should
|
|
be similar no matter which distribution you choose, providing it will run on
|
|
a 2.0.35 kernel.</P
|
|
><P
|
|
>Create the directories for the kernel and file system on your server, mount
|
|
and copy the files from the Compaq CD. Unpack the file system (Here I use some
|
|
pre-made tar balls of the debian release, here is not the place to discuss further):</P
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
>mkdir /exports/T1500
|
|
mkdir /exports/T1500/root
|
|
mkdir /exports/T1500/tftpboot</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
>mount /cdrom
|
|
cp /cdrom/product/vmlinux /exports/T1500/tftpboot
|
|
CD /exports/T1500/root
|
|
tar zxvf /tmp/base2_2.tgz
|
|
tar zxvf /tmp/telnetd*.tgz</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>Configure DHCP by adding a section like this to your /etc/dhcpd.conf
|
|
Change the ethernet address to that of your T1500.</P
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
>Group {
|
|
#little black box
|
|
host box {
|
|
hardware ethernet 00:80:64:10:1d:1c;
|
|
fixed-address box.house;
|
|
option host-name "box";
|
|
server-name "192.168.1.1";
|
|
filename "/exports/T1500/tftpboot/vmlinux";
|
|
option root-path "192.168.1.1:/exports/T1500/root";
|
|
}
|
|
}</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>Configure a new host in DNS</P
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
>db.192.168.1.1:
|
|
52 in ptr box.</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
>db.house:
|
|
box in a 192.168.1.52</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>Export the root file system by adding</P
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
>/exports/T1500/root box(rw,no_root_squash)</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>to /etc/exports </P
|
|
><P
|
|
>Configuring tftp by adding/altering a line to /etc/inetd.conf</P
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
>tftp dgram udp wait root /usr/sbin/tcpd in.tftpd /exports/T1500/tftpboot</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>Now restart inetd,dhcpd,nfs and named</P
|
|
><P
|
|
>Configure the file system by setting the root password to 'pass', exposing telnetd</P
|
|
><P
|
|
>/exports/T1500/root/etc/passwd, alter 1st line: root:Z/U2u32VhNJoA:0:0:,,,:/root:/bin/bash</P
|
|
><P
|
|
>/exports/T1500/root/etc/inetd.conf, add: telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd</P
|
|
><P
|
|
>Append remote terminals to /etc/securetty to allow remote root access.</P
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
>tty1
|
|
tty2
|
|
tty3
|
|
tty4
|
|
tty5
|
|
tty6
|
|
tty7
|
|
tty8
|
|
tty9
|
|
tty10
|
|
tty11
|
|
tty12
|
|
ttyp0
|
|
ttyp1
|
|
ttyp2
|
|
ttyp3</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>Select network booting on the T1500 and reboot it.</P
|
|
><P
|
|
>Once it has booted, you should be able to telnet into the T1500. At ths point,
|
|
you shoudl configure SSH, and close the telnet hole in inetd.</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="SECT1"
|
|
><HR><H1
|
|
CLASS="SECT1"
|
|
><A
|
|
NAME="AEN131"
|
|
></A
|
|
>5. Editing FLASH image and other tools</H1
|
|
><DIV
|
|
CLASS="SECT2"
|
|
><H2
|
|
CLASS="SECT2"
|
|
><A
|
|
NAME="AEN133"
|
|
></A
|
|
>5.1. Editing Flash image</H2
|
|
><P
|
|
>The T1500s come with a utility called 'makeflash' (which lives in /sbin and
|
|
also comes on the CD). You can use this to generate a flash filesystem image
|
|
from a tar.gz, which can either be local, or an NFS / SMB file. This utility
|
|
generates all the necessary checksums too.</P
|
|
><P
|
|
>1. Flashing with a Slackware 8.0 image doesn't work, even with the calculated checksum. This suggests to me that there is a further check made on vmlinux itself.</P
|
|
><P
|
|
>2. Having dissected the leo.boot and vmlinux files supplied with the unit,
|
|
I
|
|
suspect that leo.boot checks vmlinux for the string "xxxxyyyyWYSEwysexxxx"
|
|
which is duly included in the custom kernel they use.</P
|
|
><P
|
|
>3. Leo.boot is in fact a Win CE related thing, with a queer bolt-on to allow
|
|
linux boots. The normal Win CE leo.boot is about half the size. It uses
|
|
the Eboot protocol for both ethernet and parallel port flash programming.
|
|
There are some free Linux tools available to format images correctly for
|
|
replacing leo.boot and also the OS image, but they rely on you supplying a
|
|
suitably compiled object version of the bootrom.</P
|
|
><P
|
|
>Be careful when running it though - it is possible to flash the thing to a
|
|
state in which the only way to get it booting again is to use the Wyse-provided
|
|
DOS util / laplink cable setup.</P
|
|
><P
|
|
>Also, if anyone manages to get makeflash running on something which isn't the
|
|
terminal, could you let me know how? AFAICT, it's trying to link with a very
|
|
old glibc and libforms.You should be able to flash-update the T1500 a few 100,000 times.</P
|
|
><P
|
|
>Apparently the T1500 is a Wyse WT3X15, based on what they call the 'Leo Board'.
|
|
You can download a DOS reflashing util, and some docs for it from the UK Wyse
|
|
website, in the Customer Support section's firmware page. It requires a parallel
|
|
laplink cable.</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="SECT2"
|
|
><HR><H2
|
|
CLASS="SECT2"
|
|
><A
|
|
NAME="AEN142"
|
|
></A
|
|
>5.2. Mounting FLASH</H2
|
|
><P
|
|
>After running the mknod commands below, you can then mount /dev/fnand and /dev/fnand1, which are both 16Mb flashfs partitions. You can also mount /dev/fram, and write
|
|
to it, however the data disappeared after umounting & remounting. It may have
|
|
use as swap space.</P
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
>mknod /dev/fcard b 63 0
|
|
mknod /dev/fcard.fmt b 63 128
|
|
mknod /dev/fcard1 b 63 1
|
|
mknod /dev/fcard1.fmt b 63 129
|
|
mknod /dev/fnand b 62 0
|
|
mknod /dev/fnand.fmt b 62 128
|
|
mknod /dev/fnand1 b 62 2
|
|
mknod /dev/fnand1.fmt b 62 120
|
|
mknod /dev/fnor b 65 0
|
|
mknod /dev/fnor.2m b 65 128
|
|
mknod /dev/fram b 64 128</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
></DIV
|
|
></DIV
|
|
><DIV
|
|
CLASS="SECT1"
|
|
><HR><H1
|
|
CLASS="SECT1"
|
|
><A
|
|
NAME="AEN146"
|
|
></A
|
|
>6. XFree86</H1
|
|
><P
|
|
>To boot up into XFree86, grab and install the normal XFree packages.
|
|
Grab and install the XF86Config file from <A
|
|
HREF="http://www.falkensweb.com/t1500.html"
|
|
TARGET="_top"
|
|
>http://www.falkensweb.com/t1500.html</A
|
|
>.
|
|
Use a line like</P
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
>xinit -- -bpp 16 &</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>In rc.local (or your distributions equiv.) to start it up automaticly.
|
|
To do the safe thing and run X as a user, create the user and use something
|
|
like the following to start and stop it (I placed this in the init.d dir. and
|
|
linked from rc.4). Change 'mplayer' on line 5 to your username.</P
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
>#! /bin/sh
|
|
case "$1" in
|
|
start)
|
|
echo -n "Automatically logging into X"
|
|
su -c 'cd ~mplayer && xinit -- -bpp 16' - mplayer &
|
|
echo "."
|
|
;;
|
|
stop|restart)
|
|
;;
|
|
*)
|
|
echo "Usage: /etc/init.d/mplayer {start|stop|restart}"
|
|
exit 1
|
|
esac
|
|
|
|
exit 0</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
></DIV
|
|
><DIV
|
|
CLASS="SECT1"
|
|
><HR><H1
|
|
CLASS="SECT1"
|
|
><A
|
|
NAME="AEN153"
|
|
></A
|
|
>7. Trouble Shooting</H1
|
|
><P
|
|
>The servers log file (/var/log/messages) should contain hints as to where you've
|
|
got to in the boot process, as it should log TFTP transfers, NFS mounts etc.
|
|
If not, add</P
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
>*.* /var/log/messages</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
> to</P
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
>/etc/syslogd.conf</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>and restart syslog</P
|
|
><P
|
|
>tcpdump allows you to see what packets are being transfered, and their NFS
|
|
filenames.</P
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
> tcpdump -i eth0 -s 500 host box</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>Your output from syslog should resemble:</P
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
>Jul 24 21:37:00 bookcase dhcpd: DHCPDISCOVER from 00:80:64:10:1d:1c via eth0
|
|
Jul 24 21:37:00 bookcase dhcpd: DHCPOFFER on 192.168.1.52 to 00:80:64:10:1d:1c via eth0
|
|
Jul 24 21:37:04 bookcase dhcpd: DHCPREQUEST for 192.168.1.52 from 00:80:64:10:1d:1c via eth0
|
|
Jul 24 21:37:04 bookcase dhcpd: DHCPACK on 192.168.1.52 to 00:80:64:10:1d:1c via eth0
|
|
Jul 24 21:37:04 bookcase tftpd[5003]: tftpd: trying to get file: /exports/T1500/tftpboot/vmlinux
|
|
Jul 24 21:37:24 bookcase mountd[4853]: authenticated mount request from box:600</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>Your tcpdump output should look like (when idle):</P
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
>17:31:41.450000 box.8022008 > bookcase.nfs: 116 lookup fh Unknown/1 "initctl"
|
|
17:31:41.450000 bookcase.nfs > box.8022008: reply ok 128 lookup fh Unknown/1</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><DIV
|
|
CLASS="SECT2"
|
|
><HR><H2
|
|
CLASS="SECT2"
|
|
><A
|
|
NAME="AEN166"
|
|
></A
|
|
>7.1. Intermittent kernel transfer problems (NFS null)</H2
|
|
><P
|
|
>There is a known problem which occasionally causes the T1500 to fail to reboot,
|
|
apparently because it fails to tftp the kernel after the reboot. A tcpdump of
|
|
this happening will resemble:</P
|
|
><TABLE
|
|
BORDER="1"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="SCREEN"
|
|
>12:04:38.506153 box.2049 > bookcase.house.tftp: 39 RRQ "/exports/T1500/tftpboot/vmlinux"
|
|
12:04:38.556153 bookcase.house.1199 > box.2049: udp 516
|
|
12:04:38.556153 box.2049 > bookcase.house.1199: udp 4
|
|
12:04:38.556153 bookcase.house.196610 > box.nfs: 516 null
|
|
12:04:38.556153 box.2049 > bookcase.house.1199: udp 4
|
|
12:04:38.556153 bookcase.house.196611 > box.nfs: 516 null
|
|
12:04:38.556153 box.2049 > bookcase.house.1199: udp 4
|
|
12:04:38.556153 bookcase.house.196612 > box.nfs: 516 null
|
|
12:04:38.556153 box.2049 > bookcase.house.1199: udp 4
|
|
12:04:38.566153 bookcase.house.196613 > box.nfs: 516 null
|
|
12:04:38.566153 box.2049 > bookcase.house.1199: udp 4
|
|
12:04:38.566153 bookcase.house.196614 > box.nfs: 516 null
|
|
12:04:38.566153 box.2049 > bookcase.house.1199: udp 4
|
|
12:04:38.566153 bookcase.house.196615 > box.nfs: 516 null</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>You will then see a syslog entry from tftp indicating that it is sending the
|
|
kernel, but no packets are exchanged. ARP requests go unanswered.</P
|
|
><P
|
|
>This can be resolved, but if you have your T1500 headless in a corner, is a
|
|
PITA.
|
|
Connect a monitor, keyboard and PS/2 mouse if not present.
|
|
Reboot the T1500, and press 'L' after the 1st beep.
|
|
The T1500 will now boot locally. Change the boot mode to 'Local' (Start->System
|
|
menu) and reboot.
|
|
Change the boot mode back to 'Network'</P
|
|
><P
|
|
>If this happens to you a lot, please try out tiggers-magic-tftpd. You can find this
|
|
at the same URL this document gives as the current home of the T1500 HOWTO. It requires python,
|
|
and has been reported to solve the problem. Please let me know how you get on !</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="SECT2"
|
|
><HR><H2
|
|
CLASS="SECT2"
|
|
><A
|
|
NAME="AEN173"
|
|
></A
|
|
>7.2. T1500 ignores DHCP OFFER and just asks again</H2
|
|
><P
|
|
>There is a bug in the BIOS, all DHCP packets must contain a 'root-path' option, even
|
|
if you are booting your own kernel which doesn't need one.</P
|
|
></DIV
|
|
></DIV
|
|
><DIV
|
|
CLASS="SECT1"
|
|
><HR><H1
|
|
CLASS="SECT1"
|
|
><A
|
|
NAME="AEN176"
|
|
></A
|
|
>8. Pending projects</H1
|
|
><P
|
|
>Edit / re-flash FLASH</P
|
|
><P
|
|
>PCMCIA usage - probably needs the next item :-)</P
|
|
><P
|
|
>Custom kernel (TFTP loader looks at checksum / WYSE string, we have a checksum maker now !)</P
|
|
><P
|
|
>Text mode console</P
|
|
><P
|
|
>SSH / SSHd / gcc for Compaq file system (should be easy to copy once compiled
|
|
on custom FS)</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="SECT1"
|
|
><HR><H1
|
|
CLASS="SECT1"
|
|
><A
|
|
NAME="AEN183"
|
|
></A
|
|
>9. Contributors and thanks</H1
|
|
><P
|
|
>[incomplete, real names needed too]</P
|
|
><P
|
|
>Cez</P
|
|
><P
|
|
>John Topper</P
|
|
><P
|
|
>Grapham Wood</P
|
|
><P
|
|
>Mike Sparks</P
|
|
><P
|
|
>James Mulcahy</P
|
|
><P
|
|
>Tigger</P
|
|
></DIV
|
|
></DIV
|
|
></BODY
|
|
></HTML
|
|
> |