Warum führen wir sudo
als Administrator einen Terminalbefehl aus? Warum ist es nicht admin
oder etwas anderes? Gibt es einen Grund dafür sudo
?
sudo
history-of-ubuntu
Mohammad
quelle
quelle
sudo ls
als „Super - User tunls
“ (und nicht, es ist nicht dumm, Mnemotechnik für das Erinnern Befehle wichtig sind) (und nein, wahrscheinlich bedeutet es " s Hexe u ser und tun , dasu
Mittel Benutzer wechseln Aber ich den ehemaligen schönsten finden. -))sudo
bedeutet (ich) schwitzen . Ich interpretiere es gernesudo X
als schwitzen, weil ich Angst habe, den falschen Befehl zu geben und alle meine Daten zu löschen . Dies ist hilfreich, wenn Sie bedenken, dass Siesudo
Befehle nur dann voranstellen sollten, wenn 1) dies erforderlich ist. 2) Sie wissen, was Sie tun. 3) Sie haben die Befehlszeile sorgfältig geschrieben und gelesen, um Tippfehler zu vermeiden (insbesondere bei schlechten Leerzeichen, die schwer zu vermeiden sind fangen und kann zu wirklich schrecklichen unerwarteten Ergebnissen führen).su
bedeutete ursprünglich " Superuser ", "Ersatzbenutzer" kam später .Antworten:
Aus Wikipedia :
Es ist ein vorübergehender einmaliger Befehl mit Superuser- (Administrator-) Berechtigungen ohne direkte Root-Anmeldung.
quelle
sudo
,su
genau wie BSD und Linux.Vor sudo waren die meisten Administratoren als Root-Benutzer angemeldet, da Sie auf einfache Weise Ihr System konfigurieren können, da Sie alle Rechte besitzen. Ein kleiner Fehler oder eine falsche Internetverbindung und Ihr gesamtes System können jedoch beeinträchtigt oder sogar kompromittiert werden.
Aufgrund dieses Problems sudo angezeigt . Ziel war es, Administratorrechte nur für kurze Zeit und nur bei Bedarf zu nutzen. Außerdem würde dies verhindern, dass sich der Benutzer bei einem anderen Konto anmeldet. Dies würde natürlich die Systemsicherheit erhöhen .
Unter Ubuntu erhöhen sie die Sicherheit Ihres Systems. Daher beschlossen sie, den Sudo-Weg zu beschreiten. Der Root-Benutzer ist deaktiviert. Es besteht keine Notwendigkeit und insbesondere keine Gefahr, dass sich ein Benutzer über die X-Schnittstelle mit dem Root-Benutzer anmeldet. Außerdem haben sie es autorisierten Benutzern ermöglicht, jeden Befehl mit sudo zu starten. Das Coole ist, dass Power-User auf das Root-Konto zugreifen können.
Nachteile von
sudo
:sudo
vor jedem Befehl schreiben , der Administratorrechte erfordertWas
sudo
bedeutet Sein Name ist eine Verkettung von "su" (Ersatzbenutzer) und "do".Warum
sudo
nichtadmin
? Ich denkesudo
bedeutetadmin
für eine bestimmte Zeit und nur dann, wenn Sie es brauchen.Leute, die aus der Windows-Umgebung kommen, sollten verstehen, warum es nicht so ist
admin
:)Referenzen: Site
Picture: xkcd
quelle
su
undsudo
in dieser Hinsicht besteht der einzige Unterschied zwischen den beiden darin, welche Berechtigungsnachweise verwendet werden. Verwenden ist sicherersudo
alssu
nicht (in der Tat ist es etwas weniger sicher); Der Hauptvorteil von sudo (und der Grund, warum Ubuntu es gewählt hat) ist die Einfachheit für den Benutzer (nur ein Kennwort muss gespeichert werden).Von Linux.com, einem Produkt der Linux Foundation:
[Betonung meiner.] Quelle
quelle
Superuser tun
Es gibt einen Befehl, su, um der Superuser zu werden, könnte man sagen
Mit sudo können Sie das auf einen Schlag tun, und Sie müssen nicht daran denken, auf Ihre magischen Kräfte zu verzichten.
quelle
su
("Ersatzbenutzer") ermöglicht es Ihnen, ein beliebiger Benutzer zu werden: Sie können einen Benutzernamen als Argument angeben.Wenn man bedenkt, warum es nicht "admin" ist - oder eher indirekt, warum su nicht "switchUser" oder so -, dann sind traditionelle Unix-Befehle aus historischen Gründen eher minimale Abkürzungen, die mit den Ursprüngen von Unix zu tun haben.
Aus dem grundlegendsten Grund müssen wir auf den gleichen Grund zurückgehen, aus dem er in erster Linie Unix heißt. Ein Großteil von Unix wurde von einem der frühen Multiuser-Multitasking-Betriebssysteme, MIT's Multics, inspiriert. (Unix erhält seinen Namen entweder als "Singular von Multics" oder als "kastrierte Multics", je nachdem, wen Sie fragen und welche Stimmung sie gerade haben.)
Unter den anderen Innovationen von Multics wurde das Konzept eingeführt, den tatsächlichen Dateispeicherort von den Verzeichnisinformationen zu trennen, sodass eine einzelne Datei mehrere Namen haben kann. ("Links", in Unix-Begriffen.) Multics nutzte dies (zu) voll aus; Die meisten Multics-Befehle haben sowohl ALongNameThatIsImpossibleToType als auch ASNTOECR (einen Kurznamen, an den sich nur Experten erinnern können). Die Erfahrung hat gezeigt, dass die langen Namen wirklich nicht sehr benutzerfreundlich waren, da zu dieser Zeit alle Benutzer realistisch gesehen "Experten" waren oder wurden und fast niemand die langen Namen benutzte. Als Unix einen Teil des Designs von Multics übernahm, bestand eine ihrer Vereinfachungen darin, die nicht verwendeten langen Namen zu verwerfen und nur die fachkundigen Kurznamen beizubehalten.
Dies passt auch gut zu der Unix-Philosophie, das Betriebssystem und seinen Kernbefehl auf das Wesentliche zu reduzieren, sodass es auf kleineren Systemen effizient ausgeführt werden kann. Damals haben Programmierer noch jedes Byte und jeden Zyklus erhalten, die möglich waren. Prozessoren waren enorm langsamer, Endgeschwindigkeiten waren ebenfalls enorm langsamer und Speicher war enorm teurer (und langsamer und hatte winzige Caches, wenn überhaupt). Wenn Sie die Systembefehle auf ein Minimum beschränken, haben Sie möglicherweise nicht viel (wenn überhaupt) reale Ressourcen gespart, aber es hat sich für die damalige Denkweise "richtig" angefühlt.
Wenn Sie wirklich auf benutzerfreundlichen Befehlsnamen bestehen, lautet die Unix-Antwort: "Sie wissen, wie man ein Shell-Skript schreibt; implementieren Sie es selbst. Wenn Sie nicht wissen, wie man ein Shell-Skript schreibt, müssen Sie lernen, wie man es macht." Wenn Sie nicht gerne lernen und / oder programmieren, werden Sie mit Unix nicht zufrieden sein und sollten etwas anderes verwenden. "
quelle
Ob " Superuser " das ist, von dem es
su
ursprünglich abgeleitet wurde, ist ungenau, da der von Ihnen angegebene Benutzername kein Superuser sein muss. Das Gleiche gilt für die Ausführung von Befehlen durch einen anderen Benutzersudo -u
." Benutzer ersetzen " ist genauer, klingt aber klobig. Es bringt mich dazu, an einen Ersatzlehrer zu denken.
Daher stelle ich mir
su
einfach "Benutzer wechseln" undsudo
damit "Benutzer wechseln & tun" vor.quelle
Von der Sudo-Website :
"Was ist Sudo?
Mit Sudo (su "do") kann ein Systemadministrator die Berechtigung delegieren, bestimmten Benutzern (oder Benutzergruppen) die Möglichkeit zu geben, einige (oder alle) Befehle als Root-Benutzer oder als anderer Benutzer auszuführen, während ein Prüfpfad für die Befehle und ihre Argumente bereitgestellt wird . "
"Sudo wurde erstmals 1980 von Bob Coggeshall und Cliff Spencer am Department of Computer Science in SUNY / Buffalo konzipiert und implementiert. Es lief auf einer VAX-11/750 mit 4.1BSD. Eine aktualisierte Version, die Phil Betchel, Cliff Spencer, gutgeschrieben wurde Gretchen Phillips, John LoVerso und Don Gworek wurden im Dezember 1985 in der Usenet-Newsgroup net.sources eingestellt. "
Das heißt, obwohl ich nicht glaube, dass es Beweise gibt, habe ich immer fest daran geglaubt, dass der Name eine Art geekiger Programmierwitz war. Sie haben den Befehl "su" (Superuser) "do", sind aber eigentlich kein Superuser - verwandeln Sie das "doo" in ein "doh" und "sudo" sieht / klingt ähnlich wie "pseudo" (fake) , Schein).
quelle
Die meisten Leute haben die Antwort gegeben, dass es ein Mashup von "Super User Do" ist. Ich mag das, aber es mag korrekter sein zu sagen, dass es ein Mashup von "Ersatzbenutzer tun" ist, weil Sie wählen können, welchen Benutzer Sie wie mit dem Flag -u "tun".
Ich betrachte es auch als ein Spiel mit dem Wort psuedonym, weil Sie sich als jemand anderes ausgeben können, entweder als root oder als jeder andere Benutzer, der das Flag -u verwendet.
quelle
root
Zielbenutzer muss nicht sein (obwohl es sinnvoll ist, dass er oder mindestens einer mit der UID 0 ist und dies im Allgemeinen der Fall ist), sieherunas_default
insudoers
.