macos - permission - Carpeta/archivos "restringidos" en OS X El Capitan
repair permissions high sierra (7)
Después de actualizar de OS X Yosemite a OS X El Capitan Developer Preview, traté de editar /System/Library/LaunchDaemons/ssh.plist para cambiar el puerto SSH predeterminado a uno personalizado. Este es el proceso que he estado usando durante un par de años.
El problema es que El Capitan no me permite cambiar nada en esta carpeta (ni siquiera con "sudo"). La carpeta y sus archivos se marcan como "restringidos" cuando enumero los contenidos con "ls -lO" . La misma lista de carpetas en versiones anteriores de OS X no muestra "restringido".
¿Es esto algo nuevo para OS X El Capitan? ¿Cómo puedo editar archivos / carpetas que están "restringidos" ?
Descubrí que esto se debe a una nueva característica introducida en El Capitán llamada "SIP" (Protección Intregrity del Sistema) .
Lea más aquí: https://forums.developer.apple.com/thread/4731?q=SIP
Desafortunadamente, nadie sugirió una forma de editar archivos / carpetas "restringidos" sin desactivar SIP.
- Simplemente inicie en modo "Recuperación" presionando "CMD + R" mientras reinicia.
- Terminal abierta
- Su disco se montará en / Volumes / Macintosh HD
- Eliminar archivos a través de "rm": tienes control absoluto en ese terminal.
Hasta el 10.11 desprotege ciertos archivos en / System / Library o le permite hacerlo usted mismo, la única forma sin deshabilitar SIP sería hacer un servicio diferente copiando el archivo en otro lugar, como:
sudo cp /System/Library/LaunchDaemons/ssh.plist /Library/LaunchDaemons/ssh.plist
Y luego, en lugar de usar el panel Compartir en Preferencias del sistema, administraría el servicio usted mismo:
sudo launchctl unload /Library/LaunchDaemons/ssh.plist
sudo launchctl load -w /Library/LaunchDaemons/ssh.plist
Puede "pasar por alto" la protección SIP modificando los permisos en el archivo a través de la aplicación Finder para el grupo del sistema.
Funcionó bien para mí incluso después de reiniciar, estoy corriendo
ProductName: Mac OS X ProductVersion: 10.11 BuildVersion: 15A284
También puede dejar SIP habilitado mientras deshabilita la administración del sistema de archivos. Reinicie en modo de recuperación y ejecute:
csrutil enable --without fs
Esto le permitirá cambiar los permisos según sea necesario.
También puede deshabilitar temporalmente SIP de la siguiente manera
- reiniciar
- tan pronto como escuche el "sonido Mac" en la pantalla gris, presione Cmd + R para ingresar al modo de recuperación
- Open Utilities-> Terminal
-
Ejecute el comando
csrutil disable
- Reinicie, aterrizará en el sistema operativo normal con SIP deshabilitado
- haz todos los cambios que te gustaría hacer
- Reiniciar de nuevo
- tan pronto como escuche el "sonido Mac" en la pantalla gris, presione Cmd + R para ingresar al modo de recuperación
-
Habilite SIP con
csrutil enable
- Reiniciar de nuevo
- hecho
Te sugiero que intentes agregar cualquier argumento que necesites a un plist en / Library / Preferences /. Por ejemplo, en mi caso, necesitaba hacer una ligera modificación en mDNSResponder para agregar el indicador AlwaysAppendSearchDomains. Según lo sugerido por "bwells" en los foros de desarrolladores de Apple, solo tenía que hacer
sudo launchctl unload /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist
sudo defaults write /Library/Preferences/com.apple.mDNSResponder.plist AlwaysAppendSearchDomains -bool YES
sudo launchctl load /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist
Este es un enfoque mucho más limpio y persiste durante los reinicios y también debería sobrevivir a una actualización (al menos durante las versiones beta, se sobrescriben mis cambios manuales después de deshabilitar SIP). Tenga en cuenta que, hasta donde yo sé, esto es nuevo para El Capitán.
Utilizo el clonador de copia al carbón para hacer copias de seguridad clonables ... y tengo varias en rotación.
De acuerdo con Mike en Bombich "SIP solo se aplica al volumen desde el que está arrancando actualmente, por lo que [uno puede] arrancar desde el volumen de respaldo para eliminar [archivos]".
Utilicé la respuesta de johannes (unidad de recuperación, csrutil habilitar / deshabilitar), pero eso requiere reiniciar -> unidad de recuperación -> apagar sorbo -> reiniciar -> borrar basura -> reiniciar -> unidad de recuperación -> encender sip nuevamente - > reiniciar ... cuatro reinicios.
Pero arrancar desde un clon y ver la unidad original como una unidad secundaria le permitiría eliminar archivos problemáticos en dos reinicios ... ¿sí?