bin/zion (view raw)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 |
#!/usr/bin/env bash
# =====================================================================
# ZION TERMINAL - Comando principal (dispatcher)
# Cyberdeck criado por Pablo Murad em 2026
# ---------------------------------------------------------------------
# Uso: zion [subcomando] [opcoes]
# sem argumentos -> abre o painel (dashboard)
# =====================================================================
export LC_ALL=C
ZION_DIR="/opt/zion-terminal"
BIN="$ZION_DIR/bin"
. "$BIN/zion-lib.sh" 2>/dev/null
_ajuda() {
cat <<AJUDA
$(zc "$ZP" "ZION TERMINAL") — Cyberdeck criado por Pablo Murad em 2026
Uso: zion [subcomando]
(vazio) Abre o painel interativo (dashboard)
status Resumo rapido do sistema
saude Saude: temperatura, carga, RAM, disco, servicos
rede Diagnostico de rede
tailscale Estado e diagnostico do Tailscale
ssh Menu de servidores SSH
logs Logs recentes (boot, ssh, tailscale, kernel, zion)
atualizar Atualiza o sistema com confirmacao
backup Backup das configuracoes do ZION
info Informacoes do ZION TERMINAL
tmux Cria ou anexa a sessao 'zion'
-- Extras --
doctor Autoteste completo (POST) verde/vermelho
radar Latencia dos peers Tailscale
mapa Topologia do tailnet em ASCII
panico War-room: paineis tmux de monitoramento
qr QR code do acesso (para o celular)
manual Manual de campo offline
anotar "nota" Adiciona nota ao logbook
servir [dir] Compartilha arquivos so no Tailscale
travar Trava o terminal (vlock)
observar HOST Monitora um host remoto via SSH
tema [ice|amber|green] Troca o tema de cores
matrix Chuva digital (Matrix)
-- Energia --
desligar Desliga o sistema (com confirmacao)
reiniciar Reinicia o sistema (com confirmacao)
--help Esta ajuda
AJUDA
}
_confirmar() { local p="$1"; read -r -p "$(printf '%b%s [s/N]:%b ' "$ZWARN" "$p" "$ZR")" r; [ "$r" = "s" ] || [ "$r" = "S" ]; }
cmd="${1:-}"; [ $# -gt 0 ] && shift
case "$cmd" in
""|painel|dashboard) exec "$BIN/zion-dashboard" ;;
status) exec "$BIN/zion-status" "$@" ;;
saude|health) exec "$BIN/zion-health" "$@" ;;
rede|net) exec "$BIN/zion-net" "$@" ;;
tailscale|ts) exec "$BIN/zion-tailscale" "$@" ;;
ssh) exec "$BIN/zion-ssh" "$@" ;;
logs) exec "$BIN/zion-logs" "$@" ;;
atualizar|update) exec "$BIN/zion-update" "$@" ;;
backup) exec "$BIN/zion-backup" "$@" ;;
info) exec "$BIN/zion-info" "$@" ;;
link) exec "$BIN/zion-link" "$@" ;;
modo) exec "$BIN/zion-modo" "$@" ;;
doctor) exec "$BIN/zion-doctor" "$@" ;;
radar) exec "$BIN/zion-radar" "$@" ;;
mapa|map) exec "$BIN/zion-map" "$@" ;;
panico|panic) exec "$BIN/zion-panic" "$@" ;;
qr) exec "$BIN/zion-qr" "$@" ;;
manual|book) exec "$BIN/zion-book" "$@" ;;
anotar|log) exec "$BIN/zion-log" "$@" ;;
servir|serve) exec "$BIN/zion-serve" "$@" ;;
travar|lock) exec "$BIN/zion-lock" "$@" ;;
observar|watch) exec "$BIN/zion-watch" "$@" ;;
tema|theme) exec "$BIN/zion-theme" "$@" ;;
matrix) exec "$BIN/zion-matrix" "$@" ;;
tmux)
if tmux has-session -t zion 2>/dev/null; then exec tmux attach -t zion
else exec tmux new-session -s zion; fi ;;
desligar)
_confirmar "Desligar o ZION TERMINAL agora?" && { echo "Sincronizando discos..."; sync; sudo systemctl poweroff; } || echo "Cancelado." ;;
reiniciar)
_confirmar "Reiniciar o ZION TERMINAL agora?" && { echo "Sincronizando discos..."; sync; sudo systemctl reboot; } || echo "Cancelado." ;;
-h|--help|ajuda) _ajuda ;;
*) printf '%bSubcomando desconhecido:%b %s\n\n' "$ZCRIT" "$ZR" "$cmd"; _ajuda; exit 2 ;;
esac
|