Crear directorios y archivos en /Library en os-x 10.8

Crear directorios y archivos en /Library en os-x 10.8

Quiero instalar archivos en /Library/Python/2.7/site-packages en OS-X 10.8. He iniciado sesión como administrador, pero sigo apareciendo el error "Permiso denegado". El mismo error cuando intento crear un directorio allí desde la Terminal. Aparentemente no tengo permiso para escribir en el área raíz. ¿Cómo puedo solucionar esto?

Respuesta1

Iniciar sesión en MacOSX como "administrador" le otorga permiso para ejecutar ciertos comandos privilegiados, pero no lo convierte en root (ID de usuario 0 - superusuario). El directorio Python, y casi todo lo que se encuentra en /Biblioteca, es propiedad del usuario root y solo puede escribirlo: por ejemplo

mymac:Python kentalt$ ls -l
total 0
drwxr-xr-x  3 root  wheel  102 Jun 20  2012 2.3
drwxr-xr-x  3 root  wheel  102 Jun 20  2012 2.5
drwxr-xr-x  3 root  wheel  102 Jun 20  2012 2.6
drwxr-xr-x  3 root  wheel  102 Jun 20  2012 2.7
mymac:Python kentalt$ touch foo
touch: foo: Permission denied

El administrador puede usar sudo (ejecutar un comando como usuario root) con su administrador aprobado:

mymac:Python kentalt$ sudo touch foo
Password:
mymac: Python kentalt$ ls -l
total 0
drwxr-xr-x  3 root  wheel  102 Jun 20  2012 2.3
drwxr-xr-x  3 root  wheel  102 Jun 20  2012 2.5
drwxr-xr-x  3 root  wheel  102 Jun 20  2012 2.6
drwxr-xr-x  3 root  wheel  102 Jun 20  2012 2.7
-rw-r--r--  1 root  wheel    0 Jan 10 08:57 foo

Tenga en cuenta que debe usar sudo con cada uno de estos comandos (si ejecuta varios de estos comandos en un corto período de tiempo, no le pedirá su contraseña cada vez):

mymac:Python kentalt$ rm foo
override rw-r--r--  root/wheel for foo? y
rm: foo: Permission denied
mymac:Python kentalt$ sudo rm foo
mymac:Python kentalt$ ls
2.3 2.5 2.6 2.7

También puede cambiar los permisos del directorio para permitir que el grupo o todos escriban en él, en lugar de realizar todo el mantenimiento como root; tenga en cuenta que los cambios de permisos pueden interrumpir algunos programas o pueden revertirse en las actualizaciones del sistema, aunque Python probablemente esté bien. O agregue un enlace simbólico para los paquetes del sitio a algún otro lugar en el espacio de escritura del usuario, para mantener sus actualizaciones claramente separadas de los archivos compatibles con el sistema.

Puede utilizar "sudo bash" para iniciar una sesión de shell como root. Esto es algo realmente peligroso, porque root puede hacer prácticamente cualquier cosa y puede que ni siquiera requiera una verificación de estado antes de eliminar todo el sistema, por ejemplo, "rm -rf . /*" (un error tipográfico que todos los antiguos administradores de Unix lo ha hecho al menos una vez).

información relacionada