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.
Problembehebung AWS CloudShell
Bei der Verwendung AWS CloudShell können Probleme auftreten, z. B. wenn Sie wichtige Aufgaben über die Shell-Befehlszeilenschnittstelle starten CloudShell oder ausführen. In diesem Kapitel wird beschrieben, wie Sie einige der häufigsten Probleme beheben können, auf die Sie möglicherweise stoßen.
Antworten auf eine Vielzahl von Fragen zu CloudShell finden Sie im AWS CloudShell FAQs
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.
Themen
- Fehler: „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
- Fehler: „Die Umgebung konnte nicht gestartet werden. Sie haben keine erforderlichen Berechtigungen. Bitten Sie Ihren IAM Administrator, Zugriff auf AWS CloudShell“ zu gewähren
- Zugriff auf die AWS CloudShell Befehlszeile nicht möglich
- Externe IP-Adressen konnten nicht gepingt werden
- Bei der Vorbereitung Ihres Terminals sind einige Probleme aufgetreten
- Die Pfeiltasten funktionieren nicht richtig in PowerShell
- Nicht unterstützte Web Sockets führen dazu, dass Sitzungen nicht gestartet CloudShell werden können
- Das AWSPowerShell.NetCore Modul konnte nicht importiert werden
- Docker läuft nicht bei der Verwendung AWS CloudShell
- Docker hat keinen Speicherplatz mehr
- docker pushhat eine Zeitüberschreitung und versucht es immer wieder
- In VPC meiner AWS CloudShell VPC Umgebung kann nicht auf Ressourcen zugegriffen werden
- Die von AWS CloudShell für meine VPC Umgebung ENI verwendete Datei wurde nicht bereinigt
- Benutzer, die nur für VPC Umgebungen CreateEnvironment berechtigt sind, haben auch Zugriff auf öffentliche AWS CloudShell Umgebungen
- Anmeldeinformationen funktionieren nicht in CloudShell
- Kein Zugriff auf Amazon Q-Inline-Vorschläge in AWS CloudShell
- Zugriff auf Amazon CLI Q-Funktionen nicht möglich in AWS CloudShell
Fehler: „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
Problem: Wenn Sie versuchen, AWS CloudShell von der aus zu starten AWS Management Console, wird Ihnen der Zugriff verweigert, auch wenn Sie die Berechtigungen Ihres IAM Administrators benötigen und Ihren Browser aktualisiert oder neu gestartet haben. CloudShell
Lösung: Wenden Sie sich an den AWS Support
Fehler: „Die Umgebung konnte nicht gestartet werden. Sie haben keine erforderlichen Berechtigungen. Bitten Sie Ihren IAM Administrator, Zugriff auf AWS CloudShell“ zu gewähren
Problem: Wenn Sie versuchen, AWS CloudShell von der aus zu starten AWS Management Console, wird Ihnen 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 kann er entweder eine angehängte AWS verwaltete Richtlinie (AWSCloudShellFullAccess) oder eine eingebettete Inline-Richtlinie hinzufügen. Weitere Informationen finden Sie unter AWS CloudShell Zugriff und Nutzung mithilfe von Richtlinien verwalten IAM.
Zugriff auf die AWS CloudShell Befehlszeile nicht möglich
Problem: Nachdem Sie eine Datei geändert haben, die von der Rechenumgebung 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.
Externe IP-Adressen konnten nicht gepingt 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 Echoanforderungspakete an einen Zielhost zu senden. Es wartet auf die Antwort eines Echos vom Ziel. Da das ICMP Protokoll in nicht aktiviert ist AWS CloudShell, funktioniert das Ping-Hilfsprogramm nicht in der Rechenumgebung der Shell.
Lösung: Da dies in nicht unterstützt ICMP wird AWS CloudShell, können Sie den folgenden Befehl ausführen, um Netcat zu installieren. Netcat ist ein Netzwerkdienstprogramm für Computer, mit dem Sie mithilfe TCP von oder aus Netzwerkverbindungen lesen und in diese schreiben können. UDP
sudo yum install nc nc -zv www.amazon.com 443
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
Die Pfeiltasten funktionieren nicht richtig in PowerShell
Problem: Im Normalbetrieb können Sie mit den Pfeiltasten in der Befehlszeilenschnittstelle navigieren und Ihren Befehlsverlauf vor- und zurückscannen. Wenn Sie jedoch in bestimmten Versionen von PowerShell on die Pfeiltasten drücken AWS CloudShell, werden Buchstaben möglicherweise falsch ausgegeben.
Ursache: Die Situation, dass 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
-
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 angemeldet sind PowerShell, können Sie die Profildatei auch mit dem folgenden Befehl im Editor öffnen.
vim $PROFILE
-
Gehen Sie im Editor zum Ende des vorhandenen Texts der Datei, drücken Sie i, um in den Einfügemodus zu wechseln, und fügen Sie dann die folgende Anweisung hinzu.
$PSStyle.OutputRendering = 'PlainText'
-
Nachdem Sie die Bearbeitung vorgenommen haben, drücken Sie, Esc um in den Befehlsmodus zu wechseln. Geben Sie anschließend 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.
Nicht unterstützte Web Sockets führen dazu, dass Sitzungen nicht gestartet CloudShell werden können
Problem: Beim AWS CloudShell Startversuch 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 wechselseitige 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 erleichtert. WebSocket Die Kommunikation kann normalerweise 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 Verbindungsversuch läuft irgendwann ab.
Lösung: Ein Verbindungstimeout kann durch ein anderes als nicht WebSockets unterstütztes Problem verursacht werden. Wenn dies der Fall ist, aktualisieren Sie zunächst das Browserfenster, in dem sich die CloudShell Befehlszeilenschnittstelle befindet.
Wenn Sie nach der Aktualisierung immer noch Timeout-Fehler erhalten, 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 spezifische Genehmigungen auflisten. URLs Sie können einen Teil hinzufügenURL, den die AWS Systems Manager Sitzung verwendet, um eine WebSocket Verbindung zum Senden von Eingaben und Empfangen von Ausgaben herzustellen. Ihre AWS CloudShell Befehle werden an diese Systems Manager 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. Dies us-east-2
ist beispielsweise die Regionskennung für die Region USA Ost (Ohio).
Da die Sitzungs-ID erstellt wird, nachdem eine bestimmte Systems Manager 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 Referenz zu StartSessiondiesem Vorgang.AWS Systems Manager API
Das AWSPowerShell.NetCore
Modul konnte nicht importiert werden
Problem: Wenn Sie das importieren AWSPowerShell. NetCoreIm Modul PowerShell von Import-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 wurde 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 .Tools-Modul für jeden Dienst AWS geändert werden.
-
In den meisten Fällen benötigen Sie keine explizite Importanweisung, solange keine.NET-Typen verwendet werden. Im Folgenden finden Sie Beispiele für Import-Anweisungen.
-
Get-S3Bucket
-
(Get-EC2Instance).Instances
-
-
Wenn .Net-Typen verwendet werden, importieren Sie das Service-Level-Modul (
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
Docker läuft nicht bei der Verwendung AWS CloudShell
Problem: Docker läuft bei der 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, die Docker nicht unterstützt. 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 durch große Einzelbilder oder durch zu viele bereits vorhandene Docker-Images verursacht werden.
Lösung: Führen Sie df -h
den Befehl aus, um die Festplattennutzung zu ermitteln. Führen Sie den 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 Docker-Dokumentationsleitfaden.
docker push
hat eine Zeitüberschreitung und versucht es immer wieder
Problem: Bei der Ausführung kommt docker push
es zu einem Timeout und es wird weiterhin erfolglos wiederholt.
Ursache: Dies kann auf fehlende Berechtigungen, das Verschieben in das falsche Repository oder auf eine fehlende Authentifizierung zurückzuführen sein.
Lösung: Um dieses Problem zu lösen, stellen Sie sicher, dass Sie zum richtigen Repository pushen. Führen Sie docker
login
die Datei aus, um sich ordnungsgemäß zu authentifizieren. Stellen Sie sicher, dass Sie über alle erforderlichen Berechtigungen für das Pushen in ein ECR Amazon-Repository verfügen.
In VPC meiner AWS CloudShell VPC Umgebung kann nicht auf Ressourcen zugegriffen werden
Problem: VPC Während der Nutzung meiner AWS CloudShell VPC Umgebung kann nicht auf Ressourcen zugegriffen werden.
Ursache: Ihre AWS CloudShell VPC Umgebung erbt die Netzwerkeinstellungen IhrerVPC.
Lösung: Um dieses Problem zu beheben, stellen Sie sicher, dass Ihr VPC System korrekt für den Zugriff auf Ihre Ressourcen eingerichtet ist. Weitere Informationen finden Sie in der VPC Dokumentation Connect Sie VPC sich 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 `ip -a` in Ihrer Umgebung in der Befehlszeile oder auf der VPC Konsolenseite ausführen.
Die von AWS CloudShell für meine VPC Umgebung ENI verwendete Datei wurde nicht bereinigt
Problem: Die Datei, die von AWS CloudShell für meine VPC Umgebung ENI verwendet wird, konnte 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 mit eingeschränkten RechtenCreateEnvironment
, die nur für VPC Umgebungen zugelassen 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 vorhandene öffentliche CloudShell Umgebung, bis diese Umgebung über die Webbenutzeroberfläche gelöscht wird. Wenn Sie diese 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 Webbenutzeroberfläche manuell löschen. (Aktionen → CloudShell Umgebung löschen).
Anmeldeinformationen funktionieren nicht in CloudShell
Problem: Wenn Sie versuchen, einen AWS CLI
Anruf von zu tätigen CloudShell, erhalten Sie die Fehlermeldung Internal Server Error
.
Ursache: Im Folgenden sind die möglichen Ursachen für dieses Problem aufgeführt:
-
Der
putCredentials
API Aufruf, CloudShell mit dem die Anmeldeinformationen aktualisiert werden, ist fehlgeschlagen. Der API Aufruf kann aufgrund fehlender IAMputCredentials
Aktionsberechtigungen fehlschlagen. Weitere Informationen finden Sie unter Berechtigungen für den Zugriff AWS-Services. Wenn Sie bereits über IAMputCredentials
Aktionsberechtigungen verfügen, kann der API Anruf aufgrund von Netzwerkproblemen oder Betriebsproblemen mit fehlschlagen CloudShell. -
Ihre Anmeldeinformationen sind nicht mehr gültig, da die AWS Konsolensitzung abgelaufen ist, Ihre CloudShell Umgebung aber noch läuft. Wenn Ihre Anmeldeinformationen nicht mehr gültig sind, CloudShell können keine API Anrufe getätigt werden.
Lösung: Versuchen Sie, die Webseite zu aktualisieren, wenn Sie bereits über die erforderlichen IAM Berechtigungen für putCredentials
Aktionen verfügen. Wenn das Problem nicht behoben ist und der Fehler weiterhin angezeigt wird, wenden Sie sich an den AWS Support
Kein Zugriff auf Amazon Q-Inline-Vorschläge in AWS CloudShell
Problem: Nachdem Sie zur Z-Shell gewechselt sind, werden die Inline-Vorschläge nicht im CloudShell Terminal angezeigt.
Ursache: Wenn Sie Ihre bestehende CloudShell Umgebung verwenden, enthalten Ihre Dotfiles möglicherweise nicht die erforderliche Konfiguration für Amazon Q-Inline-Vorschläge.
Lösung: Gehen Sie wie folgt vor, um dieses Problem zu beheben:
-
Führen Sie
q integrations install dotfiles
. -
Öffnen Sie eine neue CloudShell Registerkarte.
-
Wechseln Sie zur Z-Shell, indem Sie eingeben
zsh
, und drücken Sie dann die EINGABETASTE.
Zugriff auf Amazon CLI Q-Funktionen nicht möglich in AWS CloudShell
Problem: Wenn Sie versuchen CloudShell, Amazon CLI Q-Funktionen wie Inline-Vorschläge, Chat und Übersetzung zu verwenden, wird Folgendes angezeigt AccessDeniedError
:
Ursache: Sie verfügen nicht über die erforderlichen IAM Berechtigungen.
Lösung: Bitten Sie Ihren Administrator, Ihnen die erforderlichen IAM Berechtigungen zu erteilen. Weitere Informationen finden Sie unter Beispiele für identitätsbasierte Richtlinien für Amazon Q Developer im Amazon Q Developer User Guide.