FTP und CHMOD

07/12/2007 - 12:46 von Juergen Thuemmler | Report spam
Hi *.*,

ich möchte/soll beim Upload einer Datei zum FTP-Server anschließend die
Rechte pràzisieren. Der das braucht, macht es bisher hàndisch in einem
FTP-Programm mit "chmod...". Geht das mit FTPCommand() bzw. was schreibe ich
als VB-Code, damit das funktionert (Verbindung ist hergestellt)? Beim
Googlen findet man jede Menge zu "chmod", aber nichts konkretes, was ich in
VB nutzen könnte...

Danke!
Jürgen.
 

Lesen sie die antworten

#1 Andreas Born
07/12/2007 - 14:11 | Warnen spam
Hallo Jürgen,

Juergen Thuemmler wrote:
ich möchte/soll beim Upload einer Datei zum FTP-Server anschließend
die Rechte pràzisieren. Der das braucht, macht es bisher hàndisch in
einem FTP-Programm mit "chmod...". Geht das mit FTPCommand() bzw. was
schreibe ich als VB-Code, damit das funktionert (Verbindung ist
hergestellt)? Beim Googlen findet man jede Menge zu "chmod", aber
nichts konkretes, was ich in VB nutzen könnte...



FTP selbst unterstützt das Ändern von Dateirechten nicht nativ, d.h. das
ist durch das ftp-protokoll nicht vorgesehen. Mit welchen Dateirechten
hochgeladene Dateien versehen werden hàngt erstmal von der Konfiguration
des FTP-Servers ab. Viele FTP-Server unterstützen jedoch den
"SITE"-Befehl, wodurch zusàtzliche Kommandos, die nicht Bestandteil von
ftp sind, eingebunden werden können. Hàufig eben auch chmod zum àndern
der Zugriffsrechte und umask zum Festlegen von Standardzugriffsrechten
für darauffolgende uploads.

Du schreibst die Verbindung sei bereits hergestellt, womit?
Socket-Control, Inet-Control, API?
Im Grunde muß nur ein String über die Verbindung an den Server gesendet
werden, beispielsweise:

SITE chmod 644 /path/filename.ext

644 sind dabei die gewünschten Dateirechte, und filename.ext eben der
Dateiname, der auch Leerzeichen enthalten darf. Je nachdem womit Du den
Befehl übermittelst muß die zeile ggf. mit einem vbCRLF abgeschlossen
werden.

Der Server antwortet dann mit einem Statuscode. (relevant ist nur der
Zahlencode).

200 SITE CHMOD command ok.

Die meisten Server unterstützen absolute Pfadangaben, sodaß ein Wechsel
in das Zielverzeichnis nicht unbedingt erforderlich ist.

Mittels "HELP" und "SITE HELP" lassen sich die unterstützten Befehle und
site-Kommandos vorab ermitteln, sollte das gewünscht sein. Mittels "CWD
/path" wird in das gewünschte Verzeichnis gewechselt.


Viele Grüße,
Andreas

Ähnliche fragen