Puedo entender la razón de esconder archivos y carpetas en el /home/user
directorio para evitar que los usuarios jueguen con las cosas. Sin embargo, no veo cómo el mismo razonamiento se puede aplicar a los archivos en el /etc
, /boot
y /var
directorios que es el dominio de los administradores.
Mi pregunta es ¿por qué algunos archivos y carpetas están ocultos para los administradores? Ejemplo:
/boot/.vmlinuz-3.11.1-200.fc20.x86_64.hmac
/etc/.pwd.lock
/etc/selinux/targeted/.policy.sha512
/etc/.java
/etc/.java/.systemPrefs
/etc/skel/.bash_profile
/root/.ssh
/root/.config
/var/cache/yum/x86_64/20/.gpgkeyschecked.yum
/var/spool/at/.SEQ
/var/lib/pear/.filemap
ls
comando simplemente no enumera los archivos que comienzan con un punto por defecto (verinfo ls
): es el diseño de este software en particular.ls
; Además, la expansión de shell de los globos no incluirá esos archivos a menos que el punto inicial se incluya explícitamente en el patrón, y generalmente los administradores de archivos no los mostrarán a menos que elija la opción "Mostrar archivos ocultos" (sí, la opción usa ese término).Respuestas:
Has malinterpretado la razón principal de los "archivos ocultos". No lo es
Aunque puede tener esta consecuencia para usuarios muy nuevos hasta que aprendan qué es un "archivo de puntos" (el archivo de puntos y el directorio de puntos son quizás términos más apropiados y específicos que "oculto"). Por sí solo, no evita que juegues con las cosas, para eso están los permisos. Quizás ayude indicar a los nuevos usuarios que esto es algo con lo que no deberían meterse hasta que entiendan para qué sirve.
Por lo tanto, podría pensar en el prefijo de punto como una especie de sufijo de archivo; tenga en cuenta que generalmente no tienen uno de esos, aunque pueden. Indica que este archivo no es de interés para la navegación general, razón por la cual
ls
los navegadores de archivos generalmente no lo mostrarán. Sin embargo, dado que es un prefijo en lugar de un sufijo, existe la ventaja adicional, cuando los muestra (ls -a
) en orden lexicográfico, para verlos todos juntos.El propósito normal de un archivo como este es que lo use una aplicación (por ejemplo, configuración). No tiene que usarlos directamente o incluso estar al tanto de ellos.
Por lo tanto, esta "ocultación" no tiene la intención de ocultar literalmente el archivo al usuario, sino de reducir el desorden y proporcionar una organización conceptual.
fuente
git
escanea un directorio dado, si hay un.gitignore
archivo presente, lo leerá; y cuando comiencegdb
, leerá un$PWD/.gdbinit
archivo si está presente ( y a~/.gdbinit
; otro método común)./etc/skel
contiene archivos para copiar en los directorios de inicio de los nuevos usuarios, por lo tanto, los nombres son, por supuesto, los mismos que en el directorio de inicio de un usuario. Esto explica/etc/skel/.bash_profile
. El directorio/root
también es un directorio de inicio, es decir, el directorio de inicio del usuarioroot
. Esto explica/root/.ssh
y/root/.config
./etc/.pwd.lock
Parece ser un archivo de bloqueo. Normalmente no le interesan los archivos de bloqueo, por lo tanto, tiene sentido que esté oculto.Para los otros archivos, no sé para qué son, pero estoy seguro de que también hay una buena explicación de por qué están ocultos.
Y, por supuesto, goldilocks tiene razón en que los archivos de puntos están ocultos no para evitar que alguien se meta con ellos (la idea básica de Unix es suponer que el usuario sabe lo que hace), sino para evitar que abarroten sus listas de directorios ( aunque para los archivos de configuración en el directorio de inicio, habría considerado un
etc
subdirectorio una mejor solución).fuente
Esto podría ser una respuesta altamente opiniated, pero creo que la razón principal de archivos punto y dot directorios están marcados como que no está a ocultar o oscurecer ellos - Creo que es sólo para que el conocimiento del usuario que dentro de esos archivos y directorios son el programa de usuario y de ajustes que pueden ser modificados por ellos o por los propios programas.
El hecho de que los archivos de puntos y los directorios de puntos se omitan de forma predeterminada en la línea de comandos
ls
y en las vistas en la mayoría de los administradores de archivos es solo una mercancía: no desea mostrar los detalles internos para todo, a menos que lo solicite el usuario; si el usuario desea cambiar una configuración y no puede hacerlo a través de una GUI, es muy probable que encuentre la configuración que está buscando en un archivo de puntos .Por ejemplo, dentro de
$HOME/.vimrc
usted encontrará la configuración paravim
.fuente