Please excuse the length of the message but I wanted to provide anyone
willing to consider it with all the informations I have concerning the problem
I'm experiencing.
I'm running an LTSP server on a Debian 2.2 machine. When I boot a client out
of an etherboot floppy, it gets it's correct IP address from the DHCP server,
but then the tftp kernel download fails with the following error message:
Me: 192.168.0.2, Server: 192.168.0.1, Gateway: 192.168.0.1
Loading 192.168.0.1:/lts/vmlinuz-2.4.9-ltsp-5 TFTP error 2 (Access violation)
Unable to load file
On the server's log file (/var/log/syslog) I only find this:
Mar 24 14:28:48 claritas in.tftpd[491]: connect from 192.168.0.2
Mar 24 14:28:48 claritas tftpd[492]: tftpd: trying to get file:
/lts/vmlinuz-2.4.9-ltsp-5
Some informations concerning my setup:
[root@claritas ~]# ll /tftpboot/lts/
total 2108
-rw-r--r-- 1 root root 1054720 Dec 19 21:34 vmlinuz-2.4.9-ltsp-5
-rw-r--r-- 1 root root 1093120 Dec 19 21:34 vmlinuz-2.4.9-ltsp-lpp-5
tftp is version 0.10-1.
[root@claritas ~]# grep tftpd /etc/hosts.allow
in.tftpd: 192.168.0.0/255.255.255.240
[root@claritas ~]# grep tftp /etc/services
tftp 69/udp
[root@claritas ~]# grep tftp /etc/inetd.conf
tftp dgram udp wait root /usr/sbin/tcpd /usr/sbin/in.tftpd
/tftpboot
[root@claritas ~]# cat /opt/ltsp/i386/etc/lts.conf
[Default]
SERVER = 192.168.0.1
XSERVER = auto
X_MOUSE_PROTOCOL = "PS/2"
X_MOUSE_DEVICE = "/dev/psaux"
X_MOUSE_RESOLUTION = 400
X_MOUSE_BUTTONS = 3
USE_XFS = N
LOCAL_APPS = N
RUNLEVEL = 4
[obscuritas]
XSERVER = XF86_Mach64
LOCAL_APPS = N
USE_NFS_SWAP = Y
MODULE_01 = sb.o io=0x220 irq=5 dma=1 dma16=3 mpu_io=0x300
SWAPFILE_SIZE = 128m
RUNLEVEL = 4
[root@claritas ~]# cat /etc/dhcpd.conf
default-lease-time 600;
max-lease-time 7200;
option subnet-mask 255.255.255.240;
option broadcast-address 192.168.0.15;
option routers 192.168.0.1;
option domain-name-servers 192.168.0.1;
option domain-name "imagovitae";
option root-path "192.168.0.1:/opt/ltsp/i386";
shared-network WORKSTATIONS {
subnet 192.168.0.0 netmask 255.255.255.240 {
range 192.168.0.2 192.168.0.14;
option broadcast-address 192.168.0.15;
option routers 192.168.0.1;
}
}
shared-network PLACIDA {
subnet 192.168.1.0 netmask 255.255.255.240 {
range 192.168.1.2 192.168.1.14;
option broadcast-address 192.168.1.15;
option routers claritas.localdomain;
}
}
group {
use-host-decl-names on;
option log-servers 192.168.0.1;
host obscuritas {
hardware ethernet 00:50:04:2C:A4:A8;
filename "/lts/vmlinuz-2.4.9-ltsp-5";
fixed-address 192.168.0.2;
server-name "claritas.localdomain";
}
host umbra {
hardware ethernet 00:60:97:54:42:10;
fixed-address 192.168.1.2;
filename "/lts/vmlinuz-2.4.9-ltsp-5";
server-name "claritas.localdomain";
}
}
I tried commenting out the "range" lines, to no avail.
I did a search on google with the string "TFTP error 2 (Access violation)", I
found of other people who had a problem with the same symptoms back in
1999/2000. I tried what they where suggested to do, changing the line:
/usr/sbin/in.tftpd /tftpboot
into:
/usr/sbin/in.tftpd /tftpboot /tftpboot/lts
/usr/sbin/in.tftpd /tftpboot -s /tftpboot
/usr/sbin/in.tftpd /tftpboot "-s /tftpboot"
That did not help. So I did the following debugging on the server:
strace -f -t -v -p 169 -o inetd_log
tcpdump -a -i eth0 > tcpdump0_log 2>&1
and I got:
[root@claritas ~]# cat inetd_log
% time seconds usecs/call calls errors syscall
------ ----------- ----------- --------- --------- ----------------
17.67 0.050731 15 3276 3058 close
16.54 0.047492 152 312 read
11.58 0.033246 223 149 3 select
9.12 0.026171 1007 26 13 wait4
6.49 0.018633 37 508 rt_sigprocmask
5.18 0.014858 84 176 22 open
4.75 0.013650 853 16 4 execve
4.69 0.013471 112 120 write
4.27 0.012265 52 234 old_mmap
2.40 0.006877 23 297 rt_sigaction
2.10 0.006023 376 16 fork
1.59 0.004560 570 8 send
1.52 0.004378 42 105 brk
1.48 0.004263 164 26 18 connect
1.45 0.004163 43 96 ioctl
1.40 0.004012 48 83 munmap
1.36 0.003908 26 148 fstat
1.35 0.003872 35 112 1 fcntl
0.88 0.002537 42 60 mprotect
0.73 0.002106 81 26 socket
0.51 0.001473 70 21 5 stat
0.51 0.001462 27 55 alarm
0.27 0.000769 385 2 readlink
0.26 0.000743 68 11 10 access
0.22 0.000627 18 35 getpid
0.17 0.000489 31 16 dup2
0.15 0.000441 22 20 _llseek
0.14 0.000407 29 14 uname
0.12 0.000352 19 19 time
0.12 0.000335 26 13 3 sigreturn
0.09 0.000267 67 4 recvfrom
0.08 0.000216 27 8 setpgid
0.07 0.000187 62 3 pipe
0.06 0.000186 21 9 lseek
0.06 0.000186 19 10 getuid
0.05 0.000138 35 4 2 getpeername
0.05 0.000132 33 4 setuid
0.04 0.000127 64 2 getdents
0.04 0.000123 123 1 accept
0.04 0.000121 61 2 statfs
0.04 0.000116 39 3 getsockopt
0.03 0.000097 49 2 bind
0.03 0.000087 17 5 umask
0.03 0.000083 28 3 getsockname
0.03 0.000079 40 2 setsockopt
0.03 0.000078 78 1 chown
0.02 0.000067 67 1 chmod
0.02 0.000060 60 1 chdir
0.02 0.000059 20 3 geteuid
0.02 0.000058 19 3 getrlimit
0.01 0.000040 40 1 setsid
0.01 0.000039 20 2 getgid
0.01 0.000038 38 1 getcwd
0.01 0.000037 19 2 getegid
0.01 0.000025 25 1 dup
0.01 0.000022 22 1 setgid
0.01 0.000022 22 1 getgroups
0.01 0.000022 22 1 setgroups
0.01 0.000020 20 1 getppid
0.01 0.000020 20 1 setrlimit
0.01 0.000018 18 1 getpgrp
0.01 0.000018 18 1 gettimeofday
------ ----------- ----------- --------- --------- ----------------
100.00 0.287102 6085 3139 total
[root@claritas ~]# cat tcpdump0_log
tcpdump: listening on eth0
[...]
12:49:21.911520 obscuritas.bootpc > 255.255.255.255.bootps: xid:0x43784f9 secs:10
[|bootp]
12:49:21.913477 claritas.localdomain.bootps > obscuritas.bootpc: xid:0x43784f9 secs:10
Y:obscuritas S:claritas.localdomain [|bootp] [tos 0x10]
12:49:21.914908 obscuritas.bootpc > 255.255.255.255.bootps: xid:0x43784f9 secs:10
[|bootp]
12:49:21.924335 claritas.localdomain.bootps > obscuritas.bootpc: xid:0x43784f9 secs:10
Y:obscuritas S:claritas.localdomain [|bootp] [tos 0x10]
12:49:21.928857 arp who-has claritas.localdomain tell obscuritas
12:49:21.928931 arp reply claritas.localdomain is-at 0:1:2:f2:9e:48
12:49:21.930228 obscuritas.2009 > claritas.localdomain.tftp: 47 RRQ
"/lts/vmlinuz-2.4.9-ltsp-" [|tftp]
12:49:21.976955 claritas.localdomain.1028 > obscuritas.2009: udp 21
12:49:26.976489 arp who-has obscuritas tell claritas.localdomain
12:49:26.977809 arp reply obscuritas is-at 0:50:4:2c:a4:a8
92 packets received by filter
0 packets dropped by kernel
I noticed the incomplete file name "/lts/vmlinuz-2.4.9-ltsp-", missing the
final "5" character. I read of someone who solved a tftp problem under dos
simply by changing the file name. I did the same:
cp /tftpboot/lts/lts/vmlinuz-2.4.9-ltsp-5 /tftpboot/lts/lts/vmlinuz
chmod a+r /tftpboot/lts/lts/vmlinuz
then I modified /etc/dhcpd.conf in order to have:
host obscuritas {
hardware ethernet 00:50:04:2C:A4:A8;
filename "/lts/vmlinuz-2.4.9-ltsp-5";
fixed-address 192.168.0.2;
server-name "claritas.localdomain";
but the problem is still there:
[root@claritas ~]# cat tcpdump0_log
tcpdump: listening on eth0
16:40:46.335732 0.0.0.0.bootpc > 255.255.255.255.bootps: xid:0x43b605f [|bootp]
16:40:46.337729 claritas.localdomain.bootps > obscuritas.bootpc: xid:0x43b605f
Y:obscuritas S:claritas.localdomain [|bootp] [tos 0x10]
16:40:46.339191 obscuritas.bootpc > 255.255.255.255.bootps: xid:0x43b605f [|bootp]
16:40:46.342380 claritas.localdomain.bootps > obscuritas.bootpc: xid:0x43b605f
Y:obscuritas S:claritas.localdomain [|bootp] [tos 0x10]
16:40:46.344617 arp who-has claritas.localdomain tell obscuritas
16:40:46.344697 arp reply claritas.localdomain is-at 0:1:2:f2:9e:48
16:40:46.345997 obscuritas.2001 > claritas.localdomain.tftp: 34 RRQ "/lts/vmlinuz"
16:40:46.398613 claritas.localdomain.1028 > obscuritas.2001: udp 21
16:40:51.395988 arp who-has obscuritas tell claritas.localdomain
16:40:51.397306 arp reply obscuritas is-at 0:50:4:2c:a4:a8
16:40:58.956858 obscuritas.bootpc > 255.255.255.255.bootps: xid:0x43b6084 secs:10
[|bootp]
16:40:58.958782 claritas.localdomain.bootps > obscuritas.bootpc: xid:0x43b6084 secs:10
Y:obscuritas S:claritas.localdomain [|bootp] [tos 0x10]
16:40:58.960212 obscuritas.bootpc > 255.255.255.255.bootps: xid:0x43b6084 secs:10
[|bootp]
16:40:58.963382 claritas.localdomain.bootps > obscuritas.bootpc: xid:0x43b6084 secs:10
Y:obscuritas S:claritas.localdomain [|bootp] [tos 0x10]
16:40:58.967768 arp who-has claritas.localdomain tell obscuritas
16:40:58.967828 arp reply claritas.localdomain is-at 0:1:2:f2:9e:48
16:40:58.969117 obscuritas.2002 > claritas.localdomain.tftp: 34 RRQ "/lts/vmlinuz"
16:40:59.015399 claritas.localdomain.1028 > obscuritas.2002: udp 21
18 packets received by filter
0 packets dropped by kernel
I now turn to you, expecially the Debian users, since on another PC with
RedHat 7.2 I did not experience this difficulty.
Thank you for your patience!
Sandro
--
Bellum se ipsum alet.
La guerra nutre se stessa.
Livio, "Ab urbe condita", XXXIV,9
_____________________________________________________________________
Ltsp-discuss mailing list. To un-subscribe, or change prefs, goto:
https://lists.sourceforge.net/lists/listinfo/ltsp-discuss
For additional LTSP help, try #ltsp channel on irc.openprojects.net