Ejecuté un 'chown' en todo bajo / usr a un usuario no root. Pretendía ejecutarlo para / usr / local / Ahora aparece el siguiente error al abrir el terminal
login(89809,0x7fff7bac5960) malloc: *** error for object 0x7fc7cb500b40: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug
[Process completed]
Respuestas:
Si no puede restaurar
/usr/
desde una copia de seguridad, primero puede iniciar en modo de usuario único (manteniendo presionado el comando-S al inicio) y ejecutarchown -R root /usr/
.En mi instalación, todos los archivos bajo
/usr/local/
eran propiedad de root o yo, unos archivos bajo/usr/
eran propiedad de_uucp
y todos los demás archivos bajo/usr/
eran propiedad de root:Esto cambiaría el propietario de los
uucp
archivos:/usr/local/
no existe en una instalación nueva de OS X. Si solo usó/usr/local/
con Homebrew, puede eliminar/usr/local/
y luego reinstalar Homebrew.Alternativamente, puede usar Pacifist para copiar el valor predeterminado
/usr/
de un instalador de OS X descargado de App Store. Hacer una instalación de actualización de OS X desde la partición de recuperación o actualizar a 10.9 también podría restaurar a los propietarios de algunos archivos.fuente
Creo que este es un caso en el que los permisos de reparación realmente hacen algo útil. Restaurará los permisos correctos a todos los archivos proporcionados por Apple, que creo que son todos menos aquellos en / usr / local. Ese directorio contiene cosas que agregó y, por lo tanto, debería poder recrearlas.
Para reparar permisos, use Disk Utility.app y seleccione el disco de arranque en la lista de discos de la izquierda. Habrá botones para verificar o reparar permisos de disco.
fuente
/usr/!(local)/
que no se incluyeron con OS X: por ejemplo, archivos que fueron agregados por el paquete Command Line Tools, archivos agregados por los instaladores para MacTeX, Java y Haskell, y algunos binarios/usr/bin
que fueron agregados porsudo /usr/bin/gem install
./usr/!(local)/
Apple para administrar esa área