pb avec un "cp" sous cygwin/winxp

pb avec un "cp" sous cygwin/winxp - Shell/Batch - Programmation

Marsh Posté le 03-07-2005 à 20:20:58    

Salut j'ai un soucis bien particulier. Un peu long à amener mais simple en fait. :D  
Je résume et j'explique:
 

  • Je viens de faire un site : mettre à dispo de nombreux fichiers via une interface web php+mysql pour filtrer.
  • Pour mettre à jour ma bdd avec de nouvelles entrees (donc de nv fichiers) j'ai un shell-script qui :  


1-lance firefox histoire de renommer des nv fichiers ds un répertoire temporaire via php et des paramètres fournis par formulaire
2-sort de firefox et met à jour ma bdd en ajoutant les nouveaux fichiers renommés à l'étape 1
3-copie ces fichiers dans le répertoire ou il y a déjà tous les autres fichiers déjà présents ds la bdd (avec la commande cp)
 

  • Donc la mon site a été mis à jour, les nv fichiers sont bien copiés et accessibles ds le répertoire principal.  


 
Le pb c'est que qd je relance mon site pour constater l'ajout des nv fichiers, ils sont bien là mais j'ai un forbidden sur les liens.
Mais si je fais le copier à la main avec la souris au lieu de passer par le shell script les liens marchent.
Si qqun a une idee... :??:  
Merci

Reply

Marsh Posté le 03-07-2005 à 20:20:58   

Reply

Marsh Posté le 03-07-2005 à 20:30:47    

Je ne connais pas cygwin, mais à priori il faut appliquer les droits en lecture à tout le monde, et ça se fait avec chmod.
 
S'il y a chmod dans cygwin, et si celui-ci fonctionne comme tous les autres chmod du monde, alors ceci devrait fonctionner :
 

chmod 644 tes_fichiers


 
(644 c'est de l'octal, pour plus de précision, "man chmod" ;) )

Reply

Marsh Posté le 03-07-2005 à 20:32:07    

je l'ai fait. J'ai même poussé au 777 mais rien de mieux....  
C'est pour ça que c'est vraiment louche cette histoire.

Reply

Marsh Posté le 03-07-2005 à 20:33:55    

Et le droit du répertoire, c'est quoi ?

Reply

Marsh Posté le 03-07-2005 à 20:38:40    

ls -l pour savoir les droits sur le dossier
 


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 03-07-2005 à 20:43:38    

Merci pour votre réactivité !
644 pour le repertoire.
Mais le truc bizarre c'est que la plupart des fichiers sont accessibles tranquille.
ya que ceux ajoutés par mon script qui marchent pas.
Ils sont bien là physiquement, je peux les ouvrir tout ce qu'on veut mais le lien marche pas. Et si copie à la main par win alors là le lien marche. ce qui indiquerait qu'il y une émulation de la copie de cygwin qui tourne pas clair. J'ai ptèt trouvé un bug à cygwin :D !

Reply

Marsh Posté le 03-07-2005 à 20:46:45    

C'est surment une question de propiétaire des fichiers ...
Dit nous qui est le proprietaire et le groupe a qui appartient le dossier et les fichiers ... Parceque les fichiers créés par apache ont comme owner/group httpd si je me trompe pas


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 03-07-2005 à 21:22:46    

Alors j'ai tout bien vérifié:
Les droits du fichier créé par php avant copie par script shell : -rwx------+
après copie par mon script shell: -rwx------ (pas de + c koi le +?)
les droits du fichier qui marche qd je le copie à la main : -rwx------+ (ya bien le +).
dans tous les cas je suis bien le propriétaire du fichier du début à la fin.
Oui ben je viens de chercher pour ce "+" sur le net et partout je trouve des explications les chmod xyz mais aucune signification d'un résultat ls -l qui donne une suite -rwx------+. Si j'ai bien capté le 1er c'est pour dire si c'est un répertoire, ensuite 3 successions de rwx qui correspondent aus droits u/g/o mais le dernier caractère ??  :??:  
Merci.


Message édité par damcmoi le 03-07-2005 à 21:33:45
Reply

Marsh Posté le 03-07-2005 à 21:33:19    

hum...
Tu me balance l'exact output ?
Le resultats du ls -la


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 03-07-2005 à 21:37:45    

Code :
  1. -rwx------  1 Dam Aucun 7325842 Jul  3 21:15 videos/vid33.wmv*


Donc je me répète mais ya pas le plus à la fin alors que pour celui ci il y est :

Code :
  1. -rwx------+ 1 Dam Aucun 2568100 Dec 25  2004 videos/vid32.wmv*


Merci  :)

Reply

Marsh Posté le 03-07-2005 à 21:37:45   

Reply

Marsh Posté le 03-07-2005 à 21:46:26    

J'me demande si c'est pas un truc zarb de cygwin .. Parceque sous linux j'ai jamais vu ca ... Regarde un peu sur google si tu trouve ce que ce + signifie ..


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 03-07-2005 à 21:47:03    

Ben j'épluche tout mais je trouve pas ....
Mouais, j'ai reboot sous linux et j'ai pas ce "+" avec un ll sous bash...
Comme quoi yaurait ptèt un copyright cygwin lol.
Qu'est ce que je fais  :pt1cable: ? Je post un nv sujet avec un intitulé "Que veut dire le "+" dans -rwx------+ obtenu par ls -l sous cygwin"?
Je cherche tjs j'vais aller sur les sites anglophones j'ai pas le choix  :(.
Je tiens au courant si je trouve. Si jamais quelqu'un sait ce que veut dire ce "+" pitié informez moi.
Merci bcp esox_ch.


Message édité par damcmoi le 03-07-2005 à 22:06:56
Reply

Marsh Posté le 03-07-2005 à 23:02:35    

damcmoi a écrit :

Merci pour votre réactivité !
644 pour le repertoire.


 
Encore une fois je ne sais pas comment ça se passe avec cygwin, mais sous Unix, un répertoire doit avoir les droits d'exécution pour qu'on puisse entrer dedans.
Avec les droits de lecture, on ne peut que lister le contenu du répertoire.
Idéalement, le répertoire devrait être en 755.

Reply

Marsh Posté le 04-07-2005 à 08:24:22    

J'ai essayé les droits en 755 ça ne marche pas mieux.
Petite info : j'ai cherché partout et des "+" (en fin de droits avec ls -l) j'en ai uniquement sur un disque en ntfs. Ya ptèt un rapport?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed