chmod / chown hfs + Volume

1

Acabo de guardar algunos datos de una PC dañada en mi HD externo, que es un volumen HFS + con Ubuntu live (copia normal no dd). Ahora estoy perdido: no tengo ningún privilegio en la carpeta que copié en mi Macbook. Intenté cambiarlo usando chmod y chown, tanto como usuario regular como root, pero siempre obtengo una "operación no permitida". El propietario de todos esos archivos es "999".

    
pregunta Benedikt Wutzi 31.05.2011 - 12:47

4 respuestas

2

Parte1:

Tal vez, necesitará permisos de reparación, que se realizan fácilmente con Finder.

  • presione CMD-I en el directorio superior donde están sus archivos en el disco duro externo
  • haga clic en el símbolo de bloqueo (esquina inferior derecha)
  • ingrese su contraseña
  • y ajuste la primera línea en la sección de permisos (Me) para "Leer y escribir", y en la rueda dentada, seleccione "Aplicar a los elementos adjuntos ..."

Lo anterior debería reparar los permisos, pero probablemente no ayude (como ya dijiste)

Parte2:

Si la parte 1 no es de ayuda, probablemente (y solo tal vez!) tiene una lista de ACL dañada. (porque los archivos se copian en otro sistema operativo). OS X HFS no solo tiene los modos chmod habituales, sino que también mantiene la ACL (lista de control de acceso).

Intente esto en el Terminal.app - NO copie & pegue todo de una vez, ingrese los comandos uno por uno ...

cd /Volumes/MOUNT_POINT/directory/with/the/backed/up/files
# where MOUNT_POINT is the drive name as appears in the Finder.  

pwd
# DOUBLE CHECK the pwd
# if you do the next on the wrong place - you can corrupt your system
# YOURE WARNED!!!

#this will remove all ACL informations recursively from all files in your current dir
sudo chmod -RN ./*

#this will change recursively the ownership of the files -> to you.
sudo chown -R $(whoami) ./*    #change ownership of files to you

cd      # go home

ahora puede salir de Terminal.app y verificar el acceso a los archivos a través del Finder y debe repetir la primera parte: cambiar los permisos a través del Finder - > CMD-I ...

    
respondido por el jm666 31.05.2011 - 15:09
2

Como dijo Karmatic, es probable que sea un problema con las ACL, pero recomendaría no cambiar el UID de sus usuarios, ya que parece ser una solución atrasada y puede romper cosas (como la incapacidad de iniciar sesión o acceder a algunos archivos críticos). Desea reparar los archivos, no romper el UID del usuario;)

Si los problemas se encuentran en las ACL, o más bien en las ACE (que son los conjuntos de reglas para las ACL, o más conocidas como entradas de control de acceso), debe repararlas. Puede listar un directorio o archivos ACE usando la función ls "e".

Ejecuta el comando "ls -le" desde la Terminal. Debería ver una salida como esta:

galvatron:~ cksum$ ls -le
total 0
drwx------+  4 cksum  staff   136 28 Aug 22:25 Desktop
 0: group:everyone deny delete
drwx------+ 10 cksum  staff   340 17 Aug 23:35 Documents
 0: group:everyone deny delete
drwx------+  8 cksum  staff   272 29 Aug 11:24 Downloads
 0: group:everyone deny delete
drwx------@ 55 cksum  staff  1870 26 Aug 21:15 Library
 0: group:everyone deny delete
drwx------+  6 cksum  staff   204 29 Aug 02:02 Movies
 0: group:everyone deny delete
drwx------+  7 cksum  staff   238  7 Jan  2011 Music
 0: group:everyone deny delete
drwx------+ 10 cksum  staff   340  8 Aug 15:31 Pictures
 0: group:everyone deny delete
drwxr-xr-x+  8 cksum  staff   272  9 Jan  2010 Public
 0: group:everyone deny delete
drwxr-xr-x+ 29 cksum  staff   986 28 Aug 15:08 Sites
 0: group:everyone deny delete

En el ejemplo anterior, puedes ver que soy el propietario y el grupo al que pertenecen esos directorios es "staff", del cual soy parte. Luego puede ver que cada uno tiene el mismo ACE, en este caso, no todos pueden eliminar el directorio. Entonces, si lo ponemos todo junto, no hay ACE que protejan los directorios de lectura o escritura, pero no hay ninguno que lo proteja de la eliminación, por lo que debe ser el propietario o parte de ese grupo para eliminarlo. También se debe tener en cuenta que las ACE son listas ordenadas, ya que el primer golpe de regla es el que se aplica y todo el resto se ignora. Por ejemplo, si tuviera una regla que permitiera escribir en un archivo y luego una que impidiera la escritura inmediatamente después, el archivo se podría escribir.

Las ACL se introdujeron en Tiger y permanecen prácticamente sin cambios. Ars Technica tiene un excelente resumen de cómo funcionan (sustituyen a chmod btw) y cómo gestionarlos: enlace

Y es de destacar que el comando Reparar permisos de OS X solo repara los archivos críticos del sistema para el funcionamiento del sistema operativo, no los archivos del usuario.

    
respondido por el user10355 29.08.2011 - 23:31
1

La última vez que tuve un problema, un disco de verificación me ayudó. Ya que mencionó sistemas operativos alternativos y "se estrelló": ¿podría ser que el disco está marcado como sucio?

    
respondido por el Martin 31.05.2011 - 13:12
0

Tuve una situación similar cuando intenté acceder a los archivos del sistema de una unidad NAS a través de mi iMac. Como @ jm666 ya señaló, esto sucede debido a las ACL. Cuando creas un usuario en Mac, él / ella obtiene una ID única (uid) en el rango de 500+. Puede encontrar su uid actual ejecutando, id en el Terminal.app. Sin embargo, los uids de Linux comienzan en 1000 (por ejemplo, Ubuntu).

Si todas las otras soluciones no funcionaron, puede intentar crear un nuevo usuario en su Mac y un grupo con una ID similar a un usuario de Linux y debería poder acceder a todos los archivos con permisos de lectura / escritura.

Estos son los pasos que debe seguir.

  1. Abra las Preferencias del sistema y cree un nuevo usuario (por ejemplo, kevin)
  2. Abra el Terminal.app (/Applications/Utilities/Terminal.app)
  3. Ejecuta id kevin para encontrar el uid de kevin.
  4. Ejecutar sudo dscl . -change /Users/kevin UniqueID 504 1000 (asumiendo su uid actual = 504)
  5. Cambie el propietario del directorio de inicio de kevin ejecutando sudo chown -R 1000 /Users/kevin .
  6. Inicia sesión como kevin y accede a tus archivos de Linux.
respondido por el karmatic 31.05.2011 - 15:44

Lea otras preguntas en las etiquetas