[HowTo] User dauerhaft speichern in der passwd bei Freetz-1.x.x

[Edit frank_m24: Mehrere Beiträge zusammengefasst. Man kann seine Beiträge auch editieren.]
Freetz 1.1 und eine 7270 v2 :)

Ich nehm jetzt mal diene alte nochmal ohne zeilenumbruch...
Ralf seine hab ich auch schon ohne zeilenumbruch getestet...

[Beitrag 2:]
Oha.. was kommt da denn raus !

/etc/init.d/rc.S: /tmp/flash/rc.custom: line 1: /var/media/ftp/uStor01/Userconfig/user.sh: not found

wird die Platte zu spät gemountet?...

kann ich es vieleicht irgendwo auf der fritzbox intern abspeicher?.. müsste doch auch gehen...
 
ja klar...

geht aber auch nicht im root verzeichnis der platte.. habs grad getestet...

Ist echt komisch...

line 1: /var/media/ftp/uStor01/user.sh: not found
gibts da nen befehl das der das evtl. erst nach ner halben minute macht ?
 
Zuletzt bearbeitet:
Code:
ls -l /var/media/ftp/uStor01/Userconfig/user.sh
bitte mal ausführen und das Ergebnis posten.
Wenn da kein Ergebnis kommt, dann mal ein:
Code:
find /var/media/ftp/uStor01/ -name "user.sh"|xargs ls -l
ausführen.
rc.custom übrigens wird am Ende des Bootprozesses aufgerufen, da sind die Platten/Sticks und was auch immer normalerweise da.
 
-rwxr-xr-x 1 root root 308 Aug 31 14:44 /var/media/ftp/uStor01/Userconfig/user.sh

Also rechte sind 755

Mal kompletten Log:

rc.mod version freetz-1.1
crond is disabled
Starting telnetd...done.
Starting Freetz webinterface...done.
Looking for user 'ftp' ... created - now saving to data buffer ... done
Starting ftp server...done.
/etc/init.d/rc.S: /tmp/flash/rc.custom: line 1: /var/media/ftp/uStor01/Userconfig/user.sh: not found
swap is disabled

Korrigiert :)
 
Zuletzt bearbeitet:
-rwxr-xr-x 1 root root 308 Aug 31 14:44 /var/media/ftp/uStor01/Userconfig/user.sh

Also rechte sind 755
...

/etc/init.d/rc.S: /tmp/flash/rc.custom: line 1: /var/media/ftp/uStor01/user.sh: not found
swap is disabled

Siehst du den kleinen, aber feinen Unterschied?
 
nein nein.. die ordnerwahl stimmt schon ^^...

hab grad nur was geändert und hab das alte copy paste gemacht :)

---> habs korrigiert.. sry
 
Zuletzt bearbeitet:
Dann solltest du die korrekten Angaben posten.
 
Wenn dein Script somit nicht gefunden wird zur Ausführungszeit, dann musst du eines der bekannten Konstrukte drumherumbauen, die eben auf die Existenz des Gerätes warten und dann die Sachen ausführen.
Alternativ kannst du natürlich auch von den tollen Fähigkeiten der autorun/autoend.sh Gebrauch machen.
 
[Edit frank_m24: Mehrere Beiträge zusammengefasst. Man kann seine Beiträge auch editieren.]
so vieleicht?...

Code:
#########################################################################
## lade Powerinfo-Tabelle (fuer Energiemonitor)
#########################################################################
if [ -f /lib/modules/pm_info.in ]; then
cat /lib/modules/pm_info.in >/dev/avm_power
fi
#########################################################################
## set printk level to KERN_ERR
#########################################################################
echo "4" > /proc/sysrq-trigger
#########################################################################
## idle-depend systemtakt (only slow)
#########################################################################
echo MODE=pd_speed_on >/dev/avm_power
if test -x /usr/bin/ethnator ; then
/usr/bin/ethnator -d /etc/init.d/linkdown.sh -u etc/init.d/linkup.sh
fi
########################################################################
cat > /var/tmp/passwd << 'EOF'
root:x:0:0:root:/mod/root:/bin/sh
Lisa:x:1002:1002:Linux User,,,:/var/media/ftp/uStor01/Lisa:/bin/sh
Mehrdad:x:1003:1003:Linux User,,,:/var/media/ftp/uStor01/Mehrdad:/bin/sh
Ferry:x:1001:1001:Linux User,,,:/var/media/ftp/uStor01/Ferry:/bin/sh 
EOF
chmod 644 /var/tmp/passwd
#########################################################################
## cleanup - if running, stop debug (0 normal, 1 flush buffer)
#########################################################################
if `ps | grep -v grep | grep -q "cat /dev/debug"` ; then
echo Info: have to stop 'cat /dev/debug'.
echo AVMDBG_EOF 1 >/dev/debug
fi;
#########################################################################
## NOTE: "msgsend ctlmgr init-done" ist ein allgemeines (nicht an die Plugins gebundenes) Signal, dass rc.S fertig ist.
#########################################################################
echo "$0[$$]: trigger: msgsend ctlmgr init-done"
## Implizite Bedeutung fuer Plugin: solange Plugin-testsequenz TESTSTARTSEQ, echte Sequenz nicht triggern
msgsend ctlmgr init-done
## fertig, es kann losgehen...
echo "$0[$$]: trigger: msgsend ctlmgr check-plugins"
msgsend ctlmgr check-plugins
#########################################################################
[ "$ds_off" == "y" ] || . /etc/init.d/rc.mod 2>&1 | tee /var/log/mod.log

Aber das ist die orig rc.S

----> jetzt check ich was du meinst ;).. hab wieder mal zu kompliziert gedacht...
ich gebs mal in der rc.custom ein ^^

[Beitrag 2:]
geht auch nicht
 
Code:
cat > /var/tmp/passwd << 'EOF'
root:x:0:0:root:/mod/root:/bin/sh
Lisa:x:1002:1002:Linux User,,,:/var/media/ftp/uStor01/Lisa:/bin/sh
Mehrdad:x:1003:1003:Linux User,,,:/var/media/ftp/uStor01/Mehrdad:/bin/sh
Ferry:x:1001:1001:Linux User,,,:/var/media/ftp/uStor01/Ferry:/bin/sh [B]EOF[/B]
chmod 644 /var/tmp/passwd

Das EOF muß in einer eigenen Zeile stehen.
 
[Edit frank_m24: Mehrere Beiträge zusammengefasst. Man kann seine Beiträge auch editieren.]
Es Geht!!!:groesste::rock::dance::mrgreen:

--> jetzt kann man die Anleitung noch einfacher machen :)

[Beitrag 2:]
Einfach das im rc.custom eintragen:

Code:
cat > /var/tmp/passwd << 'EOF'
root:x:0:0:root:/mod/root:/bin/sh
ftpuser:any:1000:0:ftp user:/var/media/ftp:/bin/sh
ftp:x:1:1:FTP account:/home/ftp:/bin/sh
User1:x:1001:1001:Linux User,,,:/var/media/ftp/uStor01/User1:/bin/sh
User2:x:1002:1002:Linux User,,,:/var/media/ftp/uStor01/User2:/bin/sh
User3:x:1003:1003:Linux User,,,:/var/media/ftp/uStor01/User3:/bin/sh
EOF
chmod 644 /var/tmp/passwd

man kann auch ftp und ftpuser entfernen ( so hab ich das gemacht! )
 
Wie keine User.sh mehr sondern den Text einfach in rc.custom kopieren ?
 
jups, das geht auch.
 
[Edit frank_m24: Mehrere Beiträge zusammengefasst. Man kann seine Beiträge auch editieren.]
Jo..!..
kannst sogar ftpuser und ftp weghauen falls sie nicht mehr brauchst....

[Beitrag 2:]
Ich denke man könnte es wie ich oben geschrieben habe auch in der rc.S ändern..

Habs noch nicht getestet, aber sollte aufs gleiche raus kommen...
 
Genau für solche Sachen ist die rc.custom doch aber da. In der rc.S rumeiern halte ich - vor allem für xbeliebige teils ahnungsfreie User - für mehr als riskant.
 
Könnte mir einer der Fachleute nun sagen was wir von den neuen Erkenntnissen nun ins Wiki schreiben, sonst habe ich wieder so viele Einträge in der Timeline... ?
 
Das kann man ausblenden ;)
Beide Varianten habne ihren Reiz, aber ich denke, die rc.custom ist einfach ein toller Ort, der mehr propagiert werden sollte.
 
Hallo,

ich bin dieses Tutorial durchgegangen. Hat auch alles wunderbar geklappt. Nur wenn ich den Pfad /var/media/ftp/uStor01/user.sh angebe in die rc.custom gibt er mir im logfile jedes mal folgendes aus:
/etc/init.d/rc.S: /tmp/flash/rc.custom: line 2: /var/media/ftp/uStor01/user.sh: not found

diese datei is jedoch vorhanden, siehe :
/var/media/ftp/uStor01 # ls
Alex
Setup.exe
Autorun.inf
System Volume Information
Gast
system
Marcus
user.sh
Seagate
Wenn ich die user.sh manuel starte klappt auch der komplette ftp-zugriff.

meine user.sh sieht folgendermaßen aus:
#cat > /var/tmp/passwd << 'EOF'^M
#root:x:0:0:root:/mod/root:/bin/sh^M
#ftpuser:$1$ubowmuw$A2m1VH4sF8U3O32bp5u5q/:1000:0:ftp user:/var/media/ftp:/bin/s
#ftp:x:1:1:FTP account:/home/ftp:/bin/sh^M
#Alex:x:1002:1002:Linux User,,,:/var/media/ftp/uStor01/Alex:/bin/sh^M
#EOF^M
#chmod 644 /var/tmp/passwd
cp /var/media/ftp/uStor01/system/shadow /var/tmp/shadow
cp /var/media/ftp/uStor01/system/passwd /var/tmp/passwd
chmod 644 /etc/passwd
chmod 640 /etc/shadow

Habt ihr da abhilfe? bzw ne ahnung woran das liegen kann?

Vielen Dank und Grüße
Jannik
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.