diff --git a/modules/pi_control/assets/console.js b/modules/pi_control/assets/console.js
index 17fb75c..a02ef7e 100644
--- a/modules/pi_control/assets/console.js
+++ b/modules/pi_control/assets/console.js
@@ -291,17 +291,11 @@
}
return;
}
- const iframe = getActiveIframe();
- const ok = trySendToIframe(iframe, commandTextarea.value.trim());
- if (!ok) {
- if (consoleNotice) {
- consoleNotice.textContent = 'Aktive Konsole nicht steuerbar – Befehl wird in neuer Konsole ausgeführt.';
- consoleNotice.style.display = 'block';
- }
- submitOpen();
- return;
+ if (consoleNotice) {
+ consoleNotice.textContent = 'Aktive Konsole kann nicht direkt gesteuert werden – Befehl wird in neuer Konsole ausgeführt.';
+ consoleNotice.style.display = 'block';
}
- if (consoleError) consoleError.style.display = 'none';
+ submitOpen();
});
}
}
diff --git a/modules/pi_control/pages/console.php b/modules/pi_control/pages/console.php
index 559e800..5fdf440 100644
--- a/modules/pi_control/pages/console.php
+++ b/modules/pi_control/pages/console.php
@@ -282,7 +282,7 @@ $runs = $pdo->query(
-
+
diff --git a/tools/pi_control/terminal_entry.sh b/tools/pi_control/terminal_entry.sh
index 04481ba..f467970 100644
--- a/tools/pi_control/terminal_entry.sh
+++ b/tools/pi_control/terminal_entry.sh
@@ -57,14 +57,14 @@ if [[ -n "${COMMAND}" ]]; then
COMMAND_B64="$(printf '%s' "${COMMAND}" | base64)"
REMOTE_CMD='CMD_B64="$0"; CMD="$(printf "%s" "${CMD_B64}" | base64 -d)"; eval "${CMD}"; exec /bin/bash -il'
if [[ "${AUTH_TYPE}" == "key" && -n "${KEY_PATH}" ]]; then
- exec ssh "${SSH_OPTS[@]}" -i "${KEY_PATH}" -p "${PORT:-22}" -tt "${SSH_TARGET}" -- /bin/bash -lc "${REMOTE_CMD}" -- "${COMMAND_B64}" || \
- exec ssh "${SSH_OPTS[@]}" -i "${KEY_PATH}" -p "${PORT:-22}" -tt "${SSH_TARGET}" -- /bin/sh -lc "${REMOTE_CMD}" -- "${COMMAND_B64}"
+ exec ssh "${SSH_OPTS[@]}" -i "${KEY_PATH}" -p "${PORT:-22}" -tt "${SSH_TARGET}" -- /bin/bash -lc "${REMOTE_CMD}" "${COMMAND_B64}" || \
+ exec ssh "${SSH_OPTS[@]}" -i "${KEY_PATH}" -p "${PORT:-22}" -tt "${SSH_TARGET}" -- /bin/sh -lc "${REMOTE_CMD}" "${COMMAND_B64}"
elif [[ "${AUTH_TYPE}" == "pass" && -n "${PASSWORD}" ]]; then
- exec sshpass -p "${PASSWORD}" ssh "${SSH_OPTS[@]}" -p "${PORT:-22}" -tt "${SSH_TARGET}" -- /bin/bash -lc "${REMOTE_CMD}" -- "${COMMAND_B64}" || \
- exec sshpass -p "${PASSWORD}" ssh "${SSH_OPTS[@]}" -p "${PORT:-22}" -tt "${SSH_TARGET}" -- /bin/sh -lc "${REMOTE_CMD}" -- "${COMMAND_B64}"
+ exec sshpass -p "${PASSWORD}" ssh "${SSH_OPTS[@]}" -p "${PORT:-22}" -tt "${SSH_TARGET}" -- /bin/bash -lc "${REMOTE_CMD}" "${COMMAND_B64}" || \
+ exec sshpass -p "${PASSWORD}" ssh "${SSH_OPTS[@]}" -p "${PORT:-22}" -tt "${SSH_TARGET}" -- /bin/sh -lc "${REMOTE_CMD}" "${COMMAND_B64}"
else
- exec ssh "${SSH_OPTS[@]}" -p "${PORT:-22}" -tt "${SSH_TARGET}" -- /bin/bash -lc "${REMOTE_CMD}" -- "${COMMAND_B64}" || \
- exec ssh "${SSH_OPTS[@]}" -p "${PORT:-22}" -tt "${SSH_TARGET}" -- /bin/sh -lc "${REMOTE_CMD}" -- "${COMMAND_B64}"
+ exec ssh "${SSH_OPTS[@]}" -p "${PORT:-22}" -tt "${SSH_TARGET}" -- /bin/bash -lc "${REMOTE_CMD}" "${COMMAND_B64}" || \
+ exec ssh "${SSH_OPTS[@]}" -p "${PORT:-22}" -tt "${SSH_TARGET}" -- /bin/sh -lc "${REMOTE_CMD}" "${COMMAND_B64}"
fi
else
if [[ "${AUTH_TYPE}" == "key" && -n "${KEY_PATH}" ]]; then