ich habe folgendes Problem:
Ich habe einen esx4 am laufen.
Ich möchte folgendes per Shellskript realisieren:
- mittels SSH-Pipe ein TAR-ARchive an den ESX senden und dort entpacken; zusätzlich mit
Code: Alles auswählen
su - -c "Command ; Command"
- User auf ESX mit SSH Zugirffsrechten ist bereits erstellt. SSH-Login funktioniert.
Mein Problem in meinem Skript ist folgendes:
Ich versende das TAR-Archive mittels:
Code: Alles auswählen
tar -cf - /home/test/file1 /home/test/file2 | ssh -t user@ip "tar -xpvf - -C ~"
Das Archiv wird an den esx gesendet und im aktuellen Benutzerverzeichniss des ESX entpackt.
Wenn ich nach dem entpacken auf dem ESX mit
Code: Alles auswählen
su - -c
Code: Alles auswählen
tar -cf - /home/test/file1 /home/test/file2 | ssh -t user@ip "tar -xpvf - -C ~; su -c "groupadd testgroup ; useradd -g testgroup -d /home/test -m test; mkdir /home/test/test11""
Im oben erwähnten Befehl bekomme ich nun folgendes Problem:
Ich beginne den Befehl in der SSH Pipe mit Anführungszeichen um das übergebene Archiv zu entpacken. Wenn ich nun in der Pipe nach su - -c wieder Anführungszeichen schreibe beende ich meine SSH-Pipe und die folgenden Befehle werden nicht gesendet.
Gibt es eine Möglichkeit dem Befehl su - -c die Befehle mitzugeben ohne Anführungszeichen zu verwenden?[/code]