Γεια σας
Η εγγατάσταση:
server με ubuntu 10.04
linux-image-2.6.32-30-generic
dnsmasq 2.52-1ubuntu0.1
sch-scripts 10.04.51
eth0 στο τοπικό switch με τα client 192.168.5.1
eth1 στο router για διαδίκτυο 192.168.1.101
aptitude install sch-scripts
aptitude purge tftp-hpa
στο /etc/default/dnsmasq
ENABLED=1
CONFIG_DIR=/etc/dnsmasq.d,.dpkg-dist,.dpkg-old,.dpkg-new
στο /etc/dnsmasq.d/ltsp.conf
port=0
log-dhcp
enable-tftp
tftp-root=/var/lib/tftpboot
dhcp-boot=/ltsp/i386/pxelinux.0
dhcp-option=vendor:PXEClient,6,2b
dhcp-no-override
pxe-service=X86PC, Boot from local hard disk, 0
dhcp-range=192.168.5.201,192.168.5.249,8h
στο lts.conf
[Default]
LDM_SSHOPTIONSW="-o StrictHostKeyChecking=no -o CheckHostIP=no -o LogLOevel=silent"
[00:02:A5:35:57:A1]
LDM_AUTOLOGIN=True
HOSTNAME=hname
LDM_USERNAME=uname
LDM_PASSWORD=password
στο /var/lib/tftboot/ltsp/i386/pxelinux.cfg/default
default ltsp label ltsp
kernel vmlinuz
append ro initrd=initrd.img quiet splash nbd_proxy=false nocompcache nbdport=2000
ipappend 3
τo client είναι thin 192.168.5.215
Bάζω μπρος το server. βάζω μπρος το client, μπαίνει και φαίνεται όλα καλά. Στο server ανοίγω διαχείριση ΣΕΠΕΗΥ και το εικονίδιο του client είναι πράσινο και δεν φαίνεται τι έχει το client στο server.
Παω στο client. Ανοίγω το τερματικό. Βάζω sch-client
Error message είναι
Device "eth0
eth0" does not exist.
sch-client ERROR: Empty IP
Παω στο server. Ανοίγω το τερματικό. ping 192.168.5.215 είναι κανονικά.
Πριν 5 μήνες που πάλι είχαμε το πρόβλημα έκανα aptitude purge sch-scripts στο server και μετά έκανα aptitude install sch-scripts και δούλευε όλα κανονικά. Σήμερα που σας γράφω ξανά προσπαθώ, αλλά debootstrap και ltsp-server και sch-scripts μου βγάζει 404 Not Found ενώ τα άλλα, debconf-utils dnsmasq ldm-server ltsp-server ltspfs nbd-server squashfs-tools tftpd-hpa. Μάλλον είναι μία κακί τύχη για αθτήν την στιγμή. Άρα δεν μπορώ να κάνω το ίδιο fix που σας έγραψα πιο πάνο.
Richard
Έγινε αναβάθμιση των sch-scripts σε 10.04.53, οπότε χρειάζεται
sudo apt-get update
στον server για να ενημερωθεί το σύστημα για τη νέα έκδοση, πριν προχωρήσεις σε εγκατάσταση.
Για το "eth0" does not exist.", ίσως και να υπάρχει bug κάπου, λόγω του ότι έχεις 2 κάρτες στον server (συνήθως χρησιμοποιούμε μία, αλλά θεωρητικά υποστηρίζουμε και δύο).
Θα ήθελα να το δω live, ώστε να διορθώσουμε το bug είτε είναι εντός των sch-scripts είτε σε άλλο πακέτο. Αν μπορείς δηλαδή να έρθεις στο IRC, από το σχετικό μενού Βοήθεια των sch-scripts.
Αν δεν σε βολεύει, και δεν λυθεί με την επανεγκατάσταση το πρόβλημα, οκ, το παλεύουμε κι από εδώ, απλά θα πάρει λίγο περισσότερο χρόνο.
Γεια σας
Το εργαστήριο που έγινε είναι σε ένα σχολείο που είχα καιρό να πάω. Χωρίς να είμαι βέβαιος έχω ένα πιθανό σενάριο. Μπορεί να έγινε μπέρδεμα πιο είσοδο για κάρτα δικτύου είναι για το τοπικό lan και πιο να είναι για το router. Εάν είχαν αλλάξει και το eth0 και το eth1 στο network manager μετά που άλλαξε τα καλώδια στους εισόδους τότε θα δουλεύει αλλά τα MAC addresses θα άλλαζαν και το sch-client θα έμενε πίσω. Σας φαίνεται δυνατόν;
Richard
Όχι, τα sch-scripts θεωρητικά δεν επηρεάζονται από πόσες κάρτες δικτύου έχει ο server και ποια είναι η mac address τους.
Το αποτέλεσμα των παρακάτω εντολών, εφόσον τις τρέξεις στον client, θα βοηθήσει να δούμε γιατί ο sch-client παραπονιέται για την eth0:
ip -oneline -family inet addr show
ip -oneline -family inet route show
bash -x /usr/sbin/sch-client
Ευχαριστώ. Όταν και εάν ξανά συμβεί θα το κάνω. Αφού ήδη ξανά έκανα εγγατάσταση δεν μπορώ να δω το error τώρα.
Richard
Γεια σας πάλι
Ευτυχώς, για την ώρα δεν ξανά βρήκα αυτό το φαινόμενο στα σχολεία. Αλλά κατάφερα να το κάνω στο σπίτι μου. Έχω μία κατάσταση όπως σας έγραψα πιο πάνω για το σχολείο.
Στο dmesg:
[ 1.026293] via-rhine 0000:00:12.0: PCI INT A -> Link[ALKD] -> GSI 23 (level,
low) -> IRQ 23
[ 1.031000] eth1: VIA Rhine II at 0xea021000, 00:69:00:13:83:c7, IRQ 23.
[ 1.031710] eth1: MII PHY found at address 1, status 0x786d advertising 05e1 Link 45e1.
snip
[ 35.367431] udev: renamed network interface eth1 to eth0
[ 35.382996] udev: renamed network interface eth0_rename to eth1
snip
[ 35.820820] eth0: link up, 100Mbps, full-duplex, lpa 0x45E1
snip
[ 36.079987] eth1: setting full-duplex.
snip
[ 46.312006] eth1: no IPv6 routers present
[ 46.328004] eth0: no IPv6 routers present
Στο /etc/udev/rules/70-persistent-net.rules:
# PCI device 0x1106:0x3065 (via-rhine)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:69:00:13:83:c7", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
# PCI device 0x10b7:0x9200 (3c59x)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:50:da:45:2f:d6", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
Στο ifconfig:
eth0 Link encap:Ethernet HWaddr 00:69:00:13:83:c7
inet addr:192.168.5.1 Bcast:192.168.5.255 Mask:255.255.255.0
inet6 addr: fe80::269:ff:fe13:83c7/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:223232 errors:0 dropped:0 overruns:0 frame:0
TX packets:159434 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:234490648 (234.4 MB) TX bytes:44538361 (44.5 MB)
Interrupt:23 Base address:0x4000
eth1 Link encap:Ethernet HWaddr 00:50:da:45:2f:d6
inet addr:10.72.251.216 Bcast:10.72.251.255 Mask:255.255.255.0
inet6 addr: fe80::250:daff:fe45:2fd6/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1542 errors:0 dropped:0 overruns:0 frame:0
TX packets:1320 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1652504 (1.6 MB) TX bytes:194160 (194.1 KB)
Interrupt:19
======================================================
Όταν έχω και το eth1 συνδεδεμένη στο router για Ιντερνετ, όλα δουλεύει καλά. Ανοίγω τερματικό στο thin client και με την εντολή sch-client λέει connecting to localhost:570...
Όταν ανοίγω τον server χωρίς το ethernet καλώδιο, όμως - Ανοίγω τερματικό στο thin client και με την εντολή sch-client λέει error empty ip. Η γκρίνια είναι για το eth0 που είναι συνδεδεμένη στο switch με τα clients κανονικά.
Richard
Richard, και πάλι οι εντολές που είχα πει παραπάνω είναι αυτές που θα βοηθήσουν στη διάγνωση του προβλήματος:
ip -oneline -family inet addr show
ip -oneline -family inet route show
bash -x /usr/sbin/sch-client
Τρέξ' τες στο τερματικό στο thin client τη στιγμή που έχει πρόβλημα, και ανέβασε το αποτέλεσμα εδώ.
Γειά σας
Ανοίγω το server (livingbox) αφού δεν έχω το ethernet από το router στο eth1, άρα δεν έχω Internet. Το ethernet από το switch με το thin client στο eth0 είναι στην θέση του, άρα το client πέρνει το ip κ.λ.π. Ανοίγω το τερματικό στο thin client σαν user01a1.
Δείτε:
user01a1@livingbox:~$ ip -oneline -family inet addr show
1: lo inet 127.0.0.1/8 scope host lo
2: eth0 inet 192.168.5.1/24 brd 192.168.5.255 scope global eth0
3: eth1 inet 169.254.7.146/16 brd 169.254.255.255 scope link eth1:avahi
user01a1@livingbox:~$ ip -oneline -family inet route show
192.168.5.0/24 dev eth0 proto kernel scope link src 192.168.5.1
169.254.0.0/16 dev eth1 proto kernel scope link src 169.254.7.146
169.254.0.0/16 dev eth0 scope link metric 1000
user01a1@livingbox:~$ bash -x /usr/sbin/sch-client
+ PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/sbin:/usr/sbin
+ '[' -f /usr/share/ltsp/ltsp_config ']'
+ basic_info
+ test -n user01a1
+ test -n 1001
+ my_boolean_is_true ''
+ case $1 in
+ return 1
+ '[' -n 192.168.5.222 ']'
+ TYPE=thin
+ '[' 1001 -eq 0 ']'
+ '[' thin '!=' thin ']'
+ SERVER=localhost
+ SERVER=localhost
+ PORT=570
+ should_start
+ test thin = server
+ '[' 1001 -ne 0 ']'
+ return 0
+ '[' 1001 '!=' 0 ']'
+ '[' thin '!=' thin ']'
++ dirname /usr/sbin/sch-client
+ cd /usr/sbin
+ '[' -d ../sch-client ']'
+ cd /usr/share/sch-client
+ sch_info
+ local def_iface
+ true
++ sed -n '/^0.0.0.0/s/.* //p'
++ route -n
+ def_iface=
++ awk '$2=="0.0.0.0" { print $8 }'
++ route -n
+ def_iface='eth0
eth1
eth0'
+ test -n 'eth0
eth1
eth0'
+ break
++ hostname
+ HOSTNAME=livingbox
+ test -n livingbox
++ sed 's/.* \([0-9.]*\)\/.*/\1/'
++ ip -oneline -family inet addr show dev 'eth0
eth1
eth0'
Device "eth0
eth1
eth0" does not exist.
+ IP=
+ test -n ''
+ die 'Empty IP'
+ echo 'sch-client ERROR: Empty IP'
sch-client ERROR: Empty IP
+ exit 1
Richard
Richard, ωραίος! Τώρα, στο server άνοιξε το αρχείο sch-client:
sudo gedit /usr/sbin/sch-client
και άλλαξε τη γραμμή 109, από:
def_iface=${def_iface:-$(route -n | awk '$2=="0.0.0.0" { print $8 }')}
σε:
def_iface=${def_iface:-$(route -n | awk '$2=="0.0.0.0" { print $8; exit }')}
Αν αυτή η αλλαγή λύνει το πρόβλημα, πες μου για να το διορθώσω για όλους στο επόμενο update.
Γειά σας
Φαίνεται να έχει κάνει την δουλειά. Θα ξανά κάνω την όλη εγκατάσταση για να ξεφέυγουμε από οτιδήποτε "πατέντα." Θα ξανά γράψω με τις λεπτομέριες ύστερα.
Richard
Με εντελώς καινούργια εγκατάσταση και πλήρης ενημέρωση:
κατάσταση Α'
/usr/sbin/sch-client με def_iface=${def_iface:-$(route -n | awk '$2=="0.0.0.0" { print $8 }')}
cat /mnt/ltsp/etc/network/interfaces
auto lo eth0 eth1
iface lo inet loopback
iface eth0 inet static
address 192.168.5.1
netmask 255.255.255.0
iface eth1 inet dhcp
=============================
eth1 μη συνδυασμένη, άρα δεν πίρε ip
Παω στο client. Ανοίγω το τερματικό. Βάζω sch-client
. Error message είναι
Device "eth0
eth0" does not exist.
sch-client ERROR: Empty IP
Όπως σας είχα γράψει στην αρχή.
κατάσταση Β'
/usr/sbin/sch-client με def_iface=${def_iface:-$(route -n | awk '$2=="0.0.0.0" { print $8 }')}
cat /mnt/ltsp/etc/network/interfaces
auto lo eth0 eth1
iface lo inet loopback
iface eth0 inet static
address 192.168.5.1
netmask 255.255.255.0
iface eth1 inet static
address 10.72.251.101
netmask 255.255.255.0
gateway 10.72.251.10
=============================
eth1 μη συνδυασμένη, όμως έχει ip αλλά δεν έχει Internet.
Παω στο client. Ανοίγω το τερματικό. Βάζω sch-client
. Δεν έχει error. Δουλεύει κανονικά.
κατάσταση Γ'
/usr/sbin/sch-client με def_iface=${def_iface:-$(route -n | awk '$2=="0.0.0.0" { print $8; exit }')}
cat /mnt/ltsp/etc/network/interfaces
auto lo eth0 eth1
iface lo inet loopback
iface eth0 inet static
address 192.168.5.1
netmask 255.255.255.0
iface eth1 inet dhcp
=============================
eth1 μη συνδυασμένη, άρα δεν πίρε ip
Παω στο client. Ανοίγω το τερματικό. Βάζω sch-client
. Δεν έχει error. Δουλεύει κανονικά. Άρα το fix κάνει την δουλειά.
Αφού το fix κάνει την δουλεία σε όλες τις περιπτώσεις καλό να το έχουμε.
Richard
Να 'σαι καλά, το καταχώρησα εδώ (http://bazaar.launchpad.net/~sch-devs/sch-scripts/trunk/revision/382), θα συμπεριληφθεί στην επόμενη έκδοση.
Χαίρομαι. Πολύ καλή δουλειά σας.
Richard