Mi sistema perl
parece tener un montón de cruft de instalaciones anteriores:
% which perl
/usr/bin/perl
% perl -V | perl -ne 'print if /INC/...//'
@INC:
/Library/Perl/5.18/darwin-thread-multi-2level
/Library/Perl/5.18
/Network/Library/Perl/5.18/darwin-thread-multi-2level
/Network/Library/Perl/5.18
/Library/Perl/Updates/5.18.2/darwin-thread-multi-2level
/Library/Perl/Updates/5.18.2
/System/Library/Perl/5.18/darwin-thread-multi-2level
/System/Library/Perl/5.18
/System/Library/Perl/Extras/5.18/darwin-thread-multi-2level
/System/Library/Perl/Extras/5.18
.
Entre las cosas en /System/Library/Perl/Extras/5.18/darwin-thread-multi-2level
hay una versión antigua de Moose.pm
que no funciona, así que quiero deshacerme de ella:
% perl -MMoose -e1
Invalid version format (version required) at /Library/Perl/5.18/Module/Runtime.pm line 396.
BEGIN failed--compilation aborted.
% perldoc -l Moose
/System/Library/Perl/Extras/5.18/darwin-thread-multi-2level/Moose.pm
Sin embargo, no puedo:
% sudo rm /System/Library/Perl/Extras/5.18/darwin-thread-multi-2level/Moose.pm
Password:
override rw-r--r-- root/wheel restricted,compressed for /System/Library/Perl/Extras/5.18/darwin-thread-multi-2level/Moose.pm? y
rm: /System/Library/Perl/Extras/5.18/darwin-thread-multi-2level/Moose.pm: Operation not permitted
Estoy adivinando de que en mis diversas actualizaciones de SO a lo largo de los años, Apple ha movido algunos de mis módulos instalados por el usuario a este directorio /System/Library/Perl/Extras
, pero luego lo ha protegido con la Protección de integridad del sistema, así que ahora no puedo deshacerme de él (fácilmente). ¿Eso suena probable?
Si es así, ¿cómo diablos llegaron estas cosas? De acuerdo con ¿Qué es la función "sin raíz" en El Capitán? , ¿en serio? , cualquier basura adicional en /System
que Apple no deseaba debería haberse movido a /Library/SystemMigration/History/Migration-(some UUID)/QuarantineRoot
, ¿verdad? Nunca he deshabilitado SIP en esta máquina.
Entonces, ¿cuál es la mejor manera de lidiar con esto? Puedo desactivar temporalmente el SIP y eliminar /System/Library/Perl/Extras/5.18
o lo que sea, pero me gustaría tener la seguridad de que esto no es algo que Apple realmente espera que esté allí. ¿Hay una lista definitiva de lo que debería estar presente en /System
en mi sistema operativo (que es High Sierra, 10.13.4 (17E199))?