Ich kann das Grundprinzip verstehen, Dateien und Ordner im /home/user
Verzeichnis zu verstecken , um zu verhindern, dass Benutzer mit Dingen herumspielen. Ich aber sehe nicht , wie die gleichen Gründe , um Dateien in die angewendet werden können /etc
, /boot
und /var
Verzeichnisse , die die Domäne der Administratoren.
Meine Frage ist, warum einige Dateien und Ordner vor Administratoren verborgen sind? Beispiel:
/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
Befehl listet standardmäßig keine Dateien auf, die mit einem Punkt beginnen (sieheinfo ls
) - es ist das Design dieser speziellen Software.ls
. Auch bei der Shell-Erweiterung von Globs werden diese Dateien nur berücksichtigt, wenn der führende Punkt explizit im Muster enthalten ist. In der Regel werden sie von Dateimanagern nur angezeigt, wenn Sie die Option "Versteckte Dateien anzeigen" auswählen (Ja, diese Option verwendet diesen Begriff).Antworten:
Sie haben die Hauptgründe für "versteckte Dateien" falsch interpretiert. Es ist nicht
Obwohl es für sehr neue Benutzer diese Konsequenz haben kann, bis sie erfahren, was eine "Punktdatei" ist ( Punktdatei und Punktverzeichnis sind möglicherweise angemessenere und spezifischere Begriffe als "versteckt"). An sich hindert es Sie nicht daran, mit Dingen herumzuspielen - dafür sind Berechtigungen vorgesehen. Es ist vielleicht hilfreich, neuen Benutzern anzuzeigen, dass sie damit nichts anfangen sollten, bis sie verstanden haben, wofür es gedacht ist.
Sie können sich das Punktpräfix also als eine Art Dateiendung vorstellen. Beachten Sie, dass sie normalerweise keine haben, obwohl dies möglich ist. Es zeigt an, dass diese Datei für das allgemeine Browsen nicht von Interesse ist, weshalb sie von
ls
Dateibrowsern normalerweise nicht angezeigt wird. Da es sich jedoch um ein Präfix anstelle eines Suffix handelt, gibt es den zusätzlichen Bonus, wenn Sie siels -a
in lexikografischer Reihenfolge anzeigen ( ), um sie alle zusammen aufgelistet zu sehen.Der normale Zweck einer solchen Datei ist die Verwendung durch eine Anwendung (z. B. Konfiguration). Sie müssen sie nicht direkt verwenden oder sich ihrer bewusst sein.
Dieses "Verstecken" ist also nicht so sehr darauf ausgerichtet, die Datei buchstäblich vor dem Benutzer zu verbergen, sondern um Unordnung zu vermeiden und eine gewisse konzeptionelle Organisation zu gewährleisten.
quelle
git
ein bestimmtes Verzeichnis durchsucht wird und eine.gitignore
Datei vorhanden ist, wird diese gelesen. und wenn Sie anfangengdb
, liest es eine$PWD/.gdbinit
Datei, falls vorhanden ( und eine~/.gdbinit
andere übliche Methode)./etc/skel
Enthält Dateien, die in die Home-Verzeichnisse eines neuen Benutzers kopiert werden sollen. Daher sind die Namen natürlich dieselben wie im Home-Verzeichnis eines Benutzers. Das erklärt/etc/skel/.bash_profile
. Das Verzeichnis/root
ist auch ein Ausgangsverzeichnis, nämlich das Ausgangsverzeichnis des Benutzersroot
. Dies erklärt/root/.ssh
und/root/.config
./etc/.pwd.lock
scheint eine Sperrdatei zu sein. Normalerweise interessieren Sie sich nicht für Sperrdateien, daher ist es sinnvoll, diese zu verbergen.Für die anderen Dateien weiß ich nicht, wofür sie bestimmt sind, aber ich bin mir sicher, dass es auch eine gute Erklärung dafür gibt, warum sie versteckt sind.
Und natürlich ist Goldlöckchen richtig, dass Punktedateien versteckt sind, um niemanden daran zu hindern, mit ihnen zu spielen (die Grundidee von Unix ist anzunehmen, dass der Benutzer weiß, was er tut), aber um zu verhindern, dass sie Ihre Verzeichnislisten überladen ( obwohl ich für Konfigurationsdateien im Home-Verzeichnis ein
etc
Unterverzeichnis für eine bessere Lösung gehalten hätte).quelle
Dies könnte eine sehr opiniated Antwort sein, aber ich denke , der Hauptgrund Dateien Punkt und Punkt - Verzeichnisse sind so markiert ist nicht zu verbergen oder dunkel sie - ich glaube , es ist nur der Benutzer wissen zu lassen , dass innerhalb dieser Dateien und Verzeichnisse sind Programms und des Benutzers Einstellungen, die von ihnen oder von den Programmen selbst geändert werden können.
Die Tatsache, dass Punktdateien und Punktverzeichnisse in der Befehlszeile
ls
und in den Ansichten der meisten Dateimanager standardmäßig weggelassen werden, ist nur eine Ware - Sie möchten nicht die internen / Details für alles anzeigen, es sei denn, der Benutzer fordert dies an. Wenn der Benutzer eine Einstellung ändern möchte und dies nicht über eine grafische Benutzeroberfläche kann, wird er die gesuchte Einstellung mit hoher Wahrscheinlichkeit in einer Punktdatei finden .zB> drinnen
$HOME/.vimrc
findest du die Konfigurationseinstellung fürvim
.quelle