Cuando lo ejecuto chmod +w filenameno da permiso de escritura a other, solo da permiso de escritura a usery group.
Después de ejecutar este comando
chmod +w testfile.txt
ls -l testfile.txtimpresiones en ejecución
-rw-rw-r-- 1 ravi ravi 20 Mar 10 18:09 testfile.txt
pero en caso de +ry +xfunciona correctamente.
No quiero usar chmod ugo+w filename.
linux
command-line
permissions
chmod
Ravi Sevta
fuente
fuente

ugo, usea.+wno funciona.askubunturespuesta que hace referencia más arriba que "Este comportamiento es un mandato POSIX y, por lo tanto, no es un error". Tenga en cuenta que el texto de uso de la aplicación POSIX no es normativo y, por lo tanto, POSIX no lo exige.Respuestas:
Su situacion especifica
En su situación específica, podemos adivinar que su actual
umaskes002(este es un valor predeterminado común) y esto explica su sorpresa.En esa situación específica donde el
umaskvalor es 002 (todos los números son octales).+rsignificaugo+rporque002 & 444es000, lo que permite establecer todos los bits+xsignificaugo+xporque002 & 111es000, lo que permite establecer todos los bits+wsignificaug+wporque002 & 222es002, lo que impide que se establezca el bit "o".Otros ejemplos
umask 022+wsignificaríau+w.umask 007+rwxsignificaríaug+rwx.umask 077+rwxsignificaríau+rwx.¿Qué hubiera cumplido con sus expectativas?
Cuando cambias
umaska000, ejecutandoen tu terminal, entonces
establecerá permisos para ugo + w.
Nota al margen
Según lo sugerido por ilkkachu, tenga en cuenta que eso
umask 000no significa que todos puedan leer y escribir todos sus archivos.Pero
umask 000significa que todos los que tienen algún tipo de acceso a cualquier cuenta de usuario en su máquina (que puede incluir programas que ejecutan servicios de servidor ofc) pueden leer y escribir todos los archivos que crea con esa máscara activa y no cambian (si la cadena que contiene directorios hasta la raíz también les permite).fuente
rbit para aquellas partes donde el umask lo permite. Esto se indica claramente en los manuales de, por ejemplo, GNU chmod y FreeBSD chmod, así como en el estándar. Lo mismo para+x. Pues+wtienes razón, para el caso de esa umask particular.0no significa que todos puedan leer y escribir todos sus archivos, ya que muchas aplicaciones crean archivos que son particularmente privados con el modo0600, lo que significa que el grupo y otras personas no tienen acceso, independientemente de la umask.umaskes una parte importante de cómo se+rcomporta, no una nota al margen. Además, incluso asumir umask002,chmod +rno significachmod ugo=r, significachmod ugo+rCon:
los permisos se agregan a usuarios , grupos y otros, pero la umask aún se aplica Se asegura de que el archivo no tenga más permiso que un archivo recién creado.
Si desea agregar los permisos a usuarios , grupos y otros independientemente de la umask, use
que es la abreviatura de
fuente
Debe especificar a quién le está dando los permisos, por ejemplo
other, mediantechmod o+w testfile.txtfuente
+wda permiso a todos (usuario, grupo y otros).chmod a+w testfile.txt. Úseloupara usuario,gpara grupo,opara otro yapara todos.chmod a+w filename,chmod +w filenameychmod ugo+w filenameson alternativas entre sí, entonces ¿por qué no solo usar?+w