Die Verwendung der Oktalcodes hat zwei Vorteile, die mir einfallen, von denen keiner so groß ist:
- Sie sind kürzer und einfacher zu tippen.
- Einige Dinge verstehen sie nur, und wenn Sie sie routinemäßig verwenden, kratzen Sie sich nicht am Kopf (oder rennen zur Dokumentation), wenn Sie auf eine stoßen. ZB müssen Sie Oktal für
chmod
in Perl oder C verwenden.
Manchmal können wirklich einfache Dienstprogramme die "benutzerfreundlichen" Versionen nicht verarbeiten. vor allem in Nicht-GNU-Benutzerländern.
Außerdem spucken einige Dienstprogramme Oktal aus. Wenn Sie beispielsweise ausführen, um umask
zu sehen, wie Ihre aktuelle Umask lautet, wird sie als Oktal ausgegeben (obwohl dies in Bash umask -S
symbolisch ist).
Kurz gesagt, ich würde sagen, der einzige Grund, sie zu bevorzugen, ist, weniger Zeichen einzugeben, aber selbst wenn Sie sie nicht verwenden, sollten Sie wissen, wie sie zugeordnet sind, damit Sie einen Oktalcode finden, wenn Sie sie ausführen in eines der Dinge, die nur Oktal tut. Aber Sie müssen nicht sofort wissen, dass 5 Karten zu rx
, Sie müssen nur in der Lage sein, das herauszufinden.
chmod
in Perl oder C eine oktale Darstellung verwendet werden muss, ist kein wirklicher Vorteil, da die Darstellung bereits vorhanden war.Vermutlich habe ich zu lange Oktal verwendet.
7 ist rwx (mach irgendetwas damit), 5 ist rx (muss gelesen werden, um es auszuführen), 6 ist wr (jede Datendatei, die du ändern musst), 4 ist r (wir lassen dich es sehen) und 0 ist - (sorry, hier gibt es nichts zu sehen). Und die Reihenfolge ist Ich, Wir, Jeder. Dies sind die Grundkombinationen.
Ich kann es ändern und ausführen, jeder andere kann es ausführen.
644 Ich kann es ändern, alle anderen können es lesen.
444 Nur für alle, wir sind hier durch.
500 Ich kann es ausführen, möchte nicht, dass es sich ändert, alle anderen Hände weg.
Für mich ist es kurz, auf den Punkt. 9 Zeichen und eine Dateispezifikation und weiter.
quelle
Ich habe die oktale Darstellung nie wirklich genossen, ich habe mich immer für die direkte
rwxr-xr-x
Notation entschieden, da sie mir einfacher erscheint. Nach dem, was ich sammle, gibt es jedoch eine oktale Darstellung, die es uns tatsächlich leichter macht, uns zu erinnern (ich verstehe nicht, wie das funktioniert).Der einzige andere mögliche Vorteil, den ich beim Einbringen von Octal sehe, ist die fehlende Mehrdeutigkeit. Die 8 verschiedenen Berechtigungsbitkonfigurationen werden durch eine einzelne eindeutige Nummer dargestellt. Ich bin mir sicher, dass dies manchen Menschen dabei hilft, versehentlich eine Stelle
w
anzugeben, die sie nicht haben sollten.Leider habe ich diese Tabelle auswendig gelernt:
quelle
/tmp
, einschließlich der Sticky - Bit) hat 12 Bits, eine bequeme Größe auf PDPs, vor allem der PDP-8. Wenn sie mit hex gegangen wären, hätte eine natürliche Zuordnung eines Berechtigungssatzes pro hexadezimaler Ziffer eine 16-Bit + -Wortmaschine erfordert, die nicht alle PDPs waren. Es hätte auch 3 Bits verschwendet oder verlangt, dass sie eine Verwendung für diese Bits erfinden, was wahrscheinlich Unix-Dauerwellen ohne wirklichen Nutzen kompliziert hätte.Ich denke der Grund ist wieder - Geschichte. Anfangs waren die Oktalwerte die einzigen. Die symbolischen kamen später.
Ich bevorzuge die symbolischen. Vor allem, wenn Sie vorhandene Werte ändern möchten, ohne andere Bereiche zu berühren.
So
chmod -R u=rwx,g-w+X,o=-
machen Sie das im Oktal ...quelle
Beachten Sie, dass Oktalmodi auf einigen Systemen Setuid- und Setgid-Bits entfernen können.
Fedora 16:
(das
2
ist erhalten)FreeBSD 9:
(Das
2
wurde ein0
)Wenn Sie die Berechtigungen einer Datei oder eines Verzeichnisses ändern möchten, ist es möglicherweise besser, nur die Bits anzugeben, die Sie ändern möchten (z. B.
chmod o= dir
oderchmod o-rwx dir
im obigen Beispiel).quelle
Die Geschichte erklärt, warum die oktalen Modi existieren , aber ich denke, Funktionalität ist der Grund, warum die mnemonische Form existiert. Und alle Punkte zu anderen Tools, die ausschließlich Oktal-Modi verwenden, sind absolut gültig, und ich denke, Sie müssen sie lernen und kennen. Trotzdem sehe ich, dass konservative Admins nicht den wahren Nutzen sehen, der von der mnemonischen Form herrührt.
Die oktale Form neigt, besonders wenn sie rekursiv verwendet wird, dazu, Administratoren dazu zu zwingen, dumme Dinge zu tun. Oder eher Nachlässigkeit führt dazu, dass es sich als dumm herausstellt. Immer wenn Sie auf einen Ordner mit vielen Textdateien und dem
x
gesetzten Bit stoßen, haben Sie Beweise.Warum sollte jemand das
x
Bit so einstellen ? Weil es schwierig ist, dies nicht zu tun, wenn Sie nicht die Gedächtnisform für Modi verwenden. Stellen Sie sich vor, Sie möchten die Berechtigungen für zurücksetzen/var/www
und führen kein CGI im alten Stil aus. Daher sollte dasx
Bit entfernt werden. Beix
Verzeichnissen dient das Bit jedoch einem anderen Zweck. Am Ende machst du also etwas (wieroot
):Wenn Sie jedoch die Gedächtnisform verwenden, können Sie ihr ein "Rezept" geben:
Was ist die Kurzform von
chmod -R ugo=rwX /var/www
(Erreichen des gleichen, aber unterschiedlichen Weges:)chmod -R a-x,a+rwX /var/www
.Aber es gibt noch etwas Trivialeres, das mit den Oktalmodi nicht erreicht werden kann. Sie können die
user
odergroup
oderother
Maske nicht einzeln mit der Oktalform anpassen .Kurz gesagt: Es ist wie beim Vergleichen eines Skalpells (Mnemonik) und eines scharfen Küchenmessers (Oktal) ... aber Sie müssen die Oktalmodus-Bits aus anderen Gründen noch kennen :)
Der Grund, warum oktale Modi immer noch bevorzugt werden , liegt meiner Meinung nach nicht mehr in der mnemonischen Form, sondern in übermäßig konservativen Admins. Und ja, diese übermäßig konservativen Admins existieren immer noch und werden für einige Zeit hier bleiben.
quelle
Wenn Sie die Berechtigungen von Dateien ständig ändern müssen , schätzen Sie die 3 Zeichen. Die meiste Zeit benutze ich die
+
oder-
-Versionen, um Berechtigungen zu ändern.Zum Beispiel erstelle ich ein neues PHP-, Python- oder anderes Skript in meinem Apache-Ordner.
chmod a+x
ist alles was ich tue damit es laufen kann. Ich habe es als "all plus execute" gelesen. Jetzt weiß ich, dass es funktionieren wird und ich brauchte nur 3 Charaktere.Andere Male benutze ich 644 und 755 automatisch. Ich stelle es mir einfach als
644
eine Datei vor, als755
ein Skript.quelle
Es passt gut zu den umask-Einstellungen, die normalerweise in oktaler Schrift (in
pam
oderfstab
) angegeben werden.quelle
Ich schlage vor, dass ein wichtiger Grund darin besteht, dass die Oktaldarstellung genau mit dem übereinstimmt, was Sie sehen
ls -l
(oder eher, wenn Sie mental zwischen Oktal und Binär konvertieren).quelle