69 votos

Archivo no se puede mover por Root en OS X

He intentado mover algunos archivos a una subcarpeta en OS X. Uno se negó a moverse. Decía Operation not permitted . Lo intenté de nuevo como Root:

$ sudo mv file subfolder/
mv: rename file to subfolder/file: Operation not permitted
$ sudo mv file filex
mv: rename file to filex: Operation not permitted
$ lsattr file
lsattr: Inappropriate ioctl for device While reading flags on file

Intenté lsattr en otros archivos; todos los archivos que probé me dieron el mismo mensaje: Inappropriate ioctl for device While reading...

Viniendo de Linux, yo no sabía acerca de las banderas así que aquí está la salida de ls -leO@ file :

$ ls -leO@ file otherfile
-rwxrwxrwx  1 eeytan  staff  uchg 79549 Nov 11  2010 file
-rw-r--r--  1 eeytan  staff  -     5071 Sep  7 02:37 otherfile

He probado la Utilidad de Discos de OS X; dice que no hay errores en mi disco. ¿Qué ocurre aquí?

97voto

JeffFoster Puntos 354

Para las personas que se tropiecen con esto en una era OS X 10.11+ (El Capitan o más reciente): Apple ha añadido una nueva capa de seguridad en OS X . Le han quitado algunos privilegios a Root. El archivo que está intentando modificar tiene un restricted bandera. Sólo restricted firmados por Apple podrán modificar estos archivos. Sin embargo, puede desactivar este sistema de seguridad arrancando en modo de recuperación y desactivándolo en un Terminal haciendo: csrutil disable .

Alternativamente, también puede simplemente iniciar el Terminal en Modo Recuperación y eliminar el archivo allí. O incluso intentar arrancar en un entorno Linux con soporte HFS+ (al menos si aún no estás en APFS) para cambiar el archivo.

42voto

binarybob Puntos 6395

A mí me parece que el archivo está bloqueado, por eso aparece el atributo uchg. Usted debe ser capaz de utilizar el siguiente comando para eliminar el atributo bloqueado:

chflags nouchg file

o haga clic con el botón derecho del ratón sobre el archivo en el Finder, haga clic en "Obtener información" y desmarque la casilla "Bloqueado".

10voto

Dennis Puntos 11

Inténtalo:

chflags -f -R nouchg directory

en un directorio de nivel superior para detener este problema.

3voto

Nathan Arthur Puntos 121

Tenía un archivo que no podía borrar en terminal:

$ sudo ls -leO@ foo@example.com/Documents/.%cb_defense/cb.doc
-rw-rw-rw-  1 root  wheel  - 41984  1 Mar 11:20 foo@example.com/Documents/.%cb_defense/cb.doc

$ sudo rm -rf foo@example.com/Documents/.%cb_defense/cb.doc
rm: foo@example.com/Documents/.%cb_defense/cb.doc: Operation not permitted

Lo que me funcionó fue abrir Finder y borrar todo el directorio que lo contenía. Según tengo entendido, Finder borra los directorios como una unidad, sin tener en cuenta su contenido, por lo que no está sujeto a las mismas restricciones que los archivos normales. rm -rf .

1voto

abbaroo Puntos 1

Yo también tuve este problema y descubrí que la carpeta en la que estaba el archivo estaba bloqueada. Así que asegúrate de que no es así. Haga 'obtener información' en la carpeta en el buscador, y asegúrese de que la casilla de verificación bloqueado no está marcada.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X