Question J'ai désinstallé mon installation Perl sur Mac OS X 10.6


J'ai foiré mon installation Perl sur Mac OS X 10.6. Je vais expliquer comment:
Je voulais ajouter un paquet cpan pour Bundle :: DBD :: mysql, cpan m'a dit de mettre à jour Bundle :: CPAN en premier. Je ne pouvais pas à cause des autorisations. Donc je sudoed perl -MCPAN -e shell et mis à jour cpan, puis j'ai eu le bundle mysql, mais il a échoué à certains tests, que j'ai ensuite forcé à installer (ça marche btw). Puis, pour une raison quelconque, j'ai décidé de reconstruire le bundle mysql. Cela a pris beaucoup de temps. Finalement, j'ai réalisé qu'il avait beaucoup reconstruit, comme perldoc.

Maintenant, chaque fois que j'essaye de lancer perldoc, je n'ai pas la permission de le faire, mais quand je me permets de me dire que je ne le trouve pas.

dlamblins-macbook:~ dlamblin$ perldoc
-bash: /usr/bin/perldoc: Permission denied
dlamblins-macbook:~ dlamblin$ sudo perldoc
Password:
sudo: perldoc: command not found
dlamblins-macbook:~ dlamblin$ sudo /usr/bin/perldoc
Password:
sudo: /usr/bin/perldoc: command not found

Je voudrais réinstaller perl pour de vrai comme Apple l'a installé quand j'ai mis à jour à Snow Leopard (bien que garder DBD :: mysql serait bien), et je ne sais pas par où commencer. Je ne veux pas aller avec un paquet fink ou un système de type ports. Obtenir le dernier perl 5.10 serait un plus.


4
2017-11-28 07:29


origine




Réponses:


Cela peut sembler être un Mac Newb total (bien que j'aie utilisé un Mac depuis la LC) mais depuis que l'installation de la mise à jour combinée pour 10.6.2 n'a pas résolu ce problème même si les fichiers ont été écrasés, j'ai réalisé tardivement que Le bouton "Réparer les autorisations" de l'Utilitaire de disque résout le problème. Et ça l'a fait.

La chose étrange est le binaire réel /usr/bin/perldoc n'a pas été touché. Cela a probablement quelque chose à voir avec un de ces paquets dans la sortie.

Voici ce que ça produit comme ça corrige des choses (notez que la dernière ligne est un? Pour moi)

Repairing permissions for “Macintosh HD”
Permissions differ on "private/etc/postfix/main.cf.default", should be -rw-r--r-- , they are -r--r--r-- .
Repaired "private/etc/postfix/main.cf.default".
Permissions differ on "usr/bin/c2ph", should be -rwxr-xr-x , they are -rw-rw-rw- .
Repaired "usr/bin/c2ph".
Permissions differ on "usr/bin/config_data", should be -rwxr-xr-x , they are -r-xr-xr-x .
Repaired "usr/bin/config_data".
Permissions differ on "usr/bin/cpan", should be -rwxr-xr-x , they are -r-xr-xr-x .
Repaired "usr/bin/cpan".
Permissions differ on "usr/bin/enc2xs", should be -rwxr-xr-x , they are -r-xr-xr-x .
Repaired "usr/bin/enc2xs".
Permissions differ on "usr/bin/instmodsh", should be -rwxr-xr-x , they are -r-xr-xr-x .
Repaired "usr/bin/instmodsh".
Permissions differ on "usr/bin/piconv", should be -rwxr-xr-x , they are -r-xr-xr-x .
Repaired "usr/bin/piconv".
Permissions differ on "usr/bin/prove", should be -rwxr-xr-x , they are -r-xr-xr-x .
Repaired "usr/bin/prove".
Permissions differ on "usr/bin/shasum", should be -rwxr-xr-x , they are -r-xr-xr-x .
Repaired "usr/bin/shasum".
Permissions differ on "usr/share/derby", should be drwxr-xr-x , they are lrwxr-xr-x .
Repaired "usr/share/derby".
Permissions differ on "Library/Perl/5.10.0/darwin-thread-multi-2level/NetSNMP/default_store.pm", should be -rw-rw-r-- , they are -r--r--r-- .
Repaired "Library/Perl/5.10.0/darwin-thread-multi-2level/NetSNMP/default_store.pm".
Permissions differ on "Library/Perl/5.10.0/darwin-thread-multi-2level/auto/NetSNMP/default_store/autosplit.ix", should be -rw-rw-r-- , they are -r--r--r-- .
Repaired "Library/Perl/5.10.0/darwin-thread-multi-2level/auto/NetSNMP/default_store/autosplit.ix".
Permissions differ on "Library/Perl/5.10.0/darwin-thread-multi-2level/auto/NetSNMP/default_store/default_store.bundle", should be -rwxrwxr-x , they are -r-xr-xr-x .
Repaired "Library/Perl/5.10.0/darwin-thread-multi-2level/auto/NetSNMP/default_store/default_store.bundle".
Warning: SUID file "System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/MacOS/ARDAgent" has been modified and will not be repaired.

Permissions repair complete

4
2017-12-15 01:21





Essayez d'utiliser Pacifiste pour exécuter le package d'installation approprié à partir de votre disque 10.6. Je ne suis pas sûr de quel paquet il s'agit, mais Pacifist vous permet de parcourir et de rechercher les paquets sur le disque. Je ne crois pas que cela va supprimer les nouveaux fichiers, mais il restaurera votre installation Perl à la valeur par défaut. Vous pouvez également extraire sélectivement des fichiers et des dossiers.

Using Pacifist to search for "Perl" on the Mac OS X 10.6 disc.

Je l’ai utilisé il ya quelques années pour contrôler les dégâts (avec un certain succès, je l’ajoute) à la suite d’un incident plutôt embarrassant impliquant sudo rm -fr /bin. Ne demande pas


3
2017-11-29 22:07





Ouais ... Utilitaires de disque "Autorisations de réparation" a également fonctionné pour moi. Le même problème ... a installé le module DBD :: mysql et il a installé les permissions.


2
2018-01-22 18:41





Vous pouvez toujours télécharger la dernière perl de http://www.cpan.org/src/5.0/latest.tar.bz2.

Vous devez désarchiver et exécuter Configure.

Personnellement, je préfère généralement avoir ma propre installation de perl, même lorsque le système d'exploitation de base incluait une version. Cela signifie que mes scripts peuvent être mis à niveau vers des versions ultérieures sur mon planning, pas sur les responsables.


1
2017-11-28 17:23



Ce n'est pas une bonne idée d'écraser l'installation par défaut de Perl avec une installation personnalisée, car les mises à jour logicielles et autres peuvent faire des suppositions concernant le système par défaut Perl. Si vous voulez lancer votre propre Perl, il est préférable de l'installer dans / usr / local ou dans un autre emplacement hors du commun. En tout cas, il devra toujours réparer son système Perl. - Lawrence Velázquez
Je ne voudrais pas écraser l'installation par défaut, je voulais dire installer une nouvelle installation dans un répertoire séparé. - gorilla
Gotcha, mais cela ne résout toujours pas son défaut par défaut Perl. - Lawrence Velázquez
En ce qui concerne le remplacement du perl par défaut, voir stackoverflow.com/questions/1992720/... - Ether


peut-être cela aide-t-il d'installer la dernière mise à jour sous http://support.apple.com/kb/DL959. J'ai eu des problèmes massifs après une restauration complète du système avec Time Machine. il semble que cela corrompt beaucoup de choses et je ne pouvais plus utiliser quicklook à part d'autres choses. après la réinstallation de cette mise à jour, toutes les fonctions sont normales. avec un peu de chance, perl est dans cette mise à jour.


1
2017-11-30 01:20



J'ai essayé ceci et ça n'a pas fonctionné. Il a cependant corrigé le mystérieux plug-in Flash accrocheur qui était le fléau de YouTube (et des autres vidéos flash) depuis la mise à jour de la stabilité améliorée du plug-in safari. La réinstallation a résolu ce problème, mais pas mon problème d'autorisation perldoc. - dlamblin
En fait, cette prise flash en matière de stabilité va et vient; ça va avec un redémarrage et je ne sais pas encore ce qui le cause. - dlamblin
Pour les intéressés: la stabilité du flash a à voir avec l'audio dans la vidéo flash et une incompatibilité dans Audio Hijack Pro. Voir: superuser.com/questions/83315 - dlamblin


CPAN frais installé sur Lion.

Avant les "autorisations de réparation" de l'utilitaire de disque:

$ perldoc
-bash: /usr/bin/perldoc: Permission denied

Fonctionne à nouveau après:

$ perldoc
Usage: perldoc5.12 [-h] [-V] [-r] [-i] [-D] [-t] [-u] [-m] [-n nroffer_program] [-l] [-T] [-d output_filename] [-o output_format] [-M FormatterModuleNameToUse] [-w formatter_option:option_value] [-L translation_code] [-F] [-X] PageName|ModuleName|ProgramName
       perldoc5.12 -f PerlFunc
       perldoc5.12 -q FAQKeywords
       perldoc5.12 -v PerlVar

The -h option prints more help.  Also try "perldoc perldoc" to get
acquainted with the system.                        [Perldoc v3.15_02]

0
2018-02-01 23:11