Si su directorio personal es privado, nadie más puede acceder a ninguno de sus archivos. Para acceder a un archivo, un proceso debe tener permiso de ejecución para todos los directorios en la ruta hacia abajo del árbol desde el directorio raíz. Por ejemplo, para permitir que otros usuarios lean /home/martin/public/readme
, los directorios /
, /home
, /home/martin
y /home/martin/public
todos tenemos que tener los permisos d??x??x??x
(que puede ser drwxr-xr-x
, o drwx--x--x
, o alguna otra combinación), y, además, el archivo readme
debe ser legible públicamente ( -r??r??r??
).
Es común tener directorios de inicio con modo drwxr-xr-x
(755) o al menos drwx--x--x
(711). El modo 711 (solo permiso de ejecución) en un directorio permite que otros accedan a un archivo en ese directorio si conocen su nombre, pero no pueden enumerar el contenido del directorio. En ese directorio de inicio, cree subdirectorios públicos y privados como desee.
Si nunca desea que otras personas lean ninguno de sus archivos, puede crear su directorio personal drwx------
(700). Si hace eso, no necesita proteger sus archivos individualmente. Esto no romperá nada más que la capacidad de otras personas para leer su archivo.
Una cosa común que puede romperse, porque es una instancia de otras personas que leen sus archivos, es si tiene un directorio como ~/public_html
o ~/www
que contiene su página web. Dependiendo de la configuración del servidor web, este directorio puede necesitar ser legible en todo el mundo.
Puede cambiar los permisos predeterminados para los archivos que cree configurando el valor de umask en su .profile
. La umask es el complemento de los permisos máximos de un archivo. Los valores comunes incluyen 022 (editable solo por el propietario, legible y ejecutable por todos), 077 (acceso solo por el propietario) y 002 (como 022, pero también de escritura grupal). Estos son permisos máximos: las aplicaciones pueden establecer permisos más restrictivos, por ejemplo, la mayoría de los archivos no son ejecutables porque la aplicación que los creó no estableció los bits de permiso de ejecución al crear el archivo.