• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Die Probleme gehen weiter... (SuSE90)

Status
Für weitere Antworten geschlossen.

hobbit

Newbie
Nachdem ich das Problem mit dem Hänger beim mounten des NFS-Dateisystems behoben hatte, lief das ganze am Testrechner (Pentium, 32 MB Ram, S3 PCI-Grafikkarte) auch. Dann habe ich den Serverbetrieb mit den 'echten' Clients versucht - 486er mit onboard S3-Grafik (kein PCI), Ram teilweise 8, teilweise 16, teilweise 32 MB. Da Ram also teilweise recht knapp ist, habe (und hatte) ich Swap über NFS eingestellt. Mit der alten SuSE7.2+LTSP3 lief das wie in meinem vorherigen Posting gesagt einwandfrei.

Jetzt, mit SuSE9.0+LTSP4 habe ich nur Probleme. Die automatische Erkennung des X-Servers funktioniert nicht (No Screens found). XServer=s3 funktioniert ebenso wenig.

Mit dem alten System hatte ich einen 336er XServer (XF86_S3)eingestellt. Also versuche ich das auch jetzt: XServer=XF86_S3
Client-Auflösung (wie es am alten System lief): 800x600, 16bpp. Damit startet er erst gar nicht. Erst sagt er er kann nur 8bpp. Nachdem ich das reduziert habe die Meldung er kann keine 800x600.
Wenn ich auf 640x480, 16bpp reduziere startet er einen XServer, ich sehe kurz den blauen KDM-Loginscreen, dann wird der Bildschirm wieder schwarz und ein paar Sekunden später startet das Spielchen von vorne.
Mit 640x480,8bpp erscheint der KDM-Login, ich kann mich anmelden, bekomme den Desktop geladen. Wenn ich dann aber ein Programm starte, z.B. Konqueror, kommt nach ein paar Sekunden Ladezeit die Meldung, daß dieser abgestürzt sei (SIGSEGV). Außerdem ist das Reaktionsverhalten gegenüber der alten Konfiguration subjektiv deutlich schlechter.

Das war jetzt an einem Client mit 32 MB Ram.

Der Client mit 8 MB läuft schon bevor er einen XServer starten kann mit Meldungen, die darauf hindeuten, daß zuwenig Speicher verfügbar ist, über, hier geht gar nichts mehr. Die NFS-Swap-Datei hat er aber angelegt, das konnte ich mitverfolgen. Bei einem 16 MB Client sehe ich vor dem Startversuch des XServers auch 2 bis 4 derartige Meldungen. Um es nochmal zu erwähnen, mit der SuSE7.2 und dem damals aktuellen LTSP3 lief auch der 8MB-Client, und war einigermaßen bedienbar in KDE2.

Ist das neue LTSP nicht mehr mit so alten 486ern lauffähig? Oder liegt´s an der neuen SuSE-Version? An KDE3? Muß ich wieder zurück in die 7er Steinzeit? Was kann ich noch probieren?
 

schweer

Hacker
hobbit schrieb:
Ist das neue LTSP nicht mehr mit so alten 486ern lauffähig? Oder liegt´s an der neuen SuSE-Version? An KDE3? Muß ich wieder zurück in die 7er Steinzeit? Was kann ich noch probieren?
Weshalb nimmst Du nicht die alte, aber offenbar funktionierende ltsp3-Installation? Wenn Du keine lokalen Applikationen laufen lassen willst, ist Version 4 eigentlich nicht notwendig.
(Eine neuere Version von Xfree86 kann auch in ltsp3 nachinstalliert werden.)

Hast Du auch schon XServer=s3virge probiert?

Das Spiel mit dem kurzen Erscheinen des KDM-Anmeldefensters ist bekannt, hatten wir hier schon. Wenn Du zum Anmelden xdm statt kdm nimmst, dann klappt es vielleicht. (Jedenfalls bei mir an der Schule ging es dann wieder bei bestimmten alten Kisten bzw. Kombinationen unterschiedlicher Netzwerkkomponenten).

wolfgang
 
OP
H

hobbit

Newbie
XServer=s3virge hab ich versucht, das ergibt ein ganz eigenartiges Flackern auf dem Bildschirm. Anmeldebildschirm erscheint nicht.

Ob es an LTSP4 liegt werde ich sehen. LTSP3 probier ich als nächstes nochmal aus. Welche Version ich damals eingesetzt hatte, kann ich jetzt aber nur noch schwer nachvollziehen (die alte Platte ist gecrasht), zeitlich war das aber jene, die zum Zeitpunkt SuSE7.2 oder 7.3 aktuell war. Kann sogar sein, daß das noch eine 2er war (2.09pre). Damals gab´s ja auch noch extra Kernels für die verschiedenen Netzwerkkartentypen ;-)
 

schweer

Hacker
hobbit schrieb:
XServer=s3virge hab ich versucht, das ergibt ein ganz eigenartiges Flackern auf dem Bildschirm. Anmeldebildschirm erscheint nicht.

Ob es an LTSP4 liegt werde ich sehen. LTSP3 probier ich als nächstes nochmal aus. Welche Version ich damals eingesetzt hatte, kann ich jetzt aber nur noch schwer nachvollziehen (die alte Platte ist gecrasht), zeitlich war das aber jene, die zum Zeitpunkt SuSE7.2 oder 7.3 aktuell war. Kann sogar sein, daß das noch eine 2er war (2.09pre). Damals gab´s ja auch noch extra Kernels für die verschiedenen Netzwerkkartentypen ;-)
Ja, ich habe für die alten Kisten (sind momentan nur noch drei oder vier) auch selbstkompilierte Kernel genommen und auch tmpfs (aka shm - shared memory) statt ram-disk benutzt. Übergang 2.09pre/3.0 war meiner Erinnerung nach Herbst 2001 ...

wolfgang
 
OP
H

hobbit

Newbie
schweer schrieb:
Ja, ich habe für die alten Kisten (sind momentan nur noch drei oder vier) auch selbstkompilierte Kernel genommen und auch tmpfs (aka shm - shared memory) statt ram-disk benutzt. Übergang 2.09pre/3.0 war meiner Erinnerung nach Herbst 2001 ...

wolfgang
So, der nächste Schritt... durch das Einspielen einer neuen QT-Bibliothek aus den KDE3.2 Packeten, die SuSE anbietet, konnte ich das KDM-Neustart und KDE-Programm-Absturz-Problem beheben. Und um die höheren Auflösungen, die die Onboardgrafik beherrscht, nutzen zu können, mußte ich manuell mit den Videoram, VRefresh und HRefresh-Werten in der lts.conf herumspielen. Jetzt läuft das auch wieder in 800x600, 16bpp wie gewünscht.

Die Frage ist jetzt noch, wie bekomm ich die Kisten mit 16 bzw. gar nur 8MB wieder vernünftig zum laufen. Werde mich dann wohl morgen ans Kernelkompilieren machen. Welche Kernelversion könnt ihr denn als Grundlage empfehlen, um den Speicherverbrauch für einen 486er LTSP-Client zu minimieren? Den NFS-Swap Patch muß es dafür natürlich auch geben.

Oder gibt´s schon irgendwo für diesen Einsatzzweck erstellte Kernels, die kleiner sind als die offiziellen LTSP3-Kernels?
 

schweer

Hacker
hobbit schrieb:
Die Frage ist jetzt noch, wie bekomm ich die Kisten mit 16 bzw. gar nur 8MB wieder vernünftig zum laufen. Werde mich dann wohl morgen ans Kernelkompilieren machen. Welche Kernelversion könnt ihr denn als Grundlage empfehlen, um den Speicherverbrauch für einen 486er LTSP-Client zu minimieren? Den NFS-Swap Patch muß es dafür natürlich auch geben.
Den Patch gibt es bis bis 2.4.21; ich würde eine 2.4-Version nehmen. Zu beachten ist, dass ab 2.4.5 (glaube jedenfalls, dass es 5 war) der Kernel zusätzlich den boot-param ip=dhcp braucht.

patch-url: http://nfs-swap.dot-heine.de/

wolfgang
 
OP
H

hobbit

Newbie
schweer schrieb:
hobbit schrieb:
Welche Kernelversion könnt ihr denn als Grundlage empfehlen, um den Speicherverbrauch für einen 486er LTSP-Client zu minimieren?
Den Patch gibt es bis bis 2.4.21; ich würde eine 2.4-Version nehmen. Zu beachten ist, dass ab 2.4.5 (glaube jedenfalls, dass es 5 war) der Kernel zusätzlich den boot-param ip=dhcp braucht.

patch-url: http://nfs-swap.dot-heine.de/

wolfgang

Danke für den URL. Habe dann auf Basis des 2.4.21 angefangen zu experimentieren und mir letztendlich auch einen Kernel bauen können (ohne initrd, ne2k-Treiber fest einkompiliert).
Der 8MB-Client bringt von Zeit zu Zeit immer noch diese Meldungen (was bedeutet das eigentlich genau?):

netswap_low_memory: dropping skb 0xc00866.......
netswap_low_memory: dropping skb 0xc00867.......

Trotzdem schafft auch er es jetzt, den XServer zu starten und sich am LTSP-Server anzumelden. Wenn natürlich auch deutlich langsamer als der Client mit 32 MB. Mit dem Standardkernel kamen die obigen Meldungen auch deutlich öfter.

Gibt´s noch weitere Möglichkeiten, LTSP für den 8MB-Client zu optimieren? Wie kann ich tmpfs statt ramdisk verwenden, wie du es gemacht hast? Bringt das auch nochmal eine Speicherersparnis?
 

schweer

Hacker
Zu den Fehlermeldungen fällt mir nichts ein.

Zu tmpfs: In der Kernelkonfiguration angeben; rc.local modifizieren (habe ich hier gerade nicht zur Hand). Der Unterschied ist, dass nur der Speicherplatz (für alle geschriebenen Dateien des Client zur Laufzeit) belegt wird, der auch notwendig ist (dynamisch). ram-disk ist statisch, zum Testen könntest Du die default Größe von 1Mb verringern (in lts.conf; Variable ind lts.conf.readme nachsehen).

wolfgang
 
OP
H

hobbit

Newbie
Mal anders gefragt, wenn ich es rechte sehe, mountet er da eine Ram-Disk nach /tmp, wo dann einige Skripte hinschreiben. Kann man das nicht gleich komplett umgehen und das Verzeichnis per NFS vom Server mounten? Müßte man dann halt verschiedene Verzeichnisse für die Clients nehmen und das Verzeichnis zu Beginn der Sitzung erstmal säubern, da das ja nicht automatisch leer ist wie bei einer Ram-Disk.
 

schweer

Hacker
hobbit schrieb:
Mal anders gefragt, wenn ich es rechte sehe, mountet er da eine Ram-Disk nach /tmp, wo dann einige Skripte hinschreiben. Kann man das nicht gleich komplett umgehen und das Verzeichnis per NFS vom Server mounten? Müßte man dann halt verschiedene Verzeichnisse für die Clients nehmen und das Verzeichnis zu Beginn der Sitzung erstmal säubern, da das ja nicht automatisch leer ist wie bei einer Ram-Disk.
Im Prinzi ja, ist aber viel mehr Organisiererei bei vielen Clients und unsicher dazu.
------------------------------------------------------
Hier rc.local, modifiziert für tmpfs aka shmfs
----------------------
#!/bin/sh
#
# rc.local
#
# This script will setup the environment for a diskless workstation, as
# part of the Linux Terminal Server Project (http://www.LTSP.org)
#
# modified for use with custom kernel
# with devfs and shmfs compiled in (devfs with 'mount on boot' enabled)
# schweer at cityweb.de
#
PATH=/bin:/usr/bin:/usr/sbin:/sbin; export PATH

. /etc/ltsp_functions

/sbin/devfsd /dev
#
# Mount shmfs (insert a line 'shmfs /tmp shm defaults 0 0' in fstab)
#
echo "Mounting shm filesystem"
mount -a
#
# Mount /proc before /tmp, so that we can display the progress
#
echo "Mounting /proc filesystem"
mount -n -t proc /proc /proc

#
# Get the runlevel for this workstation
#


RUNLEVEL=`get_cfg RUNLEVEL 5`

#
# Find out if we want to allow local applications
#

pr_set 67 "Checking for Local Apps"

LOCAL_APPS=`get_cfg LOCAL_APPS N`

if [ "${LOCAL_APPS}" = "Y" ]; then
if [ ! -d /home ]; then
pr_warn
echo
echo "WARNING! You have Local apps enabled in lts.conf, but"
echo " you don't have the local_apps package loaded"
echo " Local apps will be disabled."
echo
LOCAL_APPS="N"
fi
fi

#
# Find out if we want to swap via NFS
#
USE_NFS_SWAP=`get_cfg USE_NFS_SWAP N`
#
############ commented out due to use of smhfs ###########################
#
# Create and mount the ramdisk as the /tmp filesystem This
# is the only place we can write files, because everything else
# is read-only.
#
# echo "Creating ramdisk on /tmp"
# RAMDISK_SIZE=`get_cfg RAMDISK_SIZE 1024`
# /sbin/mke2fs -q -m0 /dev/ram1 ${RAMDISK_SIZE}
# /bin/mount -n /dev/ram1 /tmp

###################### umount /oldroot (moved down) ########################
# Un-mount the initrd, to free up some space
# changed by schweer at cityweb.de January 2002
# first kill dhclient, cause oldroot is used by this process with pid 67
# copy files beforehand and start a different dhclient as last action
# in rc.local. this way dhclient will probably renew leases.
# note: we have to use another dhclient, cause the one coming with initrd is
# linked against uClibc, which is no longer available.

mkdir /tmp/var
mkdir /tmp/var/state
mkdir /tmp/var/state/dhcp

#cp /oldroot/var/state/dhcp/* /tmp/var/state/dhcp
#cp /oldroot/etc/dhcpc/* /tmp

#kill `pidof dhclient`
#/usr/sbin/freeramdisk /dev/rd/0
# umount /oldroot >/dev/null

#################################################################

pr_set 70 "Setting Hostname"

HOSTNAME=`hostname`
echo "Current hostname: ${HOSTNAME}"

################################################################################
#
# Get the IP address of the default server. This is used for XDM_SERVER,
# TELNET_HOST and SYSLOG_HOST if any of them are not set explicitly.
# Default to '192.168.0.254' if it is NOT set in the config file.
#
DEFAULT_SERVER=`get_cfg SERVER 192.168.0.254`

>/tmp/mtab

################################################################################
#
# Load some kernel modules
#

pr_set 71 "Loading Modules"

SERIAL_MOD_LOADED="N"
PARALLEL_MOD_LOADED="N"

KERNEL_VERSION=`cut -d " " -f3 /proc/version`
MODULE_DIR=/lib/modules

for i in 01 02 03 04 05 06 07 08 09 10; do
MODULE=`get_cfg MODULE_${i}`
if [ -n "${MODULE}" ]; then
if [ "${MODULE}" = "serial" ]; then
SERIAL_MOD_LOADED="Y"
fi
if [ "${MODULE}" = "lp" ]; then
PARALLEL_MOD_LOADED="Y"
fi
case "${MODULE}" in

/*) # If it starts with a slash, we use insmod
#
MODULE_PATH="${MODULE_DIR}/${KERNEL_VERSION}${MODULE}"
/sbin/insmod ${MODULE_PATH}
ERR=$?
if [ ${ERR} -ne 0 ]; then
pr_fail
echo
echo "ERROR! loading module: ${MODULE} failed !"
echo
echo -n "Press <enter> to continue "
read CMD
exit
fi
;;

*) # Otherwise, we use modprobe
#
echo "Loading: ${MODULE}"
/sbin/modprobe ${MODULE}
ERR=$?
if [ ${ERR} -ne 0 ]; then
pr_fail
echo
echo "ERROR! loading module: ${MODULE} failed !"
echo
echo -n "Press <enter> to continue "
read CMD
exit
fi
;;
esac
fi
done

TYPE_0=` get_cfg PRINTER_0_TYPE`
TYPE_1=` get_cfg PRINTER_1_TYPE`
TYPE_2=` get_cfg PRINTER_2_TYPE`
X_MOUSE_DEVICE=` get_cfg X_MOUSE_DEVICE`

SERIAL_MOD_NEEDED="N"
if [ "${TYPE_0}" = "S" -o "${TYPE_1}" = "S" -o "${TYPE_2}" = "S" ]; then
SERIAL_MOD_NEEDED="Y"
else
case "${X_MOUSE_DEVICE}" in
/dev/ttyS*) SERIAL_MOD_NEEDED="Y"
;;
esac
fi

if [ "${TYPE_0}" = "P" -o "${TYPE_1}" = "P" -o "${TYPE_2}" = "P" ]; then
PARALLEL_MOD_NEEDED="Y"
fi

#
# Now, see if we need to load the serial or parallel driver modules
#
if [ "${SERIAL_MOD_NEEDED}" = "Y" -a "${SERIAL_MOD_LOADED}" != "Y" ]; then
modprobe serial
fi

if [ "${PARALLEL_MOD_NEEDED}" = "Y" -a "${PARALLEL_MOD_LOADED}" != "Y" ]; then
modprobe lp
fi

################################################################################
#
# Setup the resolv.conf file
#

pr_set 72 "Setting up resolv.conf"

SEARCH_DOMAIN=`get_cfg SEARCH_DOMAIN`
if [ "${SEARCH_DOMAIN}" != "" ]; then
echo "search ${SEARCH_DOMAIN}" >/tmp/resolv.conf
fi

DNS_SERVER=`get_cfg DNS_SERVER ${DEFAULT_SERVER}`
echo "nameserver ${DNS_SERVER}" >>/tmp/resolv.conf

NFS_SERVER=`get_cfg NFS_SERVER ${DEFAULT_SERVER}`

################################################################################
#
# Setup swap
#
if [ "${USE_NFS_SWAP}" = "Y" ]; then
pr_set 73 "Checking for NFS swap"
modprobe nfsswap
mkdir /tmp/swapfiles
SWAPFILE=/tmp/swapfiles/${HOSTNAME}.swap
SWAP_SERVER=`get_cfg SWAP_SERVER ${NFS_SERVER}`
NFS_SWAPDIR=`get_cfg NFS_SWAPDIR /var/opt/ltsp`
pr_set 74 "Mounting swapfiles directory"
echo "Mounting swapfiles directory"
mount -t nfs -o rsize=2048,wsize=2048,nolock \
${SWAP_SERVER}:${NFS_SWAPDIR}/swapfiles \
/tmp/swapfiles
ERR=$?
if [ ${ERR} -ne 0 ]; then
pr_set 74 "Mounting of swap filesystem failed, err=${ERR}"
pr_fail
echo "Mounting of swap filesystem failed, err=${ERR}"
echo "Attempted to NFS mount ${SWAP_SERVER}:${LTSP_SWAPDIR}"
echo -n "Press <enter> to continue "
read CMD
exit
else
pr_set 75 "Preparing swapfile"
SWAPFILE_SIZE=`get_cfg SWAPFILE_SIZE 64m`
/sbin/prep_swap -s ${SWAPFILE_SIZE} -f ${SWAPFILE}
ERR=$?
if [ ${ERR} -ne 0 ]; then
pr_set 75 "Error creating swapfile, ERR=${ERR}"
pr_fail
echo "Error creating swapfile, ERR=${ERR}"
echo -n "Press <enter> to continue "
read CMD
exit
fi
pr_set 80 "Formatting Swapfile"
mkswap ${SWAPFILE}
ERR=$?
if [ ${ERR} -ne 0 ]; then
pr_set 80 "Error running mkswapswapfile, ERR=${ERR}"
pr_fail
echo "Error running mkswapswapfile, ERR=${ERR}"
echo -n "Press <enter> to continue "
read CMD
exit
fi
pr_set 83"Enabling swap via NFS"
echo "Enabling swap via NFS"
swapon ${SWAPFILE}
ERR=$?
if [ ${ERR} -ne 0 ]; then
pr_set 83 "swapon failed, ERR=${ERR}"
pr_fail
echo "swapon failed, ERR=${ERR}"
echo
echo "Are you sure the NFS/Swap patch has "
echo "been applied to the workstation kernel?"
echo
echo -n "Press <enter> to continue "
read CMD
exit
fi
fi
fi

################################################################################
#
# Mount filesystems
#

if [ "${LOCAL_APPS}" = "Y" ]; then
pr_set 85 "Mounting additional filesystems"
echo "Mounting additional filesystems..."
mount -t nfs -o nolock ${NFS_SERVER}:/home /home
fi

pr_set 86 "Setting up loopback device"
echo "Setting up loopback device"
ifconfig lo 127.0.0.1 netmask 255.0.0.0 broadcast 127.255.255.255

mkdir /tmp/compiled
# mkdir /tmp/var
mkdir /tmp/var/run
mkdir /tmp/var/log
mkdir /tmp/var/lock
mkdir /tmp/var/lock/subsys
mkdir /tmp/var/lib
mkdir /tmp/var/lib/xkb
mkdir /tmp/mnt

#
# Some SuSE Xservers expect the xkb/compiled dir in /var/X11R6
#
mkdir /tmp/var/X11R6
mkdir /tmp/var/X11R6/xkb
ln -sf /tmp/compiled /tmp/var/X11R6/xkb/compiled

if [ "${LOCAL_APPS}" = "Y" ]; then
mkdir /tmp/var/nis
mkdir /tmp/var/yp
mkdir /tmp/var/yp/binding
cat <<-EOF >/tmp/var/yp/nicknames
passwd passwd.byname
group group.byname
networks networks.byaddr
hosts hosts.byname
protocols protocols.bynumber
services services.byname
aliases mail.aliases
ethers ethers.byname
EOF
fi

################################################################################
#
# Setup the XF86Config file
#

pr_set 87 "Detecting video driver"
XF86CONFIG_FILE=`get_cfg XF86CONFIG_FILE`

XSERVER=`get_cfg XSERVER auto`
if [ "${XSERVER}" = "auto" ]; then
XSERVER=`/sbin/pci_scan /etc/vidlist`
if [ -z "${XSERVER}" ]; then
pr_set 87 "Auto probe of the video card failed !"
pr_fail
echo
echo " ERROR: Auto probe of the video card failed !"
echo " You need to specify the proper X server in lts.conf"
echo
echo -n "Press <enter> to continue "
read CMD
exit 1
fi
fi

if [ "${XSERVER}" = "i810" ]; then
modprobe agpgart
fi

if [ ! -z "${XF86CONFIG_FILE}" ]; then
#
# If XF86CONFIG_FILE is defined in the lts.conf file, then
# it points to an XF86Config file that is pre-made for a workstation
#
if [ -f /etc/${XF86CONFIG_FILE} ]; then
cp /etc/${XF86CONFIG_FILE} /tmp/XF86Config
else
#
# on Debian, XF86Config usually resides in /etc/X11, so try that also.
# a sysadmin may be used to that location.
#
cp /etc/X11/${XF86CONFIG_FILE} /tmp/XF86Config
fi
else
#
# Build the XF86Config file from entries in the lts.conf file
# If it starts with 'XF86_', then we use XFree86 3.3.6. Otherwise,
# we use XFree86 4.1.0
#
case ${XSERVER} in

XF86_*) /bin/sh /etc/rc.setupx3 ${XSERVER}
;;

*) /bin/sh /etc/rc.setupx ${XSERVER}
;;
esac
fi

##################### changed by schweer at cityweb.de ###############################
#
# Check the host- and servernames
#
SERVERNAME=`get_cfg SERVERNAME server`
echo "127.0.0.1 localhost ${HOSTNAME}" >/tmp/hosts
echo "${DEFAULT_SERVER} ${SERVERNAME}" >>/tmp/hosts

################################################################################
#
################################################################################
#
# Setup the hosts.equiv file
#
echo "${DEFAULT_SERVER}" >/tmp/hosts.equiv

################# inserted by schweer at cityweb.de ##############################################
#
# check if automatic search for config-file is wanted
#
XF86CONFIG=`get_cfg XF86CONFIG`
if [ "${XF86CONFIG}" = "host" ]; then
rm /tmp/XF86Config
fi
################################################################################

################################################################################
#
# Build the start_ws script
#
echo "Building the start_ws script"

XDM_SERVER=`get_cfg XDM_SERVER ${DEFAULT_SERVER}`

case ${XSERVER} in

XF86_*) XBINARY="${XSERVER}"
;;

*) XBINARY="XFree86"
;;
esac

ACCESS_CONTROL=`get_cfg DISABLE_ACCESS_CONTROL N`
if [ "${ACCESS_CONTROL}" = "Y" ]; then
ACC_CTRL="-ac"
else
ACC_CTRL=""
fi

if [ -w /proc/progress ]; then
echo "/usr/X11R6/bin/${XBINARY} ${ACC_CTRL} -query ${XDM_SERVER} >/dev/tty3 2>&1" >/tmp/start_ws
else
echo "/usr/X11R6/bin/${XBINARY} ${ACC_CTRL} -query ${XDM_SERVER}" >/tmp/start_ws
fi

chmod 0755 /tmp/start_ws

################################################################################
#
# Start the syslog daemon
#
pr_set 88 "Starting syslogd"
SYSLOG_HOST=`get_cfg SYSLOG_HOST ${DEFAULT_SERVER}`
echo "Starting syslogd"
echo "*.* @${SYSLOG_HOST}" >/tmp/syslog.conf
syslogd -m 60 -R ${SYSLOG_HOST}


################################################################################
#
# Local app daemon stuff
#
if [ "${LOCAL_APPS}" = "Y" ]; then
pr_set 90 "Starting Portmapper"
echo "Starting portmapper"
portmap

pr_set 91 "Starting xinetd"
echo "Starting xinetd"
xinetd

NIS_SERVER=`get_cfg NIS_SERVER`
if [ "${NIS_SERVER}" != "" ]; then
pr_set 92"Setting NIS server"
echo "Setting NIS Server"
echo "ypserver ${NIS_SERVER}" >>/etc/yp.conf
fi

pr_set 93 "Setting domainname"
echo "Setting domainname"
NIS_DOMAIN=`get_cfg NIS_DOMAIN "ltsp"`
echo domainname ${NIS_DOMAIN}
domainname ${NIS_DOMAIN}

pr_set 94 "Starting ypbind"
echo "Starting ypbind"
if [ -z "${NIS_SERVER}" ]; then
ypbind -broadcast
else
ypbind
fi

#
# Need to give ypbind a chance to bind to the server, hopefully
# this is long enough
#
sleep 1

fi

################################################################################
#
# Run the additional rc files.
# These are to make it easier to integrate additional functionality
# into an ltsp system. Add your scripts to etc/rc.d, and put the name
# of the script in the lts.conf file, and it will be executed.
#

pr_set 95 "Checking for rcfiles"
for i in 01 02 03 04 05 06 07 08 09 10; do
RCFILE=`get_cfg RCFILE_${i}`
if [ -n "${RCFILE}" ]; then
if [ -x /etc/rc.d/${RCFILE} ]; then
/etc/rc.d/${RCFILE}
else
pr_fail
echo
echo " ERROR: RCFILE_${i} is setup in lts.conf, but"
echo " it does not exist in the /etc/rc.d directory"
echo
echo -n "Press <enter> to continue "
read CMD
fi
fi
done

################################################################################
#
# Setup the sound stuff.
#
SOUND=`get_cfg SOUND`
if [ "${SOUND}" = "Y" ]; then
pr_set 97 "Setting up sound"
if [ -x /etc/rc.sound ]; then
/etc/rc.sound
else
echo
echo "WARNING: SOUND is enabled in lts.conf, but it appears"
echo " that the sound package has not been installed."
echo
sleep 2
fi
fi

if [ "${RUNLEVEL}" = "5" ]; then
pr_set 100 "Completed - Launching X Window"
else
pr_set 100 "Completed"
fi
# dhclient
#netdate ${SERVERNAME}
--------------------------------------
Da sind noch etliche andere Änderungen drin, bitte erst mal checken.

wolfgang
 
OP
H

hobbit

Newbie
Danke, das mit tmpfs aka shmfs hab ich hinbekommen. Für LTSP4 ist (neben rc.local?) rc.sysinit relevant.

Trotzdem fühlt sich das ganze auf dem 8MB Client noch sehr sehr zäh an. Hat jemand eine Idee, was man noch machen könnte? Macht es vom Speicherverbrauch her eigentlich einen Unterschied, ob ein XFont-Server verwendet wird (USE_XFS=Y)?
 

schweer

Hacker
hobbit schrieb:
Danke, das mit tmpfs aka shmfs hab ich hinbekommen. Für LTSP4 ist (neben rc.local?) rc.sysinit relevant.
ltsp-4.0 benutzt rc.local nicht, nur rc.sysinit. Die beiden Skripte sind aber fast identisch.
Macht es vom Speicherverbrauch her eigentlich einen Unterschied, ob ein XFont-Server verwendet wird (USE_XFS=Y)?
Nicht getestet, aber sollte eigentlich keinen Unterschied machen (benutze immer XFS). Wenn Anwendungen viele Bitmaps darstellen müssen, dann wirkt sich das auf den lokalen Speicherplatz stark aus - die Performance hängt also stark von den eingesetzen Programmen ab.

wolfgang
 
Status
Für weitere Antworten geschlossen.
Oben