Tengo un directorio que se muestra con la máscara de permiso drwsrwsr-x
. Cuando trato de restablecer los permisos a 755
la S todavía permanece.
¿Qué es la "s" y por qué no puedo volver a cambiar los permisos a 775 ( drwxrwxr-x
)?
Tengo un directorio que se muestra con la máscara de permiso drwsrwsr-x
. Cuando trato de restablecer los permisos a 755
la S todavía permanece.
¿Qué es la "s" y por qué no puedo volver a cambiar los permisos a 775 ( drwxrwxr-x
)?
Respuestas:
Los mensajes que está viendo en la posición de "ejecución" en la columna de usuario y grupo son los bits SetUID (Establecer ID de usuario en ejecución) y SetGID (Establecer ID de grupo en ejecución).
Los permisos de archivos Unix son en realidad un número octal de 4 dígitos SUGO
Puede eliminar los bits setuid de su directorio con chmod ug-s directory
, ochmod 0755 directory
Para obtener más información, consulte la página de manual chmod
y esta página de Wikipedia sobre el bit SetUID .
chmod 0755
no no borrar el bit setuid, al menos no en Linux. Actualmente estoy probando en otros sistemas.
chmod
con un modo octamal borre los bits setuid, setgid y vtx.
chmod 00755
; ver unix.stackexchange.com/q/393531/46851
setuid y setgid (abreviatura de establecer ID de usuario tras la ejecución y establecer ID de grupo tras la ejecución, respectivamente) son indicadores de derechos de acceso de Unix que permiten a los usuarios ejecutar un ejecutable con los permisos del propietario o grupo del ejecutable. A menudo se usan para permitir a los usuarios en un sistema informático ejecutar programas con privilegios elevados temporalmente para realizar una tarea específica. Si bien los privilegios supuestos de identificación de usuario o de grupo proporcionados no siempre son elevados, como mínimo son específicos.
Para eliminar los bits setuid y setgid numéricamente, debe prefijar el patrón de bits con un 0
(por ejemplo, se 0775
convierte en 00775
).
Ejecute para eliminar setuid y setgid:
chmod 00775 path
o
chmod a-st path
Agregando a la respuesta de ooshro ...
Si usa permisos suid o sgid en un directorio, cualquier archivo creado dentro de ese directorio tendrá el mismo propietario (si suid) o grupo (sgid) que el directorio en cuestión.
Lo uso para mi casa Samba compartir. El directorio base es propiedad del usuario nobody y group olympia, y los permisos son 2770. Por lo tanto, debe estar en el grupo olympia para leer o escribir cualquier cosa debajo de ese directorio, y se asegurará de que olympia sea el grupo propietario de todo lo que se encuentre debajo de él. . También tengo Samba configurado para usar una máscara de dir 2770 y una máscara de archivo de 660 para mantener los permisos correctos en todo el árbol.