.titleBar { margin-bottom: 5px!important; }

samba startet nicht (ds-mod0.2.9-p8)

Dieses Thema im Forum "Freetz" wurde erstellt von ChrisP, 26 Jan. 2009.

  1. ChrisP

    ChrisP Neuer User

    Registriert seit:
    21 März 2006
    Beiträge:
    44
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    HL
    Hello again möchte ich fast sagen... ;-)

    nachdem ich vor ein paar Tagen wundervolle Hilfe erhalten habe und nun schon soweit bin, dass der ds-mod v.0.2.9-p8 auf meiner Fon 5010 läuft und sogar erfolgreich die entfernte Freigabe mit smbmount einbindet.
    Nun will aber der samba-Dienst nicht starten und die Fehlermeldung sagt mir nicht wirklich viel:
    Code:
    Looking for user 'samba' ... /mod/etc/init.d/rc.samba: /mod/etc/init.d/rc.samba: 121: adduser: not found
    not created - error occurred
    Starting samba nmbd.../mod/etc/init.d/rc.nmbd: /mod/etc/init.d/rc.nmbd: 58: nmbd: not found
    failed.
    Starting samba smbd.../mod/etc/init.d/rc.smbd: /mod/etc/init.d/rc.smbd: 56: smbd: not found
    failed.
    Bei diversen samba-Startproblemen ist hier im Board immer wieder ein "make precompiled" empfohlen worden aber weil ich erstens weiß, dass es lange dauert und zweitens nicht weiß, was es macht, frage ich euch, ob es Erfolgsaussichten gibt, wenn ich das Image mit ds-mod noch einmal neu mit "make precompiled" erstelle und auf die FB schicke?
    Immerhin scheinen ja doch wenigstens die in Zeile 56 und 58 des samba-Startskripts aufgerufenen Binaries "nmbd" und "smbd" nicht auffindbar zu sein. Was mir allerdings die Fehlermedung mit dem user 'samba' sagen will ist mir schleierhaft. Klärt mich auf! ;-)
    Danke dafür.
     
  2. matze1985

    matze1985 Aktives Mitglied

    Registriert seit:
    17 Feb. 2007
    Beiträge:
    1,537
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    hmm anscheinend wurden einige Binarys auf deiner Box nicht gefunden.
    Sind die denn da?
    Code:
    find / -print | grep mbd
    find / -print | grep adduser
    Wie sieht denn dein PATH aus?
    Code:
    echo $PATH
    cat /etc/init.d/rc.S | grep PATH
     
  3. ChrisP

    ChrisP Neuer User

    Registriert seit:
    21 März 2006
    Beiträge:
    44
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    HL
    Code:
    /var/mod/root # find / -print | grep mbd
    /etc/init.d/rc.nmbd
    /etc/init.d/rc.smbd
    find: unable to open `/proc/7/fd': No such file or directory
    /var/mod/etc/init.d/rc.smbd
    /var/mod/etc/init.d/rc.nmbd
    /var/mod/root # find / -print | grep adduser
    find: unable to open `/proc/7/fd': No such file or directory
    /var/mod/root # echo $PATH
    /sbin:/bin:/usr/sbin:/usr/bin:/mod/sbin:/mod/bin:/mod/usr/sbin:/mod/usr/bin
    /var/mod/root # cat /etc/init.d/rc.S | grep PATH
    PATH=/sbin:/bin:/usr/sbin:/usr/bin
    export PATH runlevel prevlevel
     export CONFIG_ENVIRONMENT_PATH=/proc/sys/dev/adam2
     export CONFIG_ENVIRONMENT_PATH=/proc/sys/urlader
    echo firmware_info `/etc/version` >$CONFIG_ENVIRONMENT_PATH/environment
    myADAM2ENV=`cat $CONFIG_ENVIRONMENT_PATH/environment`
    /var/mod/root #
     
  4. matze1985

    matze1985 Aktives Mitglied

    Registriert seit:
    17 Feb. 2007
    Beiträge:
    1,537
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    dann wirst du wohl nicht um ein precompiled herumkommen, da sie nicht auf der box geladet sind.
    Du kannst höhstens nochmal in deinem ds-mod verzeichis schauen, ob du sie dort unter build/modified/filesystem oder source findest.
     
  5. ChrisP

    ChrisP Neuer User

    Registriert seit:
    21 März 2006
    Beiträge:
    44
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    HL
    So, nun habe ich einige Male versucht, das "make precompiled" auszuführen.(Nur zur Sicherheiut, das wird zwischen "make menuconfig" und "make" ausgeführt? Vorher habe ich noch ein "make clean" veranstaltet.) Es gab immer einen Abbruch bei an der gleichen Stelle:
    Code:
    applying patch /home/cpx/Desktop/ds-0.2.9/source/crosstool-0.42/patches/gcc-3.3.2/sh-pic-set_fpscr-gcc-3.3.2.patch
    patching file gcc/config/sh/lib1funcs.asm
    Hunk #2 succeeded at 1982 with fuzz 1.
    applying patch /home/cpx/Desktop/ds-0.2.9/source/crosstool-0.42/patches/gcc-3.3.2/thunk3.patch
    patching file gcc/testsuite/g++.old-deja/g++.jason/thunk3.C
    + exists=
    + echo http://www.kernel.org/pub/linux/kernel/v2.4/linux-2.4.26.tar.bz2
    + sed s,.*/,,;
    + ARCHIVE_NAME=linux-2.4.26.tar.bz2
    + echo linux-2.4.26.tar.bz2
    + sed s,\.tar\.gz$,,;s,\.tar\.bz2$,,;s,\.tgz,,;
    + BASENAME=linux-2.4.26
    + test -z 
    + test -d /home/cpx/Desktop/ds-0.2.9/source/crosstool-0.42/build/mipsel-unknown-linux-gnu/gcc-3.3.2-glibc-2.3.2/linux-2.4.26
    + test -f /home/cpx/Desktop/ds-0.2.9/dl/linux-2.4.26.tar.bz2
    + exists=/home/cpx/Desktop/ds-0.2.9/dl/linux-2.4.26.tar.bz2
    + break
    + test x/home/cpx/Desktop/ds-0.2.9/dl/linux-2.4.26.tar.bz2 = x
    + test -f /home/cpx/Desktop/ds-0.2.9/dl/linux-2.4.26.tar.bz2
    + test -n 
    + cd /home/cpx/Desktop/ds-0.2.9/source/crosstool-0.42/build/mipsel-unknown-linux-gnu/gcc-3.3.2-glibc-2.3.2
    + echo hmm maybe cd
    hmm maybe cd
    + set +x
    
    bzip2: Compressed file ends unexpectedly;
    	perhaps it is corrupted?  *Possible* reason follows.
    bzip2: Inappropriate ioctl for device
    	Input file = (stdin), output file = (stdout)
    
    It is possible that the compressed file(s) have become corrupted.
    You can use the -tvv option to test integrity of such files.
    
    You can use the `bzip2recover' program to attempt to recover
    data from undamaged sections of corrupted files.
    
    tar: Unexpected EOF in archive
    tar: Unexpected EOF in archive
    tar: Error is not recoverable: exiting now
    cannot unpack /home/cpx/Desktop/ds-0.2.9/dl/linux-2.4.26.tar.bz2
    make: *** [source/crosstool-0.42/.unpacked2] Fehler 1
    
    Und nu? ;-) Ich weiß nicht einmal genau, welche Datei denn nun kaputt ist.
    Gibt es vielleicht noch andere Wege, das oben beschriebene Problem zu beheben?
     
  6. olistudent

    olistudent IPPF-Urgestein

    Registriert seit:
    19 Okt. 2004
    Beiträge:
    14,756
    Zustimmungen:
    1
    Punkte für Erfolge:
    0
    Beruf:
    Softwareentwickler
    Ort:
    Kaiserslautern
    Code:
    cannot unpack /home/cpx/Desktop/ds-0.2.9/dl/linux-2.4.26.tar.bz2
    Lösch mal die Datei und versuch es erneut.

    MfG Oliver
     
  7. ChrisP

    ChrisP Neuer User

    Registriert seit:
    21 März 2006
    Beiträge:
    44
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    HL
    Jo, das stimmt, er lädt die Datei neu und kommt durch.
    Aber nun gibt's (für mich) auch schon die nächste Hürde:
    Code:
    + test ! -f Makefile
    + libc_cv_ppc_machine=yes CC=gcc /home/cpx/Desktop/ds-0.2.9/source/crosstool-0.42/build/mipsel-unknown-linux-gnu/gcc-3.3.2-glibc-2.3.2/glibc-2.3.2/configure --prefix=/usr --build=i686-pc-linux-gnu --host=mipsel-unknown-linux-gnu --without-cvs --disable-sanity-checks --with-headers=/home/cpx/Desktop/ds-0.2.9/toolchain/build/gcc-3.3.2-glibc-2.3.2/mipsel-unknown-linux-gnu/mipsel-unknown-linux-gnu/include --enable-hacker-mode
    checking build system type... i686-pc-linux-gnu
    checking host system type... mipsel-unknown-linux-gnu
    checking sysdep dirs... sysdeps/mips/elf sysdeps/unix/sysv/linux/mips sysdeps/unix/sysv/linux sysdeps/gnu sysdeps/unix/common sysdeps/unix/mman sysdeps/unix/inet sysdeps/unix/sysv sysdeps/unix/mips sysdeps/unix sysdeps/posix sysdeps/mips/mipsel sysdeps/mips/fpu sysdeps/mips sysdeps/wordsize-32 sysdeps/ieee754/flt-32 sysdeps/ieee754/dbl-64 sysdeps/ieee754 sysdeps/generic/elf sysdeps/generic
    checking for a BSD-compatible install... /usr/bin/install -c
    checking whether ln -s works... yes
    checking for pwd... /bin/pwd
    checking for mipsel-unknown-linux-gnu-gcc... gcc
    checking version of gcc... 4.2.4, bad
    checking for gnumake... no
    checking for gmake... no
    checking for make... make
    checking version of make... 3.81, ok
    configure: error:
    *** These critical programs are missing or too old: gcc
    *** Check the INSTALL file for required versions.
    make: *** [source/crosstool-0.42/.installed] Fehler 1
    cpx@virtualcpx:~/Desktop/ds-0.2.9$
    Also schnell ein "sudo apt-get update && sudo apt-get install gcc" aber da gabs nicht zu aktualisieren, das Problem besteht weiter. Kann ich ihn in irgendeiner make-config-Datei zwingen eine andere gcc-Version zu benutzen?
     
  8. ChrisP

    ChrisP Neuer User

    Registriert seit:
    21 März 2006
    Beiträge:
    44
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    HL
    Ok, ich denke abgesehen davon, dass das "precompiled" bei mir nicht so recht durchstarten will, wird das wohl auch nicht des Rätsels Lösung sein.
    Eben habe ich einfach das Image für meine 5010 noch einmal "gemaked" und siehe da, der Fehler beschränkt sich jetzt schon mal "nur noch" auf die beiden nicht gefundenen Daemons:
    Code:
    Looking for user 'samba'...ok.
    Starting samba nmbd.../mod/etc/init.d/rc.nmbd: /mod/etc/init.d/rc.nmbd: 58: nmbd: not found
    failed.
    Starting samba smbd.../mod/etc/init.d/rc.smbd: /mod/etc/init.d/rc.smbd: 56: smbd: not found
    failed
    Wie ich eben beschrieben habe, scheinen diese auch gar nicht in den Packages zu sein.
    Fragt sich jetzt noch, woher ich diese bekommen kann... ;)
     
  9. olistudent

    olistudent IPPF-Urgestein

    Registriert seit:
    19 Okt. 2004
    Beiträge:
    14,756
    Zustimmungen:
    1
    Punkte für Erfolge:
    0
    Beruf:
    Softwareentwickler
    Ort:
    Kaiserslautern
    Was ist denn unter packages/samba.../... auf dem PC zu finden? Normalerweise waren in ds-0.2.9 die Binaries noch in den Packages.

    MfG Oliver

    edit: Okay. Hab grad in das Package geschaut. Da ist wirklich kein Binary drin...
     
  10. RalfFriedl

    RalfFriedl IPPF-Urgestein

    Registriert seit:
    22 Apr. 2007
    Beiträge:
    12,343
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Wo sollen Deiner Meinung nach die Binaries herkommen, wenn nicht als Ergebnis von "make precompiled"?
     
  11. ChrisP

    ChrisP Neuer User

    Registriert seit:
    21 März 2006
    Beiträge:
    44
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    HL
    Na gut, ok, mir ist schlicht unklar, was "make precompiled" eben genau macht.
    Vielleicht hast du ja doch noch eine Idee, wie ich das noch zum Laufen überrede?

    Zum Samba-Package:
    Ich habe von bodega (http://www.ip-phone-forum.de/showpost.php?p=779302&postcount=1) das "samba-mipsel.tar.gz" ausgepackt und dort die binaries (jedenfalls namentlich identisch) gefunden. Wenn ich diese allerdings in den ds-0.2.9/packages/<blabla>/sbin schiebe wird mein Image um ca. 230kb zu groß...
    Fragt sich, ob es vielleicht doch noch irgendwo kleinere/abgespeckte Ableger dieser Binaries gibt.
     
  12. ChrisP

    ChrisP Neuer User

    Registriert seit:
    21 März 2006
    Beiträge:
    44
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    HL
    Sooo... jetzt habe ich das samba-Package im dl-Ordner so modifiziert, dass beim Start des Service (rc.samba, rc.nmbd, rc.smbd) die Binaries aus der Freigabe nach "/tmp/samba-binaries" kopiert werden und dann der Start der Daemons versucht wird.
    Wenn etwas schief läuft sowie beim Beenden des samba-Service wird "/tmp/samba-binaries" wieder gelöscht.
    Das modifizierte package sowie die fehlenden Binaries habe hier für Interessierte mal zum Download hinterlegt.
    Leider starten nmbd und smbd trotz allem nicht.
    Code:
    Looking for user 'samba'...ok.
    directory "/tmp/samba-binaries" created
    nmb daemon binary copied
    smb daemon binary copied
    Starting samba nmbd...failed.
    Starting samba smbd...failed.
    cleaning up directory "/tmp/samba-binaries"
    Die Freigabe habe ich wie folgt konfiguriert: "/tmp/audio audio 0 1 myAudioShare", das Verzeichnis "/tmp/audio" ist vorhanden.
    Hat jemand eine Idee, was zu tun ist?
     
  13. Silent-Tears

    Silent-Tears IPPF-Promi

    Registriert seit:
    3 Aug. 2007
    Beiträge:
    7,456
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    BI
    Ruf das Script nochmal mit "sh -x" voran auf.
     
  14. ChrisP

    ChrisP Neuer User

    Registriert seit:
    21 März 2006
    Beiträge:
    44
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    HL
    Also "sh -x /etc/init.d/rc.samba"? (klappt nicht, gleiche Fehlermeldung)
     
  15. Silent-Tears

    Silent-Tears IPPF-Promi

    Registriert seit:
    3 Aug. 2007
    Beiträge:
    7,456
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    BI
    Und die Ausgabe hätte ich gerne davon.
     
  16. ChrisP

    ChrisP Neuer User

    Registriert seit:
    21 März 2006
    Beiträge:
    44
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    HL
    Tschuldigung.
    Code:
    /var/tmp # sh -x /etc/init.d/rc.samba
    + export PATH=/sbin:/bin:/usr/sbin:/usr/bin:/mod/sbin:/mod/bin:/mod/usr/sbin:/mod/usr/bin
    + export LD_LIBRARY_PATH=/mod/lib:/mod/usr/lib
    + [ ! -r /mod/etc/conf/samba.cfg ]
    + . /mod/etc/conf/samba.cfg
    + export SAMBA_DEFAULT_SHARE=yes
    + export SAMBA_ENABLED=yes
    + export SAMBA_INTERFACES=192.168.178.51/255.255.255.0
    + export SAMBA_MASTER=yes
    + export SAMBA_NETBIOS_NAME=fb2
    + export SAMBA_OS_LEVEL=20
    + export SAMBA_SERVER_STRING=Fritzbox Fon 5010 Samba Server
    + export SAMBA_WORKGROUP=chpohl.home
    + [ -d /tmp/flash/samba ]
    + modreg cgi samba Samba
    + deffile=/mod/etc/default.samba/lmhosts.def
    + [ -r /tmp/flash/samba/lmhosts.def ]
    + modreg file lmhosts Lmhosts 1 /mod/etc/default.samba/lmhosts.def
    + deffile=/mod/etc/default.samba/shares.def
    + [ -r /tmp/flash/samba/shares.def ]
    + modreg file shares Freigaben 1 /mod/etc/default.samba/shares.def
    + [ -x /mod/etc/init.d/rc.nmbd ]
    + [ -x /mod/etc/init.d/rc.smbd ]
    + [ -d /mod/usr/share/samba ]
    + [ yes != yes ]
    + start
    + [ ! -d /var/run/samba ]
    + echo -n Looking for user 'samba'...
    Looking for user 'samba'...+ cat /var/tmp/passwd
    + grep ^samba:
    + echo ok.
    ok.
    + config
    + [ -x /tmp/flash/smb_conf ]
    + /mod/etc/default.samba/smb_conf
    + [ -r /tmp/flash/smb.extra ]
    + [ ! -e /var/tmp/samba ]
    + counter=0
    + [ ! -f /tmp/samba-binaries/nmbd ]
    + [ ! -f /tmp/samba-binaries/smbd ]
    + [ ! -d /tmp/fritzbox/samba -a 0 -lt 60 ]
    + mkdir -p /tmp/samba-binaries
    + echo directory "/tmp/samba-binaries" created
    directory "/tmp/samba-binaries" created
    + [ -f /tmp/fritzbox/samba/nmbd ]
    + cp /tmp/fritzbox/samba/nmbd /tmp/samba-binaries/
    + echo nmb daemon binary copied
    nmb daemon binary copied
    + [ -f /tmp/fritzbox/samba/smbd ]
    + cp /tmp/fritzbox/samba/smbd /tmp/samba-binaries/
    + echo smb daemon binary copied
    smb daemon binary copied
    + [ -f /tmp/samba-binaries/nmbd -a -f /tmp/samba-binaries/smbd ]
    + deldir=true
    + /mod/etc/init.d/rc.nmbd start
    Starting samba nmbd...failed.
    + /mod/etc/init.d/rc.smbd start
    Starting samba smbd...failed.
    + [ true=true ]
    + rm -rf /tmp/samba-binaries
    + echo cleaning up directory "/tmp/samba-binaries"
    cleaning up directory "/tmp/samba-binaries"
    + exit 0
    /var/tmp #
     
  17. ChrisP

    ChrisP Neuer User

    Registriert seit:
    21 März 2006
    Beiträge:
    44
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    HL
    Jetzt frage ich doch noch mal explizit nach:
    Mir bringt die "-x"-Ausgabe keine neuen Erkenntnisse, sieht jemand mehr als ich?
    Könnte es nicht sein, dass die von mir gefundenen Binaries doch nicht kooperieren? (Hat jemand eventuell (schon seit jahren) das samba-Paket auf seiner Fritzbox 5010 laufen und kann mir die beiden Binaries "nmbd" und "smbd" noch mal extra zusenden?)
    Habe ich den Samba-Server korrekt konfiguriert (siehe oben) oder braucht es vielleicht noch weitere Einstellungen?
     
  18. Silent-Tears

    Silent-Tears IPPF-Promi

    Registriert seit:
    3 Aug. 2007
    Beiträge:
    7,456
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    BI
    Es werden 2 weitere Scripte aufgerufen

    /mod/etc/init.d/rc.nmbd start
    /mod/etc/init.d/rc.smbd start

    Was steht darin?
     
  19. ChrisP

    ChrisP Neuer User

    Registriert seit:
    21 März 2006
    Beiträge:
    44
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    HL
    Es sind bis auf einen kleinen Zusatz die Originalskripte aus dem Paket, ich habe jeweils nur die Pfad-Variable um das ":/tmp/samba-binaries" erweitert.
    rc.nmbd:
    Code:
    #!/bin/sh
    
    export PATH=/sbin:/bin:/usr/sbin:/usr/bin:/mod/sbin:/mod/bin:/mod/usr/sbin:/mod/usr/bin:/tmp/samba-binaries
    export LD_LIBRARY_PATH=/mod/lib:/mod/usr/lib
    
    DAEMON=nmbd
    
    start() {
    	touch /tmp/flash/samba/lmhosts
    
    	echo -n 'Starting samba nmbd...'
    	$DAEMON -D -o -H /tmp/flash/samba/lmhosts
    	exitval=$?
    	if [ "$exitval" -eq 0 ]; then
    		echo 'done.'
    	else
    		echo 'failed.'
    		exit $exitval
    	fi
    }
    
    stop () {
    	echo -n 'Stopping samba nmbd...'
    	killall $DAEMON > /dev/null 2>&1
    	exitval=$?
    
    	if [ "$exitval" -eq 0 ]; then
    		echo 'done.'
    	else
    		echo 'failed.'
    		exit $exitval
    	fi
    }
    
    case "$1" in
    	start)
    		start
    		;;
    	stop)
    		stop
    		;;
    	restart)
    		stop
    		sleep 1
    		start
    		;;
    	status)
    		if [ -z "$(pidof "$DAEMON")" ]; then
    			echo 'stopped'
    		else
    			echo 'running'
    		fi
    		;;
    	*)
    		echo "Usage: $0 {start|stop|restart|status}" 1>&2
    		exit 1
    		;;
    esac
    
    exit 0
    rc.smbd:
    Code:
    #!/bin/sh
    
    export PATH=/sbin:/bin:/usr/sbin:/usr/bin:/mod/sbin:/mod/bin:/mod/usr/sbin:/mod/usr/bin:/tmp/samba-binaries
    export LD_LIBRARY_PATH=/mod/lib:/mod/usr/lib
    
    DAEMON=smbd
    
    start() {
    	echo -n 'Starting samba smbd...'
    	$DAEMON -D -o
    	exitval=$?
    	if [ "$exitval" -eq 0 ]; then
    		echo 'done.'
    	else
    		echo 'failed.'
    		exit $exitval
    	fi
    }
    
    stop () {
    	echo -n 'Stopping samba smbd...'
    	killall $DAEMON > /dev/null 2>&1
    	exitval=$?
    
    	if [ "$exitval" -eq 0 ]; then
    		echo 'done.'
    	else
    		echo 'failed.'
    		exit $exitval
    	fi
    }
    
    case "$1" in
    	start)
    		start
    		;;
    	stop)
    		stop
    		;;
    	restart)
    		stop
    		sleep 1
    		start
    		;;
    	status)
    		if [ -z "$(pidof "$DAEMON")" ]; then
    			echo 'stopped'
    		else
    			echo 'running'
    		fi
    		;;
    	*)
    		echo "Usage: $0 {start|stop|restart|status}" 1>&2
    		exit 1
    		;;
    esac
    
    exit 0
    
     
  20. Silent-Tears

    Silent-Tears IPPF-Promi

    Registriert seit:
    3 Aug. 2007
    Beiträge:
    7,456
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    BI
    Kannst du die auch mal einzeln mit "sh -x" aufrufen?