Als ich es probierte $ ls /proc
, fand ich Folgendes directories(numbered - for PID and other subdirectories...)
:
Ich beschreibe nur einige der nummerierten Unterverzeichnisse, und andere Unterverzeichnisse
$ ls /proc
129 1475 1899 2 21 2302 (PID's-correct me if i am wrong)
acpi ,asound, bus,driver, fs, ipmi ,irq , mounts , net ,scsi ,self,sys, sysvipc,tty(other subdirecories ),
und als ich es versuchte, wurden darin $ ls - l /proc
einige Zeichen angezeigt :->
$ ls -l /proc
lrwxrwxrwx. 1 root root 11 Sep 7 17:06 mounts -> self/mounts
lrwxrwxrwx. 1 root root 8 Sep 7 17:06 net -> self/net
lrwxrwxrwx. 1 root root 0 Sep 7 2014 self -> 4806
Hier im Access Specifier
Vollzugriff ist es (lrwxrwxrwx)
, meine Frage ist: Was wird l
hier angegeben, lrwxrwxrwx
was bedeuten diese ->
Zeichen? wie in( mounts -> self/mounts , net -> self/net,self -> 4806 etc.
)
Antwort1
Das Vorhandensein von ->
bedeutet, dass dieser „Eintrag“ im Verzeichnis ein symbolischer Link (Symlink) zu einer Datei/einem Verzeichnis an einer anderen Stelle ist. In diesem Fall /proc/mounts
ist ein Symlink zu /proc/self/mounts
.
Symlinks haben normalerweise die Berechtigung 0777, da sie nicht den Zugriff auf eine Datei/ein Verzeichnis erlauben/einschränken (daher das rwxrwxrwx
). Die Berechtigungen für die Datei/das Verzeichnis sind jedoch weiterhin gültig. Wenn eine Datei also die Berechtigungen 0600
oder hat rw-------
, kann nur der Benutzer, dem die Datei gehört, sie lesen oder darin schreiben, entweder direkt oder über einen Symlink.
Ich bin mir nicht ganz sicher l
, aber ich vermute, dass es ein Hinweis darauf ist, dass es sich bei dem Eintrag um einen symbolischen Link handelt.