Προκατασκευασμένος εικονικός δίσκος για πολύ παλιούς thin clients

Ξεκίνησε από alkisg, 20 Δεκ 2015, 01:07:01 ΜΜ

« προηγούμενο - επόμενο »

alkisg

Κατά καιρούς όλα τα λειτουργικά σταματάνε να υποστηρίζουν κάποια παλιά συστήματα.

  • Στο Ubuntu 9.10 με τη νέα δυνατότητα "Kernel Mode Setting" του Xorg χάσαμε τους drivers για κάποες αρχαίες κάρτες γραφικών.
  • Στο Ubuntu 12.10 με το νέο Xorg αφαιρέθηκε η υποστήριξη για επιτάχυνση τύπου "XAA" και χάσαμε κάποιες ακόμη αρχαίες κάρτες γραφικών.
  • Στο Ubuntu 12.10 με τον νέο πυρήνα αφαιρέθηκε η υποστήριξη για αρχαίους επεξεργαστές που δεν  υποστηρίζουν PAE, Physical Address Extensions.
Έχουμε εκατοντάδες εργαστήρια που δεν επηρεάστηκαν από κανένα από τα παραπάνω.
Ίσως όμως με την αναβάθμιση σε 14.04 ή σε 16.04, κάποια ελάχιστα να επηρεαστούν και να μην μπορούν να ξεκινήσουν τους clients τους.
Σ' αυτήν την περίπτωση, μπορείτε να κατεβάσετε και να χρησιμοποιήσετε έναν προκατασκευασμένο εικονικό δίσκο, χρησιμοποιώντας τις παρακάτω εντολές:
Κώδικας: Bash
sudo -i
wget http://ts.sch.gr/repo/livecd/images/precise-i386.img -O /opt/ltsp/i386.img
ltsp-update-kernels
exit


Προσοχή, μετά από αυτές τις εντολές δεν θα πρέπει ποτέ πια να κάνετε δημοσίευση εικονικού δίσκου από τα sch-scripts.
Επίσης, δεν θα είναι δυνατή η εκκίνηση fat clients εάν κατεβάσετε αυτόν τον εικονικό δίσκο, όλοι οι clients θα ξεκινάνε ως thin.
Μια άλλη περίπτωση που μπορείτε να τον χρησιμοποιήσετε είναι εάν έχετε UEFI Windows στον server, και θέλετε να κάνετε εγκατάσταση 64bit Ubuntu που μπαίνει σε UEFI, γιατί το 32bit δεν μπαίνει, και οι clients σας είναι 32 bit.

Εάν κάποιος χρειαστεί βοήθεια στην εγκατάστασή του, ή χρειαστεί κάτι πιο προχωρημένο (και thin και fat), ας έρθει από το IRC.
Ο δίσκος είναι σε σύστημα compressed btrfs, οπότε είναι εφικτό οι πιο προχωρημένοι να τον προσαρτήσουν και να κάνουν ενημερώσεις κλπ.
Παραθέτω το ενσωματωμένο αρχείο README το οποίο εξηγεί κάποια από αυτά:
This is a compressed btrfs image to be used for netbooting older LTSP clients.
It contains Ubuntu 12.04 i386 with the stock Xorg, that supports XAA.
It's supposed to go to /opt/ltsp/images/i386.img if you only have a single
chroot, or to /opt/ltsp/images/precise-i386.img if you have multiple chroots.

There are two ways to mount it in order to maintain it.
1) As a chroot. This is the best way, it's quick and it mounts package cache:
 # mkdir /tmp/precise-i386
 # mount -o loop,compress /opt/ltsp/images/precise-i386.img /tmp/precise-i386
 # ltsp-chroot -b /tmp -m -a precise-i386
 # umount /tmp/precise-i386
2) As a KVM image (omit -curses if you prefer it in a separate window):
 # ltsp-update-kernels precise-i386
 # kvm -kernel /var/lib/tftpboot/ltsp/precise-i386/vmlinuz \
       -initrd /var/lib/tftpboot/ltsp/precise-i386/initrd.img \
       -append "root=/dev/sda" -curses \
       -drive format=raw,file=/opt/ltsp/images/precise-i386.img

The image itself was created under Ubuntu 12.04 for btrfs compatibility:
dd if=/dev/zero of=precise-i386.img bs=1M count=640
mkfs.btrfs -L precise-i386 precise-i386.img

The following image customizations were made:
/usr/share/ltsp/ltsp_config.d/22-light-defaults: better LTSP defaults
/etc/apt/preferences.d/grub: blacklist the grub package to save space
/etc/init/tty1.conf: autologin when booted with KVM
/etc/fstab: mount btrfs with compression when booted with KVM

richard

Να είσαι καλά, Άλκη. Χρησιμοποιώντας την εικόνα αυτή είναι πάρα πολύ πιο εύκολο από να έχει κανείς ένα χόριο chroot με άλλη έκδοση (που είχα σκεφτεί με την λίγη γνώση μου.)

Εάν υπάρχει κάποιο link για να μάθει κανείς λεπτομερώς τι ακριβώς έκανες για την εικόνα θα μου άρεσε να το μάθω.  :))

Από αυτό που έχω καταλάβει οι περισσότεροι στο φόρουμ έχουν αρκετή γνώση και σχετικά καλύτερα υλικά στο σχολείο τους από άλλα σχολεία. Που και που βρίσκω άλλες περιπτώσεις που το σχολείο έχει μόνο λίγα υλικά στο αποθήκη τους και καθόλου γνώση για την ύπαρξη linux. Ένα παράδειγμα είναι ότι πρόσθεσα μνήμη σε celeron p3 για να έχει 128 MB και δούλευε κάπως με 12.04 και πυρήνα 3.2.0.

Richard

alkisg

Ανέβασα δεύτερη έκδοση αυτής της εικόνας.
Για τους πιο προχωρημένους, παραθέτω στο αρχικό μήνυμα και τα περιεχόμενα του αρχείου README, το οποίο εξηγεί πώς φτιάχτηκε και πώς μπορεί να τροποποιηθεί.

themis21

Πρόσφατα εγκατέστησα στο λαπτοπ μου ubuntu 12.04 64bit dual-boot με windows 8 σε uefi mode.Αφού τα έκανα τα ubuntu εγκατάσταση έβαλα τα sch-scripts.Μετά δοκίμασα να ανοίξω μερικούς thin-clients με cpu 64bit έτρεχαν κανονικά μόλις όμως πήγαινα να το τρέξω σε 32bit cpu λογικό ήταν να μην τρέχουν.Έψαξα λίγο,ρώτησα και κατέληξα στο να κατεβάσω το precise-i386.img από εδώ:

https://alkisg.mysch.gr/steki/index.php?topic=6484.0

Μέχρι εκεί όλα καλά έκανα ακριβώς τις εντολές και κατέβηκε μια χαρά.Μετά όμως όταν πάω να το ξανά τρέξω σε άλλους υπολογιστές βλέπω ότι πάει να φορτώσει το amd64 image και όχι αυτό που κατέβασα.Ξέρεις κάποιος πως το κάνω ώστε να τρέχει το i386 image και όχι το amd64;

alkisg

Θέμη δοκίμασε λίγο αυτές τις εντολές:
Κώδικας: Bash
sudo -i
sed 's/amd64/i386/g' -i /etc/dnsmasq.d/ltsp-server-dnsmasq.conf 
service dnsmasq restart
ltsp-config nbd-server
service nbd-server restart
ltsp-update-kernels
exit
tail -f /var/log/syslog


Σ' εκείνο το σημείο η τελευταία εντολή tail θα δείχνει τα μηνύματα εκκίνησης των clients.
Ξεκίνα έναν client και αν δεν μπουτάρει ανέβασε εδώ το αποτέλεσμα.
Για να κλείσει η tail θέλει Ctrl+C.

Αν θες έλα και από το http://ts.sch.gr/wiki/IRC για απομακρυσμένη βοήθεια.

themis21

Άλκη τελικά πέτυχε πήγε να μπουτάρει το i386 αλλά για κάποιο λόγο σταματάει στο trying to load pxelinux.cfg default και δεν κάνει κάτι άλλο.
Επίσης η εντολή tail που μου είπες να τρέξω μου βγάζει αυτό εδώ μόλις ανοίγω τον client.
To ανεβάζω αυτό που μου έβγαλε σε αρχείο.



alkisg

Δοκίμασε να κλείσεις την ασύρματη σύνδεση του server και να κρατήσεις μόνο την ενσύρματη.

themis21

Το δοκίμασα και μετά το Trying to load pxelinux.cfg/default μου εμφανίζει για λίγο την οθόνη φόρτωσης των ubuntu και με πετάει σε γραμμή εντολών busybox.

alkisg

Αυτό πιθανώς να σημαίνει ότι δεν καταφέρνει να συνδεθεί στον εικονικό δίσκο (nbd-server).
Στο busybox του client, δοκίμασε τα παρακάτω και ανέβασε το output (ή πάρε φωτογραφία από το κινητό):
Κώδικας: Bash
cat /proc/cmdline
nbd-client 1.2.3.4 -N /opt/ltsp/i386 /dev/nbd1


Στον server, τα παρακάτω και ξανά το output:
Κώδικας: Bash
for f in /etc/nbd-server/conf.d/* /var/lib/tftpboot/ltsp/i386/pxelinux.cfg/default; do
    echo "==== $f ===="
    cat "$f"
done


Πάντως αυτές οι δουλειές στο φόρουμ γίνονται σε 1 ώρα και στο IRC σε 1 λεπτό...

themis21

Άλκη καλησπέρα,
Σήμερα δοκίμασα να τρέξω λίγο έναν client στο σπίτι μου με το image που
μου είχες κατεβάσει το i386.Αλλά μου βγάζει Socket failed:Connection
refused.Διάβασα ότι αυτό το πρόβλημα υπάρχει σε ubuntu 12.04.
Μήπως μπορείς να με βοηθήσεις;

alkisg

Καλησπέρα Θέμη,

ισχύει η ακριβώς προηγούμενη απάντησή μου, δηλαδή και γι' αυτόν τον υπολογιστή χρειάζονται οι παραπάνω πληροφορίες:
https://alkisg.mysch.gr/steki/index.php?topic=6484.msg75998#msg75998

Υποψιάζομαι ότι είναι το ίδιο θέμα με την άλλη εγκατάσταση που είχες, οπότε και λύνεται αν κατεβάσεις την νεότερη έκδοση του precise-i386.img και ξανατρέξεις sudo ltsp-update-kernels.

themis21

Άλκη συγνώμη που ξέχασα να το αναφέρω αλλά το Socket failed:Connection
refused μου το βγάζει σε client ο οποίος πάει να τρέξει από τον server που ανέφερα τις προηγούμενες μέρες τον οποίο τελικά τον έκανες εσύ να τρέχει το i386,όταν μπήκα στο IRC.Όλες τις μέρες από τότε που το έκανες δούλευε μια χαρά αλλά σήμερα μου έβγαζε αυτό που αναφέρω πιο πάνω.Μήπως μπορείς να βοηθήσεις;

thaaanos

Σε εργαστήριο ανάμεικτο P4 και Core i3
Έχω βάλει ubuntu 15.10 x64 λόγω UEFI , μπορώ κάπως να κάνω τους clients να επιλέξουν ή το i386.img ή το amd64.img (από την δημοσίευση δίσκου);

PS  'Αλκη πως σε πετυχαίνω στο IRC?

alkisg

Θάνο τα πρωινά εκτός απροόπτου (επισκέψεις σε σχολεία κλπ) είμαι online, οπότε ξαναπροσπάθησε αύριο.