web-dev-qa-db-fra.com

Ubuntu 14.04: Comment compresser un répertoire contenant des liens symboliques?

J'ai un projet php de taille 3.5GB dans lequel il y a des liens symboliques de plusieurs fichiers. Je veux le compresser et faire une sauvegarde sur Windows 10 PC à partir de mon ordinateur portable Ubuntu 14.04. Chaque fois que j'en crée un fichier Zip et que je copie le fichier Zip de sauvegarde de mon projet depuis Windows PC vers un ordinateur portable et que je le décompresse, les liens symboliques n'existent pas. Les liens symboliques s'affichent sous forme de fichiers php normaux. Image with symlinks

Image without symlinks

la première image est avec des liens symboliques et secondes est sans liens symboliques. Quelle est la bonne façon de compresser un grand dossier afin de ne perdre aucun lien symbolique?

1
Haroon

En fait, une simple recherche révèle une réponse. L'utilitaire Zip standard fourni avec Ubuntu (Info-Zip) est fourni avec une option permettant de stocker des liens symboliques sous forme de liens symboliques. Par défaut, les liens symboliques sont déréférencés, c'est-à-dire que le fichier réellement lié est inclus dans le fichier Zip, comme vous l'avez expérimenté. La commande peut ressembler à: Zip --symlinks -r foo.Zip foo/ (le crédit va au site Server Fault )

Vous pouvez envisager d'utiliser des formats d'archive tar compressés à la place pour cette tâche. Le format d'archive tar, de par sa conception, prend en charge les fonctionnalités du système de fichiers Linux, notamment les liens symboliques et les droits d'accès aux fichiers, alors que Zip a ses origines dans l'environnement MS Windows.

2
vanadium