J'ai décompressé un fichier sur mon serveur en utilisant:
unzip filename
Cependant, cela semble avoir causé tous les fichiers ayant des autorisations de propriétaire / groupe de 0 0
.
Les fichiers que j'ai téléchargés étaient un PHP
script logiciel, donc je me demande comment définir correctement les autorisations lors de la décompression des fichiers et à quoi ils doivent être définis?
linux
permissions
zip
Brett
la source
la source
umask
afin qu'il crée le zip avec ces autorisations; mais je ne pense pas que je puisse faire ça sur Windows?En fait, certaines réponses ici ne sont pas correctes. Les fichiers ZIP peuvent également avoir des autorisations de fichier. (*) Vous pouvez lister les permissions des fichiers dans votre fichier ZIP avec:
Peut-être que l'outil que vous avez utilisé pour créer le fichier ZIP n'a pas stocké les autorisations ou ne les a pas stockées correctement.
Donc, si vous avez créé le fichier ZIP vous - même , vérifiez l'outil avec lequel vous avez créé le fichier ZIP. Il existe peut-être un moyen de définir des autorisations avant de zipper (comme avec maven), ou il conserve les autorisations d'origine (mais cela ne fonctionnerait que sur un système qui prend en charge les autorisations - c'est-à-dire pas sur Windows).
Si vous n'avez pas créé le fichier ZIP vous - même , votre seule chance est de définir les autorisations correctes après la décompression, par exemple avec
(*) Nous utilisons cette fonctionnalité en combinaison avec le plugin d'assemblage maven, où vous pouvez spécifier le FileMode pour les fichiers qui vont dans le fichier ZIP.
la source
UnZip 6.00 of 20 April 2009, by Info-ZIP. Maintained by C. Spieler.
sous Windows / mingw. Je n'ai actuellement pas accès à ma box Linux, mais là -Z fonctionne aussi. Quoi qu'il en soit, merci pour l'astuce!--no-same-permissions
) qui ne préserve pas les autorisations et respecte umask lors de l' extraction.zipinfo
/unzip -Z
ne peut que deviner. Pour voir si les autorisations sont là, utilisezzipinfo -v
/unzip -Zv
et recherchez «attributs de fichiers externes non MSDOS»; les deux octets les plus significatifs sont les permissions UNIX (en hexadécimal, pas octal!) à condition que le «système de fichiers ou système d'exploitation d'origine» soit UNIX.