S tar ou Star est un programme de ligne de commande open source qui permet de compresser / archives nombreux fichiers ensemble dans une archive de bande ou sur disque unique. Il est également capable de restaurer des fichiers individuels à partir de l'archive générée.
S tar comprend un FIFO pour la vitesse, le soutien multi-volumes, un adaptateur de modèle, la capacité d'archiver les fichiers fragmentés, la reconnaissance automatique de l'ordre des octets, détection automatique du format de l'archive, compression archivage automatique et la décompression, l'archivage à distance, ainsi que d'autres fonctionnalités qui permettent la application à utiliser pour les sauvegardes complètes du système.
S tar comprend également `RMT», une version vraiment portable du serveur de bande distant qui prend en charge le fonctionnement à distance entre les différents systèmes d'exploitation et architectures machines, ainsi que d'un mt `portable» programme la bande de commande d'entraînement.
S tar est la mise en œuvre la plus rapide connue d'un archiveur de goudron, encore plus vite que ufsdump dans presque tous les cas
Ce qui est nouveau dans cette version:.
< ul>
Ce qui est nouveau dans la version 1.5.2:
- Essayez de faire immunitaire étoiles contre les signaux qui apparaissent tout ouverture d'un fichier à partir d'un système de fichiers réseau.
- Laissez l'étoile FIFO mieux gérer l'opération de changement de support à la fin d'un volume de bande du volume mode multi créer.
- Laissez étoiles à l'auto-détecter la & quot; EOF & quot; condition sur un disque brut lors de l'écriture du volume mode multi créer. ENXIO a été ajouté comme un alias pour EFBIG et ENOSPC.
- La page de manuel star.4 a été renforcée.
- star_sym.c utilise maintenant O_SEARCH pour ouvrir répertoires.
- étoiles / longnames.c ajoute plus de solutions contre le débordement de la mémoire tampon de mal avorte à partir de gcc.
- étoiles / extract.c utilise maintenant accès (nom, F_OK) au lieu d'accès (nom, 0)
- étoiles maintenant que met en place les gestionnaires de signaux pour les signaux existants pour soutenir MSC
- étoiles Correction d'une faute dans dumpdates.c qui a frappé sur WIN-DOS car flock () ne est pas présent
- étoiles vérifie maintenant HAVE_FSYNC pour soutenir MSC
- étoiles :: findinfo.c vérifie maintenant si stat.st_blksize existe
- étoiles / dumpdates.c fonctionne autour d'un problème avec LOCK_EX / LOCK_EX / LOCK_UN défini même si l'appel flock () ne existe plus.
- Nouveau (manquant précédemment) pages de manuel: bsh / pfbsh.1 sh / bosh.1 sh / jsh.1 sh / pfsh.1 étiquette mt / Matthieu 1 scgskeleton / de scgskeleton.1 / label.1 étoiles / Ustar. 1 star_sym / star_sym.1 ved / ved-e.1 ved / ved-w.1
- étoiles prend désormais en charge la reconnaissance automatique des xz (1) des archives compressées et offre une nouvelle option -XZ
- étoiles propose un nouveau comportement:
- Une archive tar créé avec & quot; étoile -c -dump -méta ... & quot; ne comprend pas le contenu des fichiers simples mais seulement les méta-données. Avec & quot; étoiles -c -xmeta & quot; ces fichiers peuvent être extraits comme 0 par les fichiers de taille dans le cas où ce ne serait pas écraser les fichiers existants. Étoile prend désormais en charge & quot; étoile -x -xmeta -fore trous & quot; pour extraire ces fichiers en tant que fichiers de la taille d'origine, mais que les fichiers clairsemés sans données à l'intérieur. Ce est suffisant comme référence pour wget -mirror.
- La page de manuel étoiles / spax.1 fixé une faute de frappe.
- étoiles / header.c utilise maintenant une nouvelle structure & quot; ndbuf & quot; qui définit un NameLength de 101 au lieu de 100 pour être en mesure d'accéder à l'élément 101e dans les tableaux, sans accès à un aray hors limites.
- Correction d'une faute dans Star / buffer.c qui a causé étoile à un core dump sur Linux avec -mulvivol -c raison de la configuration de la mémoire inhabituelle trouvé sur Linux.
- la direction La star de tampon mallocs désormais moins de mémoire. Avant malloc () D la même taille que la taille FIFO, maintenant il ne malloc () s 2 * bufsize
- étoiles -find -c est maintenant être interrompu par ^ C
- étoiles -x -u -k travaille maintenant ainsi que étoiles -x -U -keep âgé
- Correction de quelques fautes dans la page star.4 homme
- Star -sparse -force trous maintenant archives tous les fichiers comme les fichiers fragmentés en cas qu'ils contiennent au moins 512 octets alignés bloc de valeurs NULL. Merci à markk@clara.co.uk
- -find étoiles supprime désormais le premier & quot; ./& quot; dans les noms de star fait dans d'autres cas.
- -r étoiles / -u dépend maintenant correctement sur l'ancienne archive type de format.
- Star ajoute une nouvelle option -lzip et le soutien automatisé à reconnaître lzip archives compressées. Merci à markk@clara.co.uk
- étoiles accepte désormais une commande comme:
- étoiles -c -onull -find. -ls
- car il n'y a pas de sortie de l'archive sur la sortie standard qui pourrait mélanger avec la sortie -ls
- Correction d'un bogue dans libfind / walk.c (appelant strcatl () avec dernier paramètre 0 au lieu de (char *) 0)
- libfind heurté à la version 1.5
- Nouveau libfind de fichier / find_tok.h pour séparer les noms symboliques du reste de l'application.
- Définitions jeton déplacé de find.c à find_tok.h
- Le -perm primaire implémente désormais une nouvelle fonctionnalité:
- -perm + mode de évaluera aussi vrai si l'un des bits mis en mode sont situés dans les bits de permission fro un fichier.
- Un bug avec -exec introduite avec l'aide de vfork () au lieu de fork () a été fixé. Le remplacement de la chaîne & quot; {} & quot; fonctionne désormais correctement à nouveau, même si l'emplacement du chemin d'accès dans la mémoire a été modifiée durant un realloc ().
- Les nouveaux opérateurs primaires: -amin obsolète - seulement pour trouver la compatibilité GNU -cmin obsolète - seulement pour trouver la compatibilité GNU -mmin obsolète - seulement pour trouver la compatibilité GNU -empty TRUE zéro taille simple fichier ou répertoire vide -execdir programme [argument. ..] \; -fls liste des fichiers fichiers similaire à ls -ilds 'en' fichier '(toujours TRUE) les noms de fichiers fichier -fprint d'impression ligne séparés en' file '(toujours vrai) des noms de fichiers d'impression de fichiers -fprint0 NUL séparés en' file '(toujours TRUE) fichiers -fprintnnl noms de fichiers d'impression d'espace séparé en «dossier» (toujours TRUE) glob -ilname TRUE si le nom correspond lien symbolique shell glob -ilpat motif TRUE si le nom correspond au modèle symlink -iname glob TRUE si le composant de chemin correspond shell glob -ipat motif TRUE si le composant de chemin correspond au modèle -ipath glob TRUE si le chemin complet correspond shell glob -ippat motif TRUE si le chemin complet correspond au modèle -okdir programme [arguments ...] \; les noms de fichiers d'impression -print0 NUL séparés sur la sortie standard (toujours TRUE) -executable Vrai si le fichier est exécutable par l'identifiant réel de l'utilisateur du processus -readable Vrai si le fichier est lisible par l'identifiant réel de l'utilisateur du processus -writable Vrai si le fichier est accessible en écriture par l'identifiant réel de l'utilisateur des processus
- libfind ne quitte le processus de treewalk () dans le cas où les chaînes de chemin ne pouvaient pas être attribués.
- libfind :: walkclose () maintenant libre () s les structures de données internes dans le cas d'un utilisateur qui ne appelle pas treewalk () (par exemple, -x étoiles)
- La fonction defltcntl () dans libdeflt travaille maintenant et permet de sélectionner un mode insensible à la casse.
- Nouveau defltsect de fonction () dans libdeflt permet de créer des sous-sections dans les fichiers de configuration. Ces paragraphes doivent être nommé: & quot; [nom-section] & quot; et le '[' doit être au début d'une ligne.
- Soutien à & quot; pcc & quot; sur Solaris x86 a été ajouté en tant que première étape. Le compilateur C & quot; pcc & quot; http://pcc.ludd.ltu.se/ est basé sur le portable C-Comppiler d'AT & T à partir de la fin des années 1970. Ce est sous la BSDL et offre ainsi compilation avec un environnement de compilation vraiment libre.
- Notez qu'en raison d'un bogue pcc, les résultats de autoconf pour Grand support de fichier sont incorrects. Sauf si vous modifiez le incs de fichiers / i386-sunos5-pcc / xconfig.h et de corriger manuellement le fichier pour contenir ceci:
- #define _FILE_OFFSET_BITS 64 / * # de bits dans off_t si définissable * /
- Vous ne serez pas travailler support des grands fichiers avec pcc.
- Prise en charge de plusieurs systèmes d'exploitation suivra après les questions soulevées dans le compilateur ont été résolus.
- conf / mkdep-aix.sh appelle maintenant & quot; cc -M -qsyntaxonly & quot; au lieu de & quot; cc -E -M & quot; comme IBM C-préprocesseur ne aime pas un #pragma faible = b même si le compilateur prend en charge.
- Ajout du support pour DragonFly / x86_64
- Nouveau test de autoconf pour les timbres de temps nanoseconde sur AIX.
- conf / mkdep-aix.sh a été changé pour éviter les avertissements pour #pragma un faible = b comme IBM C-compilateur appelle un non & quot; #pragma faible & quot; cpp lorsqu'elle est appelée avec -E
- include / schily / stat.h prend désormais en charge les horodateurs nonosecond dans struct stat sur AIX.
- include / schily / stat.h prend désormais en charge struct stat.st_atime_n pour AIX soutien de la nanoseconde.
- Essayer d'ajouter le support pour la compilation 32 bits sur une version plus récente de Mac OS X via smake CCOM = CC32 Cela ne fonctionne que si 32 Bit soutien au développement est installé sur Mac OS X.
- Essayer d'ajouter le support pour la compilation 32 bits sur une version plus récente Linux via smake CCOM = CC32 Cela ne fonctionne que si 32 Bit soutien au développement est installé sur Linux.
- Nouveaux test vérifie si fnmatch autoconf () a un travail FNM_IGNORECASE
- De nouveaux tests autoconf pour soutenir locales multibyte stateful mbsinit () mbrtowc () wcrtomb ()
- Nouveaux tests d'autoconf pour wctype_t mbstate_t
- Nouveaux tests d'autoconf pour basename () dirname () strndup () wcsndup ()
- include / schily / wchar.h amélioré pour supporter mbrtowc () et wcrtomb ()
- include / schily / regex.h ajouté
- include / schily / libgen.h ajouté
- Nouveau test de autoconf pour strlcat () wcslcat () strnlen () wcsnlen ()
- Nouveau test de autoconf pour strndup () wcsndup ()
- fnmatch libschily () supporte maintenant FNM_IGNORECASE
- fnmatch libschily () prend désormais en charge les caractères multi-octets
- libschily: nouveaux fichiers strlcat.c wcslcat.c strnlen.c wcsnlen.c strndup.c wcsndup.c basename.c dirname.c
- Un nouvel algorithme dans libschily strncat.c strncmp.c strncpy.c strnlen.c wcsncat.c wcsncmp.c wcsncpy.c wcsnlen.c rend le code plus rapide et plus petit.
- Conf fichiers dans / etc / default sont maintenant installés 0644
- Les pages de manuel sont maintenant installé par défaut dans $ (INS_BASE) / share / man Le répertoire de base & quot; & quot part; peut être modifié par caling
- smake DEFMANBASE = quelque chose
- README.compile mentionne maintenant:
- INS_RBASE = Définir différente & quot; & quot racine; chemin d'installation DEFMANBASE = Définir homme différent répertoire de base STRIPFLAGS = -s bande de tous les binaires avec & quot; make install & quot; RUNPATH = Ecraser ELF RUNPATH DEFUMASK = Définir les permissions par défaut différentes pour créer des répertoires DEFINSUMASK = Définir les permissions par défaut différentes pour créer des répertoires dans le chemin d'installation
- Les pages de manuel sont maintenant installé par défaut dans $ (INS_BASE) / share / man Le répertoire de base & quot; & quot part; peut être modifié par caling
- Tous Makefile.dfl détecter maintenant de savoir si le fichier / etc / default / * existe déjà
- Les macros XARCH_GEN & XARCH_OPT sont maintenant dans les règles / cc-Sunpro * .rul
- Le fichier d'include / schily / ccomdefs.h permet maintenant de désactiver les contrôles printf () de format pour GCC avec -DNO_PRINTFLIKE Ce est nécessaire afin de permettre de compiler étoiles dans le Solaris sur cosolidation que GCC id trop bête pour le printf (extensions).
- libschily /? Eterrno.c ne écrase la définition de _TS_ERRNO afin de passer les constrints de compilation dans le Solaris sur Consoliation.
- Plusieurs nouveaux symboles mondiaux dans le mapfile pour libschily / libschily-mapvers
- libschily / wcsndup.c avait frgotten code et n'a toujours mettre en œuvre en interne strndup ()
- librmt.so inclut désormais libsocked dans la balise ELF NÉCESSAIRE
- Tous les fichiers inclus (même ceux créés par autoconf) sont désormais protégés contre l'inclusion multiple.
- Nouveau test de autoconf pour pathconf () et fpathconf ()
- Les fichiers de liaison de la carte sont maintenant traitées par & quot; cpp & quot; ($ CC ou -E) et dont la sortie est stockée dans $ (ARCHDIR). Ceci permet d'avoir une source de fichier lieur carte unique pour toutes les plateformes.
- Nouveau test de autoconf pour un cpp de travail.
- Nouveau test de autoconf pour / dev / stdin, / dev / stdout, / dev / stderr, / dev / fd / 0, / dev / fd / 1, / dev / fd2
- De nouveaux tests autoconf pour: qecvt () qfcvt () qgcvt () _ldecvt () _ldfcvt () _ldgcvt () _ldecvt_r () _ldfcvt_r () _ldgcvt_r () qeconvert () qfconvert () qgconvert () nécessaire à long double soutien.
- Tous les fichiers linker de carte ont été modifiés pour permettre de dépendant de la plateforme # ifdef
- libschily maintenant par défaut renomme getline (), fgetline () et fexec * () dans js_getline (), js_fgetline () et js_fexec * (). Ce était nécessaire parce que l'COMITÉ standard POSIX POSIX ignoré les règles de base de ne pas définir des fonctions qui sont en conflit avec des fonctions publiées existantes. Les fonctions de linschily ont été dans le public depuis plus de 25 ans et les fonctions définies par POSIX.1-2008 même enfreindre les règles de nommage POSIX. Le POSIX fexec * () fonctions serait par exemple doivent être correctement appelé fdexec * ().
- Les programmes existants peuvent garder les noms getline officielle (), fgetline () et fexec * () comme ils sont par défaut #defined aux nouvelles js _ * (nom). Pour désactiver cette commodité, ajouter:
- #define NO_SCHILY_GETLINE Pour désactiver schily getline (), fgetline () #define NO_SCHILY_FEXEC Pour désactiver schily fexec * () #define NO_SCHILY_FSPAWN Pour désactiver schily fspawn * ()
- Libschily a maintenant nouvelle & quot; long double & quot; fonctions de soutien: qftoes () et qftofs ()
- Libschily prend désormais en charge un point décimal locale de dependend pour l'impression de nombres à virgule flottante.
- Libschily prend désormais en charge d'imprimer des numéros longs doubles en utilisant le format printf () portable () mise en œuvre en fonction. Si cela ne fonctionne pas pour votre plate-forme ou si cela ne fonctionne pas correctement pour votre plate-forme, se il vous plaît signaler. Ce était nécessaire pour sortir nouvelle & quot; od & quot; mise en œuvre.
- L'option analyse getArgs de mise en œuvre () / getfiles () de libschily soutient maintenant de combiner caractère unique drapeaux booléens même dans le cas où la chaîne d'option mentionne pour appeler une fonction de rappel si une option valide n'a été trouvé. Ce était nécessaire pour sortir nouvelle & quot; od & quot; mise en œuvre.
- filereopen () de libschily ne appelle plus open () à l'intérieur tant qu'il ne est pas nécessaire de créer ou de tronquer le fichier.
- include / schily / wchar.h comprend maintenant un workyround pour les plateformes qui ne ont pas wcwidth ().
- la findinpath de libschily () inclut désormais un nouveau paramètre de chemin pour permettre d'utiliser la fonction de BSH.
- fnmatch est maintenant toujours disponible comme js_fnmatch ()
- Nouveau test de autoconf pour _qecvt () _qfcvt () _qgcvt () et _qecvt_r () _qfcvt_r () _qgcvt_r () sur AIX
- libschily / getexecpath.c nouvelle
- include / schily / nlsdefs.h comprend maintenant macros _ (s) et __ (s) pour soutenir gettext () et xgettext (1)
- Désactiver règles de suffixes simples et des règles Sufffix dans smake à speedup construit
- Ajout d'un commentaire dans RÈGLES / rules.rdi que cette règle ne est plus nécessaire. Utiliser des règles / rules.dir dans tous les cas.
- De nouveaux fichiers de configuration dans le makefilesystem Schily pour:
- - * BSD sur amd64
- - MacOS X sur amd64
- - kfreebsd (Debian sur un noyau FreeBSD)
- - Android
- Le Schily makefilesystem prend désormais en charge CC_COM pour toutes les plateformes pour permettre d'écraser la commande de bas niveau pour le compilateur C.
- Le makefilesystem Schily prend désormais en charge CC ++ _ COM pour toutes les plateformes pour permettre d'écraser la commande de bas niveau pour le C ++ -. Compilateur
- Mingw maintenant par des liens par défaut contre -lminwg32 lieu de -lmgw32
- Mac OS X maintenant par des liens par défaut contre -lgcc_s.1 lieu de -lgcc
- accélérer la génération de dépendance pour cl.exe en mettant en commun certaines commandes sed dans un appel unique sed
- Correction d'un bug avec la génération de dépendance pour HP-UX
- Le makefilesystem Schily restructuresd certaines dépendances pour permettre d'exécuter un make parallèle.
- Android ne est pas POSIX (en ne définissant pas comme des fonctions diverses fonctions dans libc comme requis par POSIX), car il tente de définir de nombreuses fonctions qui font partie de la norme comme macros inline dans comprennent uniquement les fichiers. Cela rompt autoconf, donc nous avons besoin de réécrire certains tests (par exemple pour getpagesize, tcgetpgrp, tcsetpgrp)
- Le système de autoconf Schily a été amélioré pour supporter la compilation croisée. Schily autoconf est basé sur GNU autoconf et GNU autoconf ne supporte pas la cross compilation parce qu'il a besoin pour exécuter des scripts sur le système cible pour certains des tests.
- Le & quot; configure & quot; script qui est livré avec le système Schily makefile fonctionne 718 essais et 68 d'entre eux devront être exécuter sur le système cible.
- Le système de autoconf Schily prend désormais en charge une méthode pour exécuter ces 65 essais en natif sur un système cible. Vous devez soit une machine avec des caractéristiques de connexion à distance ou vous avez besoin d'un émulateur avec une méthode pour copier des fichiers dans le système émulé et d'exécuter des binaires sur le système émulé comme par exemple l'émulateur Android.
- Nous livrons actuellement trois scripts pour & quot; à distance & quot; l'exécution des programmes sur le système cible:
- runrmt_ssh exécute les commandes supprimer via ssh runrmt_rsh exécute les commandes supprimer via rsh runrmt_android exécute les commandes supprimer via le pont de débogage
- Si vous avez besoin pour exécuter à distance des programmes sur un système qui ne est pas pris en charge par l'une des trois scripts il, vous devez modifier l'un d'eux en fonction de vos besoins.
- Pour activer Croix Compilation utiliser les variables d'environnement suivantes:
- CONFIG_RMTCALL = Mettre en place pour pointer vers un script qui fait l'exécution à distance, par exemple:
- CONFIG_RMTCALL = `pwd` / conf / runrmt_ssh
- CONFIG_RMTHOST = Mettre en place pour pointer vers votre hôte distant, par exemple:
- CONFIG_RMTHOST = nom d'hôte ou CONFIG_RMTHOST = utilisateur @ nom d'hôte
- utiliser un mannequin si vous voulez utiliser quelque chose comme à l'émulateur Android.
- CONFIG_RMTDEBUG = Régler sur quelque chose de non-nulle afin de laisser l'exécution à distance de script marque comands éloignées. Cela se traduira par des messages configure comme:
- bits de contrôle en nombre mineur de périphérique ... À DISTANCE 8
- Notez que smake inclut des fonctionnalités de automake qui extraient automatiquement les informations d'identification du système. Pour cette raison, vous avez besoin de remplacer les macros liées partir de la ligne de commande si vous voulez faire une compilation croisée.
- macros de maquillage connexes:
- K_ARCH = # (sun4v) Kernel ARCH rempli par uname -m / arch -k M_ARCH = # (sun4) machine rempli à partir arc P_ARCH = # (sparc) CPU ARCH rempli par uname -p / mach OSNAME = # sunos, linux, .... OSREL = # = 5,11 OSVERSION # snv_130 CCOM = # nom du compilateur générique (par exemple & quot; gcc & quot;) CC_COM = # compilateur d'appeler (nom + base args)
- ARCH = écrase M_ARCH et P_ARCH
- Il est généralement suffucient pour régler ARCH et OSNAME.
- Pour utiliser un environnement de compilateur croisé au lieu d'un compilateur natif, réglez le faire macro CC_COM à quelque chose de différent de & quot; cc & quot;.
- Si vous êtes sous Linux et souhaitez compiler pour Android, procédez comme suit:
- 1) mis en place CC acording aux instructions de la chaîne d'outils de compilation croisée
- 2) définir des variables d'environnement CONFIG_RMTCALL / CONFIG_RMTHOST, par exemple: setenv CONFIG_RMTCALL `pwd` / conf / runrmt_android setenv CONFIG_RMTHOST NONE
- 3) appel smake:
- smake ARCH = OSNAME armv5 = linux CCOM = gcc & quot; CC_COM = $ CC & quot;
- Plusieurs programmes aucun test plus pour HAVE_DEV_ * mais pour HAVE__DEV_ * que nous avons fait passer d'épreuves écrites à la main pour / dev / tty, / dev / null et semblable à AC_CHECK_FILES (/ dev / tty / dev / null / dev / zero )
- Soutien à Pyro (un clone de syllabe) a été ajouté. Merci à Flemming H. Sorensen
- Meilleur support pour les sockets Win32 lors de l'utilisation cl.exe
- éviter les problèmes avec les prototypes non-standard pour le lien () unlink () read () et write () de cl.exe
- Ajout du support pour semi-statique (préconfiguré) inclure des fichiers pour Android: include / schily / armv5tejl-linux-gcc / xconfig.h
- Nouveau inclure des fichiers comprennent / schily / tromper _ *. H sont utilisées pour encapsuler #error déclarations du RPC qui, autrement, toujours prévenir compilation avec K & R compilateurs.
- Ajout d'une solution de contournement pour un bogue du compilateur LLVM qui crée code avec boucles infinies dans certains cas.
- Libschily est maintenant lié contre $ (LIB_INTL) lorsqu'un mutualisé libschily est créé.
- Evitez les avertissements de cl.exe pour libschily / gettimeofday.c
- Les fichiers de configuration spécifiques du programme de marque pour le Schily Makefilesystem RÈGLES / mk-.id (pour SunPro marque), RÈGLES / RÈGLES mk-smake.id / mk-gmake.id comprennent maintenant les définitions des macros:
- ESPACE Un espace unique ('') NUMBER_SIGN Le nombre de chanter ASCII ('#')
- Notez que la norme POSIX contraire au programme make être incapable d'avoir le '#' apparaître dans les sections non-commentaire de Makefiles.
- Essayez de travailler autour d'un changement imprudent dans le fichier Windef.h de Cygwin-1.7.17 (Automne 2012) liée à la de type BOOL qui fait windefs.h de la récente Cygwin ne est plus compatible avec le fichier d'origine de Microsoft. La solution est dans include / schily / windows.h
- Merci à Alain Hoang, Thomas Plank et autres pour les rapports et les aider à obtenir un correctif pour le problème susmentionné
- Mieux commentaire dans libschily / comerr.c pour aider à comprendre la sortie () pliage de code à 8 bits et comment elle peut être évitée.
Commentaires non trouvées