Вопрос: Отладка моей установки perl на Mac OS X 10.6


Я перепутал свою установку perl в Mac OS X 10.6. Я объясню, как:
Я хотел добавить пакет cpan для Bundle :: DBD :: mysql, cpan сказал мне сначала обновить Bundle :: CPAN. Я не мог из-за разрешений. Так что я sudoиздание perl -MCPAN -e shell и обновленный cpan, тогда я получил пакет mysql, но ему не удалось выполнить некоторые тесты, которые я затем принудительно установил (он работает btw). Затем по какой-то причине я решил перестроить пакет mysql. Это заняло много времени. В конце концов я понял, что он перестроил много, как perldoc.

Теперь, когда я пытаюсь запустить perldoc, у меня нет разрешения на это, но когда я sudo perldoc скажу, что он не может его найти.

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

Я бы хотел переустановить perl на самом деле, как Apple установила его, когда я обновился до Snow Leopard (хотя сохранение DBD :: mysql было бы неплохо), и я не знаю, с чего начать. Я не хочу идти с каким-то пакетом fink или в стиле портов. Получение последней версии perl 5.10 было бы плюсом.


4
2017-11-28 07:29


Источник




Ответы:


Это может показаться, что я полный Mac Newb (хотя я использовал Mac с LC), но так как установка комбинированного обновления для 10.6.2 не исправила эту проблему, даже несмотря на то, что она перезаписывала файлы, я с запозданием осознал, что «Устранить права доступа» на Disk Utility будет исправлена. И это произошло.

Странная вещь - фактическая бинарная /usr/bin/perldoc не был затронут. Вероятно, это связано с одним из этих пакетов в выходе.

Вот что он выводит как фиксированный материал (обратите внимание, что последняя строка для меня)

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





Попробуйте использовать пацифист для запуска соответствующего пакета Installer с вашего диска 10.6. Я не уверен, какой пакет у него на голове, но Pacifist позволяет вам просматривать и искать пакеты на диске. Я не верю, что он удалит новые файлы, но он восстановит вашу установку Perl до рабочего значения по умолчанию. Вы также можете выборочно извлекать файлы и папки.

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

Я использовал его пару лет назад для того, чтобы контролировать ущерб (довольно успешно, я мог бы добавить) после довольно смущающего инцидента, связанного с sudo rm -fr /bin, Не спрашивайте.


3
2017-11-29 22:07





Да ... Дисковые утилиты «Разрешения на ремонт» работали и на меня. Такая же проблема ... установлен модуль DBD :: mysql, и он закрыл разрешения.


2
2018-01-22 18:41





Вы всегда можете скачать последнюю версию perl из http://www.cpan.org/src/5.0/latest.tar.bz2,

Вам нужно будет распаковать и запустить Configure.

Обычно я предпочитаю иметь собственную установку perl, даже когда базовая ОС включала версию. Это означает, что мои сценарии можно обновить до более поздних версий в моем расписании, а не для сопровождающих.


1
2017-11-28 17:23



Не особенно рекомендуется перезаписывать установку по умолчанию Perl с помощью специальной, поскольку обновления программного обеспечения и тому подобное могут сделать предположения относительно системы Perl по умолчанию. Если вы собираетесь перевернуть свой собственный Perl, лучше установить его в / usr / local или другое место вне своего пути. В любом случае ему все равно придется исправить свою систему Perl. - Lawrence Velázquez
Я бы не перезаписывал установку по умолчанию, я имел в виду установку новой установки в отдельный каталог. - gorilla
Gotcha, но это все еще не исправляет его сломанный по умолчанию Perl. - Lawrence Velázquez
Что касается перезаписи значения по умолчанию perl, см. stackoverflow.com/questions/1992720/... - Ether


возможно, это помогает установить последнее обновление в http://support.apple.com/kb/DL959, У меня были серьезные проблемы после полного восстановления системы с помощью машины времени. кажется, что это развращает многие вещи, и я больше не мог использовать quicklook помимо других вещей. после переустановки этого обновления все функции как обычно. с небольшим количеством удачи perl в этом обновлении.


1
2017-11-30 01:20



Я попробовал это, и это не сработало. Тем не менее, он установил таинственный жесткий флеш-плагин, который был проклятием youtube (и другого флеш-видео) с момента обновления до улучшенной «стабильности плагина для сафари». Повторная установка разрешила это, но не моя проблема с разрешением perldoc. - dlamblin
На самом деле этот флеш-штекер стабильной вещи приходит и уходит; он идет с перезапуском, и я не знаю, что его вызывает. - dlamblin
Для заинтересованных: стабильность вспышки связана с аудио во флэш-видео и несовместимостью в Audio Hijack Pro. Видеть: superuser.com/questions/83315 - dlamblin


Установлен новый CPAN на льве.

Перед установкой «Разрешений на ремонт» Disk Utility:

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

Работает снова после:

$ 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