Bekijk de volledige versie : Stupid-Ftpd will nicht / kann nicht ??
The Joker
03-11-2006, 20:37
Hallo,
ich habe einen USB-Stick an den Premium angeschlossen und zwei Partitionen erstellt. (Eine ext2fs und eine Swap Partition.) Jetzt startet der stupid-ftpd demon nicht mehr automatisch. Wenn ich stupid-tftp selber eingebe bekomme ich folgende Meldung :
Cannot find /tmp/stupid-ftpd.conf.
Make sure it's available.
Warum erstellt er denn jetzt diese conf nicht mehr automatisch? Liegts am ext2fs Format? Ich will jetzt nicht umbedingt einen anderen demon installieren, aber wenn es sein muss, kann ich dann noch per webif den ftp konfigurieren oder müsste ich dann am webif auch noch änderungen vornehmen... wobei ich nicht glaube das ich das hinbekommen würde.
Gruß Joker
Hi,
das Verhalten ist mir auch schon aufgefallen. Nach einem Reboot geht es meistens wieder. Irgendwie scheint das Init-Script nicht ganz ok zu sein in dem die Dienste gestartet werden. Das sieht da auch gar nicht schön aus. Es wird mit festen Delays gearbeitet, um nacheinander Dienste zu starten. Das macht man eigentlich anders. Man überwacht den korrekten Start eines Dienstes und startet dann den nächsten. Dummerweise scheinen einige Dienste auch im Betrieb unkontrolliert abzustürzen. Deshalb gibt es auch den Watchdog, der die abgestürzten Dienste wieder starten soll. Beim stupit-ftpd wurde leider nicht das config-File angelegt. Daher lässt sich auch der ftp-Server nicht von Hand starten, da er nicht weiss in welcher Weise er starten soll.
Eine vernünftige Lösung wäre es, wenn man das Init-Script neu schreiben würde ohne feste Delays zu verwenden.
Norbert
The Joker
04-11-2006, 12:31
Hi,
leider will er auch nach einem (mehrere) Reboots nicht die conf Datei anlegen. Wo liegt denn eigenlich dieses Init-Script und könnte ich einfach die Delays ein bisschen erhöhen, damit es läuft? Samba läuft bei mir auch nicht :( hier ist mal ein printout vom ps befehl, vielleicht hilft das ja :
PID Uid VmSize Stat Command
1 admin 660 S /sbin/init
2 admin SW [keventd]
3 admin RWN [ksoftirqd_CPU0]
4 admin SW [kswapd]
5 admin SW [bdflush]
6 admin SW [kupdated]
7 admin SW [mtdblockd]
59 admin 344 S httpd vlan1
64 admin 324 S klogd
65 admin 352 S syslogd -m 0 -O /tmp/syslog.log -S -l 7
68 admin 520 S nas /tmp/nas.lan.conf /tmp/nas.lan.pid lan
70 nobody 456 S dnsmasq
72 admin SW [khubd]
81 admin 244 S lpd
83 admin 216 S p9100d -f /dev/usb/lp0 0
86 admin 284 S waveservermain
88 admin 288 S rcamdmain
92 admin SW [usb-storage-0]
93 admin SW [scsi_eh_0]
101 admin 612 S pppd file /tmp/ppp/options.wan0
103 admin 300 S infosvr br0
104 admin 444 S watchdog
106 admin 304 S ntp
115 admin 392 S dropbear
116 admin SW [kjournald]
143 admin 448 S upnp -D -L br0 -W ppp0
145 admin 728 R dropbear
146 admin 568 S -sh
173 admin 408 R ps
Gruß Joker
The Joker
04-11-2006, 13:08
Und ich bins noch mal. Also ich habe das Problem jetzt total unprofessionell gelöst indem ich die post-boot in die post-mount umbenannt habe, damit zuerst der stupid-ftpd machen kann was er will... und ich dann am ende die swap, ssh etc. konfiguriere. Ich habe auch die umbenannte Datei kein bisschen mehr editiert...
Naja, besser als nichts. Falls jemanden was besseres einfällt, dann bitte bitte posten.
Gruß Joker
Hi,
Linux wird mit /sbin/init gestartet und läd das Betriebssystem. Dabei werden verschiedenen Konfigurationsdateien in folgender Reihenfolge ausgewertet:
/linuxrc
/tmp/local/sbin/post-xxxxx
post-xxxxx können mehrere Boot-Scripte sein, die ausgeführt werden. init sucht dazu im entsprechenden Verzeichnis nach Dateien die mit post beginnen und führt sie aus.
In /linuxrc werden zuerst verschiedene Module geladen. So auch für den USB-Treiber, um Festplatten anzubinden. Je nach Anzahl der USB-Geräte und Festplattengröße kann der Vorgang untreschiedlich lange dauern. Der sleep-Befehl von 2s ist dann u.U. zu kurz und verhindert das korrekte Starten weiterer Dienste.
Der Watchdog ist dann nur eine Krücke, um die nicht beseitigten Fehler zu bereinigen.
Daher treten die Probleme meistens auf, wenn man sehr viele Ergänzungen und Änderungen am System gemacht hat. Die Ladezeiten beim Booten können sich dann nämlich startk verändern, so das die sleep-Zeit nicht ausreicht.
Ändern kann man das nur, wenn man ein neues Image erstellt, da diese Dateien im Flash liegen.
Norbert