View a markdown version of this page

Fehlerbehebung AWS CloudShell - AWS CloudShell

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Fehlerbehebung AWS CloudShell

Während der Verwendung AWS CloudShell können Probleme auftreten, z. B. wenn Sie wichtige Aufgaben über die Shell-Befehlszeilenschnittstelle starten CloudShell oder ausführen. Die Informationen in diesem Kapitel beschreiben, wie Sie einige der häufigsten Probleme beheben können, auf die Sie möglicherweise stoßen.

Antworten auf eine Vielzahl von Fragen CloudShell zu finden Sie in den AWS CloudShell häufig gestellten Fragen. Sie können auch im AWS CloudShell Diskussionsforum nach Antworten suchen und Fragen stellen. Wenn Sie dieses Forum betreten, müssen Sie sich möglicherweise anmelden AWS. Sie können uns auch direkt kontaktieren.

Behebung von Fehlern

Wenn Sie auf einen der folgenden indizierten Fehler stoßen, können Sie die folgenden Lösungen verwenden, um diese Fehler zu beheben.

Zugriff verweigert

Problem: Wenn Sie versuchen, CloudShell von der aus zu starten AWS-Managementkonsole, erhalten Sie die Meldung "Die Umgebung konnte nicht gestartet werden. Um es erneut zu versuchen, aktualisieren Sie den Browser oder starten Sie ihn neu, indem Sie „Aktionen, Neustart AWS CloudShell“ wählen. Ihnen wird der Zugriff verweigert, auch wenn Sie die Berechtigungen Ihres IAM-Administrators benötigt und Ihren Browser aktualisiert oder neu gestartet haben. CloudShell

Lösung: Wenden Sie sich an den Support. AWS

(zurück zum Seitenanfang)

Unzureichende Berechtigungen

Problem: Wenn Sie versuchen, CloudShell von der aus zu starten AWS-Managementkonsole, erhalten Sie die Meldung „Die Umgebung konnte nicht gestartet werden. Sie haben keine erforderlichen Berechtigungen. Bitten Sie Ihren IAM-Administrator, Zugriff auf AWS CloudShell"zu gewähren. Ihnen wurde der Zugriff verweigert und Sie werden darüber informiert, dass Sie nicht über die erforderlichen Berechtigungen verfügen.

Ursache: Der IAM-Identität, die Sie für den Zugriff verwenden, AWS CloudShell fehlen die erforderlichen IAM-Berechtigungen.

Lösung: Bitten Sie Ihren IAM-Administrator, Ihnen die erforderlichen Berechtigungen zu erteilen. Dazu können sie entweder eine angehängte AWS verwaltete Richtlinie (AWSCloudShellFullAccess) oder eine eingebettete Inline-Richtlinie hinzufügen. Weitere Informationen finden Sie unter Verwalten AWS CloudShell Zugriff und Nutzung mit IAM-Richtlinien.

(zurück zum Seitenanfang)

Die Shell-Sitzung beginnt im Wiederherstellungsmodus

Problem: Wenn Sie starten AWS CloudShell, wird eine Meldung angezeigt, die darauf hinweist, dass Ihre Shell-Sitzung nicht initialisiert AWS CloudShell werden konnte und im Wiederherstellungsmodus ausgeführt wird.

Ursache: Bash wurde mit einem Fehler beim Start beendet, normalerweise aufgrund eines Problems in Ihren Shell-Konfigurationsdateien (wie .bashrc.bash_profile, oder). .profile

Lösung: Stellen Sie im Wiederherstellungsmodus Ihre Standardeinstellung wieder her, ~/.bashrc indem Sie Folgendes ausführen:

mv ~/.bashrc ~/.bashrc.bak && cp /etc/skel/.bashrc ~/.bashrc

Wenn das Problem besteht ~/.bash_profile oder~/.profile, sichern Sie die problematische Datei:

mv ~/.bash_profile ~/.bash_profile.bak mv ~/.profile ~/.profile.bak

Starten Sie dann neu AWS CloudShell. Überprüfen Sie Ihre gesicherten Dateien, um das Problem zu finden und zu beheben, und stellen Sie sie dann wieder her.

(zurück zum Seitenanfang)

Zugriff nicht möglich AWS CloudShell Befehlszeile

Problem: Nachdem Sie eine Datei geändert haben, die von der Computerumgebung verwendet wird, können Sie nicht auf die Befehlszeile in zugreifen AWS CloudShell.

Lösung: Wenn Sie nach einer falschen Änderung .bashrc oder einer anderen Datei den Zugriff verlieren, können Sie AWS CloudShell zu den Standardeinstellungen zurückkehren, indem Sie Ihr Home-Verzeichnis löschen.

(zurück zum Seitenanfang)

Es konnte keine Verbindung zur Umgebung hergestellt werden

Problem: Es wird der Fehler „Es konnte keine Verbindung zur Umgebung hergestellt werden“ angezeigt. Möglicherweise laufen zu viele Shell-Sitzungen.“

Ursache: Dieser Fehler tritt auf, wenn zu viele AWS CloudShell Tabs geöffnet sind oder wenn ein Verbindungsproblem vorliegt.

Lösung: Schließen Sie alle zusätzlichen AWS CloudShell Tabs und versuchen Sie es erneut.

(zurück zum Seitenanfang)

Externe IP-Adressen können nicht angepingt werden

Problem: Wenn Sie einen Ping-Befehl von der Befehlszeile aus ausführen (z. B.ping amazon.com), erhalten Sie die folgende Meldung.

ping: socket: Operation not permitted

Ursache: Das Ping-Hilfsprogramm verwendet das Internet Control Message Protocol (ICMP), um Pakete mit Echoanforderungen an einen Zielhost zu senden. Es wartet darauf, dass ein Echo vom Ziel antwortet. Da das ICMP-Protokoll in nicht aktiviert ist AWS CloudShell, funktioniert das Ping-Hilfsprogramm nicht in der Rechenumgebung der Shell.

Lösung: Da ICMP in nicht unterstützt wird, können Sie den folgenden Befehl ausführen AWS CloudShell, um Netcat zu installieren. Netcat ist ein Computernetzwerkprogramm zum Lesen und Schreiben von Netzwerkverbindungen mithilfe von TCP oder UDP.

sudo yum install nc nc -zv www.amazon.com 443

(zurück zum Seitenanfang)

Bei der Vorbereitung Ihres Terminals sind einige Probleme aufgetreten

Problem: Wenn Sie versuchen, AWS CloudShell mit dem Microsoft Edge-Browser darauf zuzugreifen, können Sie keine Shell-Sitzung starten und der Browser zeigt eine Fehlermeldung an.

Ursache: AWS CloudShell ist nicht mit früheren Versionen von Microsoft Edge kompatibel. Sie können AWS CloudShell mit den neuesten vier Hauptversionen der unterstützten Browser darauf zugreifen.

Lösung: Installieren Sie eine aktualisierte Version des Edge-Browsers von der Microsoft-Website.

(zurück zum Seitenanfang)

Die Pfeiltasten funktionieren nicht richtig in PowerShell

Problem: Im Normalbetrieb können Sie die Pfeiltasten verwenden, um in der Befehlszeilenschnittstelle zu navigieren und Ihren Befehlsverlauf vor- und zurückzuscannen. Wenn Sie jedoch in bestimmten Versionen von PowerShell On die Pfeiltasten drücken AWS CloudShell, werden Buchstaben möglicherweise falsch ausgegeben.

Ursache: Die Situation, in der Pfeiltasten Buchstaben falsch ausgeben, ist ein bekanntes Problem bei PowerShell 7.2.x-Versionen, die unter Linux ausgeführt werden.

Lösung: Um Escape-Sequenzen zu entfernen, die das Verhalten der Pfeiltasten verändern, bearbeiten Sie die PowerShell Profildatei und setzen Sie die $PSStyle Variable auf. PlainText

  1. Geben Sie in der AWS CloudShell Befehlszeile den folgenden Befehl ein, um die Profildatei zu öffnen.

    vim ~/.config/powershell/Microsoft.PowerShell_profile.ps1
    Anmerkung

    Wenn Sie bereits dabei sind PowerShell, können Sie die Profildatei auch mit dem folgenden Befehl im Editor öffnen.

    vim $PROFILE
  2. Gehen Sie im Editor zum Ende des vorhandenen Textes der Datei, drücken Sie i, um den Einfügemodus aufzurufen, und fügen Sie dann die folgende Anweisung hinzu.

    $PSStyle.OutputRendering = 'PlainText'
  3. Nachdem Sie die Bearbeitung vorgenommen haben, drücken Sie, Esc um den Befehlsmodus aufzurufen. Geben Sie als Nächstes den folgenden Befehl ein, um die Datei zu speichern und den Editor zu beenden.

    :wq
Anmerkung

Ihre Änderungen werden wirksam, wenn Sie das nächste Mal beginnen PowerShell.

(zurück zum Seitenanfang)

Nicht unterstützte Web Sockets führen dazu, dass Sitzungen nicht gestartet werden CloudShell

Problem: Wenn Sie versuchen zu starten AWS CloudShell, erhalten Sie wiederholt die folgende Meldung:Failed to open sessions : Timed out while opening the session.

Ursache: CloudShell hängt vom WebSocket Protokoll ab, das eine bidirektionale interaktive Kommunikation zwischen Ihrem Webbrowser und AWS CloudShell ermöglicht. Wenn Sie einen Browser in einem privaten Netzwerk verwenden, wird der sichere Zugriff auf das Internet wahrscheinlich durch Proxyserver und Firewalls ermöglicht. WebSocket Die Kommunikation kann in der Regel problemlos über Proxyserver erfolgen. In einigen Fällen verhindern WebSockets Proxyserver jedoch, dass sie ordnungsgemäß funktionieren. Wenn dieses Problem auftritt, CloudShell kann keine Shell-Sitzung gestartet werden und der Versuch, eine Verbindung herzustellen, kommt es irgendwann zu einem Timeout.

Lösung: Ein Verbindungstimeout kann durch ein anderes als das nicht WebSockets unterstützte Problem verursacht werden. Wenn dies der Fall ist, aktualisieren Sie zuerst das Browserfenster, in dem sich die CloudShell Befehlszeilenschnittstelle befindet.

Wenn nach der Aktualisierung immer noch Timeout-Fehler auftreten, lesen Sie in der Dokumentation Ihres Proxyservers nach. Stellen Sie außerdem sicher, dass Ihr Proxyserver so konfiguriert ist, dass er Web Sockets zulässt. Wenden Sie sich alternativ an den Systemadministrator Ihres Netzwerks.

Anmerkung

Angenommen, Sie möchten detaillierte Berechtigungen definieren, indem Sie bestimmte URLs zulassen. Sie können einen Teil der URL hinzufügen, die die AWS Systems Manager Sitzung verwendet, um eine WebSocket Verbindung zum Senden von Eingaben und Empfangen von Ausgaben zu öffnen. Ihre AWS CloudShell Befehle werden an diese Systems Manager-Sitzung gesendet.

Das Format dafür StreamUrl , das von Systems Manager verwendet wird, ist wss://ssmmessages.region.amazonaws.com/v1/data-channel/session-id?stream=(input|output).

Die Region stellt die Regionskennung für eine dar AWS-Region , die von unterstützt wird AWS Systems Manager. us-east-2ist beispielsweise der Region-Identifier für die Region USA Ost (Ohio).

Da die Sitzungs-ID erstellt wird, nachdem eine bestimmte Systems Manager-Sitzung erfolgreich gestartet wurde, können Sie sie nur angeben, wss://ssmmessages.region.amazonaws.com wenn Sie Ihre URL-Zulassungsliste aktualisieren. Weitere Informationen finden Sie in der StartSession API-Referenz zum Vorgang. AWS Systems Manager

(zurück zum Seitenanfang)

Das AWSPowerShell.NetCore Modul kann nicht importiert werden

Problem: Wenn Sie das AWSPowerShell.NetCore Modul in PowerShell by importierenImport-Module -Name AWSPowerShell.NetCore, erhalten Sie die folgende Fehlermeldung:

Import-Module: Das angegebene Modul 'AWSPowerShell.NetCore' wurde nicht geladen, da in keinem Modulverzeichnis eine gültige Moduldatei gefunden wurde.

Ursache: Das AWSPowerShell.NetCore Modul wird durch die dienstspezifischen AWS.Tools-Module in ersetzt. AWS CloudShell

Lösung: Alle expliziten Importanweisungen sind möglicherweise nicht mehr erforderlich oder müssen in das zugehörige dienstspezifische AWS.Tools-Modul geändert werden.

Beispiel
Beispiel
  • In den meisten Fällen benötigen Sie keine explizite Importanweisung, solange keine .Net-Typen verwendet werden. Im Folgenden finden Sie Beispiele für Importanweisungen.

    • Get-S3Bucket

    • (Get-EC2Instance).Instances

  • Wenn .Net-Typen verwendet werden, importieren Sie das Modul auf Dienstebene (AWS.Tools.<Service>). Es folgt ein Beispiel für die Syntax.

    Import-Module -Name AWS.Tools.EC2 $InstanceTag = [Amazon.EC2.Model.Tag]::new("Environment","Dev")
    Import-Module -Name AWS.Tools.S3 $LifecycleRule = [Amazon.S3.Model.LifecycleRule]::new()

Weitere Informationen finden Sie in der Ankündigung von Version 4 für. AWS -Tools für PowerShell

(zurück zum Seitenanfang)

Docker läuft nicht, wenn AWS CloudShell

Problem: Docker läuft bei Verwendung nicht richtig. AWS CloudShell Sie erhalten die folgende Fehlermeldung:docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?.

Lösung: Versuchen Sie, Ihre Umgebung neu zu starten. Diese Fehlermeldung kann auftreten, wenn Sie Docker AWS CloudShell in einer GovCloud Region ausführen. Stellen Sie sicher, dass Sie Docker in den unterstützten AWS Regionen ausführen. Eine Liste der Regionen, in denen Docker verfügbar ist, finden Sie unter Unterstützte AWS Regionen für. AWS CloudShell

Docker hat keinen Speicherplatz mehr

Problem: Sie erhalten die folgende Fehlermeldung:ERROR: failed to solve: failed to register layer: write [...]: no space left on device.

Ursache: Das Dockerfile überschreitet den verfügbaren Speicherplatz in. AWS CloudShell Dies kann an großen Einzelbildern oder zu vielen bereits vorhandenen Docker-Images liegen.

Lösung: Führen Sie ausdf -h, um die Festplattennutzung zu ermitteln. Führen Sie diesen Befehl aussudo du -sh /folder/folder1, um die Größe bestimmter Ordner zu ermitteln, die Ihrer Meinung nach groß sein könnten, und erwägen Sie, andere Dateien zu löschen, um Speicherplatz freizugeben. Eine Option wäre, in Betracht zu ziehen, ungenutzte Docker-Images durch Ausführen docker rmi zu entfernen. Sie sollten sich bewusst sein, dass Docker nur über begrenzten Speicherplatz in der Umgebung verfügt. Weitere Informationen zu Docker finden Sie im Handbuch zur Docker-Dokumentation.

Docker Push hat eine Zeitüberschreitung und versucht es immer wieder

Problem: Wenn Sie docker push es ausführen, wird das Zeitlimit überschritten und es wird weiterhin ohne Erfolg versucht.

Ursache: Dies kann durch fehlende Berechtigungen, die Übertragung auf das falsche Projektarchiv oder durch eine fehlende Authentifizierung verursacht werden.

Lösung: Um zu versuchen, dieses Problem zu lösen, stellen Sie sicher, dass Sie zum richtigen Repository wechseln. Führen Sie ausdocker login, um sich ordnungsgemäß zu authentifizieren. Stellen Sie sicher, dass Sie über alle erforderlichen Berechtigungen für die Übertragung von Daten in ein Amazon ECR-Repository verfügen.

Von meinem aus kann nicht auf Ressourcen innerhalb der VPC zugegriffen werden AWS CloudShell VPC-Umgebung

Problem: Ich kann nicht auf Ressourcen innerhalb der VPC zugreifen, während ich meine AWS CloudShell VPC-Umgebung verwende.

Ursache: Ihre AWS CloudShell VPC-Umgebung erbt die Netzwerkeinstellungen Ihrer VPC.

Lösung: Um dieses Problem zu beheben, stellen Sie sicher, dass Ihre VPC korrekt für den Zugriff auf Ihre Ressourcen eingerichtet ist. Weitere Informationen finden Sie in der VPC-Dokumentation Verbinden Sie Ihre VPC mit anderen Netzwerken und in der Network Access Analyzer-Dokumentation Network Access Analyzer. Sie finden die IPv4-Adresse, die die AWS CloudShell VPC-Umgebung verwendet, indem Sie den Befehl in Ihrer Umgebung in der Befehlszeile oder auf der `ip -a` VPC-Konsolenseite ausführen.

Das ENI wird verwendet von AWS CloudShell denn meine VPC-Umgebung wird nicht bereinigt

Problem: Die von AWS CloudShell für meine VPC-Umgebung verwendete ENI kann nicht bereinigt werden.

Ursache: Die ec2:DeleteNetworkInterface Berechtigung ist für Ihre Rolle nicht aktiviert.

Lösung: Um dieses Problem zu beheben, stellen Sie sicher, dass die ec2:DeleteNetworkInterface Berechtigung für Ihre Rolle aktiviert ist, wie im folgenden Beispielskript gezeigt:

{ "Effect": "Allow", "Action": [ "ec2:DeleteNetworkInterface" ], "Condition": { "StringEquals": { "aws:ResourceTag/ManagedByCloudShell": "" } }, "Resource": "arn:aws:ec2:*:*:network-interface/*" }

Benutzer, die nur für VPC-Umgebungen CreateEnvironment berechtigt sind, haben auch Zugriff auf öffentliche AWS CloudShell Umgebungen

Problem: Benutzer, die nur für VPC-Umgebungen CreateEnvironment berechtigt sind, können auch auf öffentliche AWS CloudShell Umgebungen zugreifen.

Ursache: Wenn Sie die CreateEnvironment Berechtigungen nur für die Erstellung von VPC-Umgebungen einschränken und bereits eine öffentliche Umgebung erstellt haben, behalten Sie Ihren Zugriff auf die bestehende öffentliche CloudShell Umgebung, bis diese Umgebung mithilfe der Web-Benutzeroberfläche gelöscht wird. Wenn Sie sie jedoch noch nie CloudShell zuvor verwendet haben, haben Sie keinen Zugriff auf öffentliche Umgebungen.

Lösung: Um den Zugriff auf öffentliche AWS CloudShell Umgebungen einzuschränken, muss der IAM-Administrator zuerst die IAM-Richtlinie mit der Einschränkung aktualisieren. Anschließend muss der Benutzer die vorhandene öffentliche Umgebung mithilfe der AWS CloudShell Web-Benutzeroberfläche manuell löschen. (Aktionen → CloudShell Umgebung löschen).