{
"meta": {
"title": "ProxMenux Monitor — Översikt: Terminal | ProxMenux-dokumentation",
"description": "Skal på Proxmox-värden i webbläsaren: upp till 4 terminaler i rutnätsvy, tangentbordsknappar för mobila enheter (ESC, TAB, pilar, Ctrl-kombinationer), inbyggd kommandoguide med cheat.sh och JWT-skydd."
},
"header": {
"title": "Översikt: Terminal",
"description": "En riktig skalsession på Proxmox-värden i webbläsaren. Upp till fyra terminaler samtidigt, tangentbordsknappar för mobila enheter och en inbyggd kommandoguide, med samma tema som resten av översikten.",
"section": "ProxMenux Monitor · Översikt"
},
"intro": {
"title": "En riktig PTY i webbläsaren",
"body": "Terminalen skapar en PTY på servern via flask_terminal_routes, kopplar den med WebSocket till xterm.js i webbläsaren och körs som root, systemd-enhetens användare. Som med ssh root@<host> kan du använda vim, tmux, ncurses-verktyg och Proxmox CLI:er (qm, pct, pvesh, pvecm). Varje PTY exporterar PROXMENUX_TERMINAL=monitor. Alla underordnade bash-processer, även en senare start av menu, ärver variabeln så att de känner igen Monitors webbläsarterminal."
},
"singleAlt": "Terminalfliken i ProxMenux Monitor — en terminalsession som visar Fastfetchs systemöversikt vid inloggning",
"singleCaption": "En värd terminal öppen - verktygsfältet ovan visar räkningen (1 / 4 terminaler), + New, Search, Clear och Close. De mobila tangentbordshjälparna visas under terminalen på touch-enheter.",
"target": {
"heading": "Anslutningsmål",
"body1": "Terminalfliken öppnar ett skal på själva Proxmox-värden, som vid SSH-inloggning. Varje flik öppnar en ny terminal på värden.",
"body2": "För att nå en LXC-container från webbläsaren använder du knappen Konsol på varje körande CT-kort på fliken VM och LXC. Den öppnar en dialogruta som kör pct enter <vmid> och använder samma mobilanpassade verktygsfält som beskrivs nedan."
},
"menuGuard": {
"heading": "Skydd vid självuppdatering av menu i terminalen",
"body1": "När du bekräftar självuppdateringen ersätter menu sitt skriptträd och laddas om. Det fungerar via SSH eller Proxmox-konsolen, men i webbläsaren skulle skalets PTY stängas och WebSocket avbrytas. Därför läser check_updates_stable, check_updates_beta och apply_release_channel variabeln PROXMENUX_TERMINAL för att känna igen Monitor-kontexten.",
"body2": "Då ersätts ja/nej-dialogrutan med ett meddelande med det officiella installationskommandot: bash -c \"$(wget -qLO - https://raw.githubusercontent.com/MacRimi/ProxMenux/main/install_proxmenux.sh)\" för stable och motsvarande URL för install_proxmenux_beta.sh för beta. Uppdateringen utförs via SSH eller Proxmox-värdens konsol; webbläsarterminalen används bara för att läsa och bekräfta meddelandet."
},
"fourTerminals": {
"heading": "Upp till fyra terminaler samtidigt",
"intro": "Fliken låter dig öppna upp till fyra värdterminaler samtidigt. Var och en får sin egen PTY och sin egen WebSocket De är helt oberoende sessioner. Två layouter växlar med ikonerna bredvid knappen \"New\":",
"items": [
"Flikvy — en terminal synlig åt gången, de andra som namngivna flikar överst (Terminal 1, Terminal 2…). Passar när du arbetar med en uppgift och har resten i bakgrunden.",
"Rutnätsvy — alla öppna terminaler i ett 2×2-rutnät. Du kan bevaka htop i en, iftop i en annan och redigera i en tredje utan att växla flik."
],
"outro": "Verktygsfältet visar antalet (1/4 terminaler, 4/4 terminaler). + Ny öppnar en flik; det lilla × i flikrubriken stänger den. Den stora röda knappen Stäng överst avslutar alla terminaler."
},
"gridAlt": "ProxMenux Monitor Terminal-fliken - rutnätsvy med fyra värdterminaler som kör ls, nätverkskonfig, iftop och ProxMenux huvudmenyn sida vid sida",
"gridCaption": "Rutnätsvy (4 / 4 terminaler) — fyra oberoende PTY:er samtidigt: kataloglista, /etc/network/interfaces, iftop och ProxMenux huvudmeny. Växla mellan rutnät och flikar med layoutreglaget i verktygsfältet.",
"keyboard": {
"heading": "Tangentbordsknappar för mobila enheter",
"intro": "Tangentbord på telefoner och surfplattor saknar ofta ESC, TAB, piltangenter och kombinationer med modifierartangenter. De behövs i vim, nano, htop och TUI-menyer. Terminalfliken visar därför en rad pekknappar under terminalen på små skärmar eller enheter med pekstöd:",
"headerButton": "Knapp",
"headerSends": "Skickar",
"headerUse": "Typisk användning",
"rows": [
{
"button": "ESC",
"sends": "\\x1b",
"use": "Lämna infogningsläge i vim, avbryt en TUI-dialogruta eller avsluta en sökning."
},
{
"button": "TAB",
"sends": "\\t",
"use": "Automatisk komplettering av sökvägar och navigering mellan fält i dialog/whiptail."
},
{
"button": "↑ ↓ ← →",
"sends": "\\x1bO[ABCD]",
"use": "Skalhistorik, markörförflyttning och menynavigering."
},
{
"button": "↵ Retur",
"sends": "\\r",
"use": "Bekräfta. Vissa skärmtangentbord ersätter Enter med Gå/Klar; den här knappen är entydig."
},
{
"button": "Ctrl ▾",
"sends": "Listruta",
"useRich": true
}
],
"ctrlIntro": "Tre kontrollsekvenser:",
"ctrlItems": [
"Ctrl+C — avbryt kommandot som körs (\\x03).",
"Ctrl+X — avsluta nano (\\x18).",
"Ctrl+R — sök bakåt i bash-historiken (\\x12)."
],
"modalTitle": "Samma verktygsfält i dialogrutan för LXC-konsolen",
"modalBody": "Konsolen som öppnas från VM och LXC → Konsol visar samma tangentbordsknappar under dialogrutan. Vid anslutning skriver den automatiskt pct enter <vmid>, så att du kommer direkt in i containern."
},
"lxcAlt": "LXC-konsolens dialogruta i ProxMenux Monitor — Terminal: ubuntu (ID: 103), med samma mobilanpassade verktygsfält (ESC, TAB, pilar, Enter, Ctrl) under terminalen",
"lxcCaption": "LXC-konsolen öppnad från VM och LXC → Konsol. Rubriken visar målcontainern (Terminal: ubuntu (ID: 103)) och samma pekanpassade verktygsfält finns under terminalen.",
"search": {
"heading": "Sök kommandon — inbyggd snabbguide",
"intro": "Den blå knappen Sök öppnar ungefärlig kommandosökning. Skriv några bokstäver i ett Linux- eller Proxmox-kommando (ls, tar, qm, pct, zpool, systemctl…) för att se exempel med Skicka till aktiv terminal med ett tryck. Då kan du hitta en flagga utan att byta webbläsarflik.",
"modalAlt": "ProxMenux Monitor — dialogrutan Sök kommandon med ungefärlig sökning efter Linux- och Proxmox-kommandon via cheat.sh och flera ls-exempel",
"modalCaption": "Sökning efter ls — varje resultat visar kommandot, dess beskrivning och en liten pil för att skicka det till aktiv terminal. Datakällan visas längst ner till höger (Data från cheat.sh).",
"aboutLabel": "Om cheat.sh:",
"aboutBody": "är en snabbguide med öppen källkod som underhålls av gemenskapen och samlar korta praktiska exempel för hundratals Linux-kommandon, administrationsverktyg och programmeringsspråk. Den skapades för curl cheat.sh/<command> i terminalen men kan även nås i webbläsaren. ProxMenux Monitor vidarebefordrar frågorna genom en proxy på servern så att dialogrutan har samma ursprung som översikten.",
"headerSource": "Källa",
"headerWhen": "När den används",
"headerWhat": "Vad du ser",
"onlineLabel": "(online)",
"onlineWhen": "När värden har internetåtkomst och cheat.sh proxy svarar.",
"onlineWhat": "Flera praktiska exempel per kommando med beskrivningen ovanför. Statuspunkten i dialogrutans rubrik är grön.",
"fallbackLabel": "Lokal reservlista",
"fallbackWhen": "När cheat.sh är oåtkomlig (offline värd, restriktiv brandvägg, cheat.sh avbrott).",
"fallbackWhat": "En medföljande lista med vanliga Linux- och Proxmox-kommandon. Mindre katalog, men alltid tillgänglig. Statuspunkten är röd.",
"sendingNote": "Så fungerar sändning: pilen bredvid resultatet skickar texten till aktiv terminal (vald flik eller den terminal du senast klickade på i rutnätet). Dialogrutan stängs automatiskt så att du kan trycka på Enter."
},
"auth": {
"heading": "Autentisering",
"items": [
"Webbläsaren begär först en engångsbiljett via POST /api/terminal/ticket med JWT i Authorization-huvudet. Biljetten skickas sedan när WebSocket öppnas och löper ut efter 5 sekunder. Om autentisering är aktiverad och biljetten saknas eller är ogiltig stängs anslutningen innan en PTY skapas.",
"Om Monitor ligger bakom en omvänd proxy måste den vidarebefordra WebSocket-uppgraderingar. Exempel för Nginx / Caddy / Traefik finns på Åtkomst och autentisering."
]
},
"clipboard": {
"heading": "Urklipp, rullningshistorik och storleksändring",
"items": [
"Kopiera och klistra in — använder webbläsarens urklipp. Markera text med mus eller styrplatta och använd systemets kortkommando (Cmd+C på macOS, Ctrl+Shift+C på Linux/Windows). Linux-skrivbord stöder även inklistring med mittenknappen.",
"Rullningshistorik — rulla med hjul eller två fingrar. xterm.js behåller de senaste flera tusen raderna i minnet.",
"Ändra storlek — terminalen anpassar PTY-fönstrets storlek när översiktens panel ändras, så att htop och vim visas korrekt.",
"Återanslutning när fliken får fokus — appbyte på telefon eller surfplatta, särskilt iPad, kan bryta WebSocket. Terminalfliken upptäcker synlighetsändringen och återansluter när du kommer tillbaka, med 15 sekunders tidsgräns för långsamma VPN-anslutningar."
]
},
"disconnect": {
"heading": "Orsaker till frånkoppling",
"intro": "De vanligaste orsakerna till att en session slutar och vad man ska göra åt varje:",
"headerCause": "Orsak",
"headerFix": "Lösning",
"rows": [
{
"cause": "Sessionens JWT har löpt ut när en terminal öppnas eller återansluts (24 timmar).",
"fix": "Uppdatera sidan och logga in igen. Terminalen är inte utformad för obevakade sessioner, så JWT-livslängden matchar den vanliga instrumentpanelen inloggning."
},
{
"cause": "Tidsgräns för inaktivitet i den omvända proxyn.",
"fix": "Öka proxy_read_timeout i Nginx eller motsvarande i Caddy / Traefik (exempel under Åtkomst och autentisering)."
},
{
"cause": "Telefon eller surfplatta i viloläge.",
"fix": "När enheten vaknar återansluts fliken automatiskt (15 sekunders tidsgräns för VPN-anslutningar). Ladda annars om fliken."
},
{
"cause": "Tjänsten startas om på värden.",
"fix": "Varje omstart av proxmenux-monitor.service stänger alla PTY:er. Öppna nya terminaler när översikten har laddats om."
}
]
},
"warning": {
"title": "Terminalen är ett root-skal på värden",
"body": "Terminalen ärver systemd-enhetens användare (root) och har fulla rättigheter på Proxmox-värden. Ställ in användarnamn, lösenord och 2FA under Åtkomst och autentisering innan du tillåter åtkomst utanför det lokala nätverket. Om autentisering är avstängd kan alla som når port 8008 öppna ett root-skal utan fler frågor eller SSH-inloggningsuppgifter. Använd Secure Gateway (Tailscale) eller en HTTPS-proxy för extern åtkomst i stället för att öppna porten mot internet."
},
"whereNext": {
"heading": "Nästa steg",
"items": [
{
"label": "Åtkomst och autentisering",
"href": "/docs/monitor/access-auth",
"tail": " — exempel för omvänd proxy med de WebSocket-uppgraderingsrader som terminalen kräver."
},
{
"label": "Arkitektur",
"href": "/docs/monitor/architecture",
"tail": " — WebSocket-transport (HTTP via flask-sock och HTTPS / WSS via gevent)."
},
{
"label": "API-referens",
"href": "/docs/monitor/api",
"tail": " — WebSocket-slutpunkterna /ws/terminal och /ws/script/ tillsammans med resten av API:et."
},
{
"label": "Integrationer → Secure Gateway",
"href": "/docs/monitor/integrations",
"tail": " — när du vill ha terminal åtkomst utanför LAN utan att exponera port 8008."
},
{
"label": "Översiktsindex",
"href": "/docs/monitor/dashboard",
"tail": " — de andra flikarna."
}
]
}
}