Besitzen Sie keine Sudo-Berechtigungen in Juju-Knoten, wenn Sie Landscape verwenden.

Besitzen Sie keine Sudo-Berechtigungen in Juju-Knoten, wenn Sie Landscape verwenden.

Ich arbeite an einem benutzerdefinierten Charm, den ich in meinem Landscape-Setup bereitstellen möchte. Ich habe eine funktionsfähige Cloud über MAAS und OpenStack-Install eingerichtet und ausgeführt (kann Instanzen starten usw.). Um Zugriff auf das von Landscape verwendete Juju-Setup zu erhalten, habe ich auf meinem MAAS-Knoten Folgendes getan:

*export JUJU_HOME=~/.cloud-install/juju

Juju-Status

juju ssh Landschaftsserver/0 sudo 'JUJU_HOME=/var/lib/Landschaft/juju-homes/sudo ls -rt /var/lib/Landschaft/juju-homes/ | tail -1 sudo -u Landschaft -E bash'

Juju-Status*

(GemäßWie kann ich sehen, welche OpenStack-Dienste auf welchen Servern bereitgestellt wurden, nachdem OpenStack Autopilot erfolgreich abgeschlossen wurde?)

Jetzt kann ich mich per SSH mit dem Landschaftsknoten verbinden. Sobald ich mich per SSH verbunden habe, möchte ich jedoch per SCP die Dateien für meinen benutzerdefinierten Charm übertragen, damit ich sie lokal bereitstellen kann, aber ich erhalte die Fehlermeldung „Zugriff verweigert“.

Ich kann als normaler Benutzer nicht einmal ein neues Verzeichnis erstellen. landscape@juju-machine-0-lxc-1:~$ mkdir ola mkdir: Verzeichnis „ola“ kann nicht erstellt werden: Berechtigung verweigert

Beim Ausführen von Sudo wird das Landscape-Passwort abgefragt, das ich nicht habe. Wie kann ich das umgehen?

Antwort1

Sie können per Juju-SSH ohne die lange Sudo-Zeile auf den Landscape-Server/0 zugreifen. Dadurch gelangen Sie als „Ubuntu“ auf diesen Knoten, der ohne Kennwort einen Sudo-Zugriff auf jeden anderen Benutzer ausführen kann, einschließlich Landscape.

Legen Sie die Dateien an der gewünschten Stelle im Landscape-Server/0 ab, stellen Sie sicher, dass der Landscape-Benutzer darauf zugreifen kann, werden Sie dann zum Landscape-Benutzer und legen Sie JUJU_HOME fest. Anschließend können Sie sie per Juju-Scp in jeden beliebigen Knoten in der inneren Cloud-Umgebung übertragen.

Der Landscape-Benutzer verfügt standardmäßig nicht über eine Shell. Deshalb führt die lange Sudo-Zeile, die Sie gefunden haben, am Ende den Bash-Befehl aus.

Antwort2

Wenn Sie Zaubertricks verwenden, habe ich Folgendes verwendet:

$:juju ssh landscape-server/0 sudo 'JUJU_DATA=/var/lib/landscape/juju-homes/`sudo ls -rt /var/lib/landscape/juju-homes/ | tail -1` sudo -u root -E bash'

Wechseln Sie dann zum nicht standardmäßigen Controller mit, hier heißt er Controller:

$: juju switch controller
$: juju status

verwandte Informationen