dupliquer un dossier via ftp ?

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : dupliquer un dossier via ftp ?

par Hywan » 31 déc. 2008, 00:39

Hey :),

Je me permets une petite intervention. Utiliser directement les commandes systèmes (cp) est incroyablement plus rapide que de passer par l'FTP. On peut aussi tout s'envoyer par fax, l'imprimer, l'envoyer par la poste (et ça c'est long), et enfin le scanner, numériser, reconnaître l'écriture, et tout réécrire dans un fichier … … faut être patient quoi ;-).

Autre remarque, Sékil' parle des guillemets obliques
Par exemple : ’cp -pR truc machin’
mais ce sont les autres (obliques renversés ou inverses — back quotes en anglais —) :
`cp -pR truc machin`
comme en Bash :).

par Sékiltoyai » 29 déc. 2008, 16:38

Je n'ai rien compris :D
Tout ce que je peux te dire, c'est que pour faire ce que tu veux en php, en fait il faut soit une copie préservant les permissions (En l'occurrence le -p du programme cp), soit lancer un script avec les droits de ton utilisateur (Donc avec un sudo). Dans les deux cas, il faut l'exécuter via le shell donc avec shell_exec() ou bien les guillemets obliques.

Par exemple : ’cp -pR truc machin’
Ou pour la deuxième option, euh c'est, disons, …, plus compliqué :D

j'avais pa vu...

par laetitia » 29 déc. 2008, 15:58

En FTP on peut télécharger et envoyer, donc on peut copier d'une manire détournée :)
Effectivement, cela peut le faire mais si plusieurs postes sont amenés à utiliser le back office cela peut poser des problèmes, il faut s'assurer qu'ils aient tous la même arborescence pour télécharger le dossier et le renvoyer.

par Invité » 29 déc. 2008, 15:52

Mais dans la méthode ftp tu bloques ou?
la méthode ftp ne me permet pas de dupliquer un dossier complet
- Est ce que tu veux le faire dans un script PHP ou bien manuellement ?
Je dois pouvoir utiliser mon back office en php mais je pense avoir grâce à vous une réponse.

En utilisant le shell_exec je copie mon dosssier modele sans problème mais avec les droits Apache càd user = www.data donc je dois supprimer tout mes scripts php de copie ou d'écriture de fichier utilsant les fonctions ftp (user = reseau) et les remplacer par de simple scripts dans ce cas je peux accéder à mon dossier puisque je suis de nouveau considéré comme user Apache.

Je suis pas sûr de maîtriser la chose mais ça marche comme ça

Si vous avez d'autres commentaires, je suis preneuse et vous remercie de votre aide.

par fab » 29 déc. 2008, 15:20

En FTP on peut télécharger et envoyer, donc on peut copier d'une manire détournée :)

par Sékiltoyai » 29 déc. 2008, 15:08

En php tu peux changer le propriétaire d'un fichier // dossier directement grâce à http://fr.php.net/chown
cependant il y a derriere cette utilisation un problème de hierarchie des utilisateurs.
Bah en effet, il y a un petit problème de hiérarchie, il faudrait lancer apache ou php en tant que root…
Mais dans la méthode ftp tu bloques ou?
Euh, je ne crois pas que par ftp ce soit possible…

Re: suite...

par Sékiltoyai » 29 déc. 2008, 15:05

Comment utiliser les commandes shell sans passer par php ? Aurais je le même problème ?
Euh, par contre là il faut que tu précises ton problème :
- Est ce que tu veux le faire dans un script PHP ou bien manuellement ?
- Es-tu administratrice du serveur dédié (en l'occurrence as-tu accès au compte root…) ?
- Question un peu liée à la précédente, as-tu un accès ssh (et auquel cas sais-tu t'en servir…) ?

par fab » 29 déc. 2008, 15:01

Donc en fait tu as un problèmes de propriétaires sur les fichiers // dossiers dupliqués et tu voudrais utiliser les fonctions ftp de php pour dupliquer tes fichiers // dossiers avec le bon utilisateur?
En php tu peux changer le propriétaire d'un fichier // dossier directement grâce à http://fr.php.net/chown
cependant il y a derriere cette utilisation un problème de hierarchie des utilisateurs.


Mais dans la méthode ftp tu bloques ou?

suite...

par laetitia » 29 déc. 2008, 14:13

Je précise que je suis sur un serveur dédié, j'ai pu copier le dossier complet mais comme je passe par php il me met toujours l'user en www.data et c'est ce que je voulais éviter.

Comment utiliser les commandes shell sans passer par php ? Aurais je le même problème ?

Merci

merci mais toujours un problème d'user

par laetitia » 29 déc. 2008, 14:06

J'ai l'impression que tu confonds le fonctionnement ftp et local. C'est à dire qu'une fois les fichiers sur le serveur, tu n'utilises pas les fonctions ftp, tu utilises directement les fonctions de système de fichier.
Après, ce que tu demandes est possible, mais à priori pas en php. Il faut que tu copies par une commande shell. Utilise cp -pR pour copier tes fichiers. Pour plus d'informations, lis le man cp.

par Sékiltoyai » 29 déc. 2008, 10:49

J'ai l'impression que tu confonds le fonctionnement ftp et local. C'est à dire qu'une fois les fichiers sur le serveur, tu n'utilises pas les fonctions ftp, tu utilises directement les fonctions de système de fichier.
Après, ce que tu demandes est possible, mais à priori pas en php. Il faut que tu copies par une commande shell. Utilise cp -pR pour copier tes fichiers. Pour plus d'informations, lis le man cp.

dupliquer un dossier via ftp ?

par laetitia » 29 déc. 2008, 08:52

Bonjour,

Je voudrais pouvoir dupliquer en php un dossier déjà sur le serveur dedié qui concerverait l'user afin de pouvoir ensuite modifier ou ajouter des fichiers et dossier dans celui ci.
Je sais qu'en utilisant le ftp tout est ok mais uniquement dans la relation local --> serveur, je peut donc copier des fichiers en concervant le bon user mais dès qu'il s'agit de dupliquer un dossier serveur --> serveur je ne trouve pas de fonction ftp_ qui le permette et quand j'utilise les fonctions php les droits sont affectés à l'user www.data.(Apache)

Pourriez vous m'aider s'il vous plait.
Merci.
Laetitia