Tengo una carpeta udp_folder2
d------r-T 41 root root 4096 Apr 26 21:17 udp_folder2
cuando «estoy con un usuario que no es root
, no puedo» t cp -r
en una nueva carpeta que dice: Permiso denegado
¿por qué? y cómo puedo copiarlo con un usuario que no sea root
Responder
Bueno,
Eso sería porque la forma en que se establecen sus permisos actuales, nadie puede mover ese archivo. (Aparte de root, porque root no sigue las mismas reglas).
Debería cambiar el propietario del archivo (chown), O agregar el otro usuario al grupo «root» y modifíquelo para que el grupo pueda ejecutarse en el directorio, O permita que todos los demás ejecuten el archivo.
Entonces, una solución rápida sería:
chmod -R o+rwx udp_folder2
Eso les dará a todos la capacidad de leer, escribir y ejecutar en ese directorio.
Además … si «estás intentando copiar» udp_folder2 «en el mismo directorio en el que se encuentra ahora , también necesitará el permiso «w» en ese directorio. Por ejemplo:
/ foo / udp_folder2 – necesitará «w» en / foo para copiar ese directorio en / foo
Sugeriría aprender los permisos de archivos de Linux: Tutorial de permisos de archivos de Linux
Comentarios
Respuesta
El directorio no tiene permiso x
, por lo que otros (es decir, en este caso cualquier usuario) pueden usar el directorio para acceder a los archivos dentro. El T
significa que es pegajoso (solo el propietario de un archivo puede eliminarlo). Con el permiso x
y el bit adhesivo, verá una t
minúscula; la T
en mayúsculas dice «sin permiso de acceso, pero un bit pegajoso, que es una combinación extraña».
Lea sobre los permisos de directorio / archivo Unix. No es demasiado difícil, y lo lo necesitará.
Respuesta
No » No quiero darles a todos rwx
en el directorio porque «crearía un riesgo de seguridad. Y no querría -R
el chmod porque eso escribiría los cambios de forma recursiva.
Solo chmod 755 "filename"
y estás bien.
Aquí tienes un desglose de los números:
- Leer = 4
- Escribir = 2
- Ejecutar = 1
Entonces tienes 3 grupos:
- Propietario.
- Aquellos que pertenecen al Grupo.
- Todos los demás.
Entonces, si quiero dar al propietario rwx
, a los que pertenecen al grupo rw
y a todos los demás rw
simplemente agrega los permisos: rwx
= 7, porque r
+ w
+ x
es 4 + 2 + 1 y rw
= 6 porque r
+ w
= 4 + 2.
Comentarios
- De ahí mi término ' Entonces, una solución rápida sería ' y le envío un enlace para obtener más información sobre los permisos. No ' no mencionó una preocupación por la seguridad ni nada por el estilo. Acaba de decir que quiere copiar el directorio.
- Además, ' necesitaremos el ' w ' permiso en el directorio en el que ' está intentando copiarlo.
- Don ' No seas un enemigo de Tillman.
Responder
Para copiar la carpeta donde el propietario no» Si tiene permiso para ello, debe cambiar estos permisos.
Si la carpeta está restringida incluso para el propietario, hay alguna razón para ello y otorgar permisos a todos los demás (o
) no es «una buena solución ( como se muestra en la primera respuesta).
Para que el propietario acceda a la carpeta, debe haber leído (r
) y ejecutar / buscar bits (X
) establecido. Si tiene carpetas dentro de las carpetas, cada una debe seguir las mismas reglas. Para archivos, solo un bit de lectura (r
) es suficiente.
Básicamente, para otorgar permisos de lectura a la carpeta de forma recursiva, debe ejecutar:
chmod -vR u+rX folder/
Si está ejecutando el comando anterior como usuario, prefijo con sudo
(si tiene privilegios de superusuario), de lo contrario, ejecutar como root.
Si algunos archivos dentro de la carpeta no son propiedad de root, cámbielos de forma recursiva por:
sudo chown -vR root folder/
Entonces cópielo como de costumbre o use rsync
de la siguiente manera:
rsync -vuar src/ dst/
Para obtener más explicaciones sobre los comandos anteriores, consulte: man chmod
y man chown
.
r
permiso, obviamente hayr
permiso para otro usuario. I sar
d------r-T
, elr
es para otro usuarioT
es de improviso.