Was ist der Unterschied zwischen Anmeldung und Nicht-Login-Schale?

Was ist der Unterschied zwischen Anmeldung und Nicht-Login-Schale?

Was ist Shell?

Shell ist ein Befehlsinterpreter oder ein Programm, das Befehle liest und interpretiert, die vom Benutzer ihm herausgegeben werden.
Die Shell führt grundlegende Befehle wie Ausführung von Programmen, Eingabe von Text und Druckausgabe durch. Es ist auch verantwortlich für den Umgang mit Fehlern und anderen Situationen, die Benutzerinterventionen erfordern. Eine Shell kann verwendet werden, um vorhandene Aufgaben zu automatisieren oder neue zu erstellen.

Die Shell bietet eine gemeinsame Schnittstelle zu einer Reihe von Tools im System. Wenn die Shell beispielsweise eine Aktion ausführen muss, die einen Systembefehl erfordert, sucht sie nach dem Befehl und führt sie dann im Namen des Benutzers aus.

Was sind die verschiedenen Arten von Muscheln??

In diesem Beispiel wird eine Nicht-Login-Hülle oder eine Anmeldehülle verwendet, in der die Bash-Shell verwendet wird. Shells führen vorkonfigurierte Skripte aus, um ihre Umgebungen zu etablieren.

Die Shell spielt eine wichtige Rolle in der Linux -Betriebssystemarchitektur. Es empfängt Eingaben von Benutzern und sendet Anweisungen an den Kernel. Es empfängt die Ausgabe vom Kernel und gibt es an den Benutzer zurück.

Eine Shell führt einen vorgegebenen Satz von Skripten aus, um seine Umgebung zu konfigurieren. Die Bash -Schale wird zum Beispiel verwendet.

Was ist eine Anmeldeschale im UNIX/Linux -System??

Wenn sich ein Benutzer erfolgreich über Terminal, SSH oder einen Benutzer mit dem Befehl „su -“ an ein Linux -System anmeldet, wird eine Anmeldeschale erstellt.

Wenn eine Login-Shell startet, führt sie eine Reihe von vorkonfigurierten Skripten aus, um die Umgebung einzurichten. Sie können diesen Befehl auf dem Terminal ausführen, um herauszufinden, welche Shell Sie verwenden.

echo $ 0  

Wenn das Ergebnis "-bash" oder "-su" ist, befinden Sie sich auf der Anmeldeschale. Stellen Sie sicher, dass es einen Bindestrich (-) als Präfix hat.

Die folgenden Skripte werden von der Anmeldeschale ausgeführt:

  1. Login -Shell ruft auf /etc/Profil
  2. /etc/Profil Ruft Skripte in /etc /Profil auf.D/*.Sch
  3. Führt dann Benutzer aus ~/.bash_profile
  4. ~/.bash_profile Nutzung aufruft ~/.bashrc
  5. ~/.bashrc ruft an /etc/bashrc

Was ist eine Nicht-Login-Shell im UNIX/Linux-System??

Eine Nicht-Login-Hülle wird von einer Anmeldeschale gestartet. Zum Beispiel ist eine Shell, die Sie von einer anderen Hülle oder aus einem Programm aus starten.

Eine Shell, die nicht zum Anmelden beim System verwendet wird, führt das folgende Skript aus, um die Shell -Umgebung festzulegen.

  1. Non -Login -Shell führt zuerst aus ~/.bashrc
  2. Dann ~/.bashrc ausgeführt /etc/bashrc
  3. /etc/bashrc Ruft die Skripte in an in /etc/Profil.D

Überprüfen Sie, ob eine Schale eine Login- oder Nicht-Login-Shell ist

Um herauszufinden, ob die aktuelle Shell eine Anmeldeschale oder eine Nicht-Login-Shell ist, führen Sie einfach den folgenden Befehl aus. Sehen Sie die Ergebnisse und finden Sie den Unterschied zwischen ihnen.

echo $ 0  

Login -Shell -Ausgabe wird sein -verprügeln oder -su.

Die Ausgabe von Non -Logins -Shell wird sein verprügeln oder su

Abschluss

Eine Bash-Schale kann entweder eine Anmeldeschale oder eine Nicht-Loginschale sein. Beide Arten von Shells werden mit unterschiedlichen Umgebungseinstellungen aufgerufen. Sie können leicht erkennen, ob eine Schale eine Anmeldeschale oder eine Nicht-Loginschale mit der ist echo $ 0 Befehl.

In einfachen Worten, wenn wir uns mit einem Benutzer bei einem Unix-ähnlichen System anmelden, ist die erste Shell die Anmeldeschale.