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

Reply via email to