Ultimátny ťahák pre tmux: Príkazy, skratky a pokročilý pracovný postup

ťahák pre tmux
  • tmux umožňuje multitasking efektívnym spravovaním relácií, okien a tabúľ.
  • Pokročilé funkcie, ako je synchronizácia tabúľ a perzistencia relácie, zabraňujú prerušeniam pracovného postupu.
  • Vlastné konfigurácie a pluginy umožňujú, aby sa tmux prispôsobil akémukoľvek pracovnému postupu alebo prostrediu.

Správa viacerých terminálových relácií môže byť otravná, najmä ak váš pracovný postup zahŕňa preskakovanie medzi SSH reláciami, spúšťanie dlhých procesov alebo spoluprácu naprieč počítačmi. Zadajte tmux , nevyhnutný terminálový multiplexor, ktorý vám umožní pracovať inteligentnejšie, nie ťažšie, v príkazovom riadku.

Ak ste niekedy stratili terminálovú reláciu kvôli výpadku SSH pripojenia alebo ste mali problém zobraziť viacero protokolov súčasne, tmux je odpoveďou. Tento ťahák ide ďaleko za základy a poskytuje vám aktualizovaný a užívateľsky prívetivý prehľad všetkého, čo tmux dokáže – takže už nikdy nebudete musieť hľadať príkazy.

Čo presne je tmux?

Tmux je skratka pre „terminálový multiplexor“ – ale čo to v skutočnosti znamená pre vašu každodennú prácu? Stručne povedané, umožňuje vám vytvárať, spravovať a navigovať vo viacerých terminálových prostrediach z jedného okna alebo cez jedno SSH pripojenie. Ak sa chcete dozvedieť, ako zlepšiť pracovný postup pri práci s terminálom, možno vás bude zaujímať aj táto príručka o funkciách terminálu v systéme Linux v systéme Android.

S tmuxom môžete:

  • Spúšťanie viacerých shellov a programov bez otvárania ďalších terminálov alebo záložiek.
  • Odpojiť z relácie, odhlásiť sa a pripevnite neskôr— dokonca aj z iného počítača — bez straty akéhokoľvek procesu.
  • Rozdeľte terminál na niekoľko tabúľ sledovať protokoly, upravovať kód a monitorovať systémové prostriedky naraz.
  • Pretrvávanie dlhotrvajúcich úloh nezávisle od vášho aktuálneho pripojenia alebo okna.
  • Prispôsobte si pracovný postup s konfigurovateľnými klávesovými skratkami, podporou myši a výkonným skriptovaním.

Ak ste vývojár, správca systému, DevOps inžinier alebo ktokoľvek, kto sa vyžíva vo svete CLI, tmux vám prináša flexibilitu, odolnosť a efektívnosť na dosah ruky.

Prečo tmux poráža konkurenciu

Tmux je rýchly, stabilný a funguje na všetkých unixových operačných systémoch (Linux, macOS, BSD a dokonca aj WSL pre Windows). Je ideálny pre prácu na diaľku, kolaboratívne kódovanie a správu serverov bez grafického rozhrania. Na rozdiel od grafických multiplexorov nie je tmux závislý od X servera ani od náročného desktopového prostredia, vďaka čomu je ideálny pre bezhlavé servery alebo cloudové virtuálne počítače.

Medzi hlavné výhody patrí:

  • Okamžitá obnova po odpojených SSH reláciách.
  • Funkcie vzdialenej spolupráce pre párové programovanie alebo tímové ladenie.
  • Skriptovateľnosť na automatizáciu zložitých pracovných postupov.
  • Vysoko prispôsobiteľné – upravte si stavové riadky, upravte klávesové skratky a povoľte pluginy.

Terminológia tmux: Zoznámte sa s kľúčovými pojmami

  • session: Predstavte si „pracovný priestor“, ktorý udržiava okná a panely pohromade. Každá relácia je trvalá a existuje nezávisle od toho, ako ju vnímate.
  • okno: Jedna karta v rámci relácie, ktorá obsahuje jednu alebo viac tabúľ. Každé okno zvyčajne predstavuje úlohu (úprava kódu, spustenie shellu).
  • Tabla: Rozdelená oblasť v rámci okna – predstavte si vedľa seba umiestnené alebo naskladané šablóny, medzi ktorými sa môžete pohybovať. Tabule sú vynikajúce na multitasking.
  • Klient: Konkrétny terminál, s ktorým interagujete. K tej istej relácii môžete mať pripojených viacero klientov (napr. pre spoluprácu).
  • Server: Proces tmux na pozadí beží a spravuje všetky relácie, okná a panely.

Inštalácia tmux na rôznych platformách

Väčšina moderných distribúcií Linuxu a verzií macOS buď obsahuje tmux, alebo umožňuje jednoduchú inštaláciu pomocou preferovaného správcu balíkov:

  • Debian/Ubuntu/Kali: sudo apt update && sudo apt install tmux
  • Fedora: sudo dnf -y install tmux
  • CentOS/RHEL7: sudo yum -y install tmux
  • Arch Linux: sudo pacman -S tmux
  • Alpský: sudo apk add tmux
  • macOS (s Homebrewom): brew install tmux

Skontrolujte nainštalovanú verziu: tmux -VPri práci v prostrediach, kde sa funkcie môžu líšiť, si vždy overte svoju verziu (verzie staršie ako v3.0 nemajú niektoré pokročilé funkcie, ako napríklad synchronizáciu tabúľ).

Spustenie tmuxu: Vaša prvá relácia

Spustite tmux pomocou: tmux

Týmto sa spustí nová relácia a dostanete sa priamo do nej. Zobrazí sa farebný stavový riadok – gratulujeme, teraz ste v tmux!

Tip pre profesionálov: Ak chcete vytvoriť reláciu s konkrétnym názvom, čo uľahčí jej správu:

tmux new -s mysession

Odtiaľto začína skutočná mágia.

TMUX Cheat Sheet

Správa relácií tmux: Všetky potrebné kroky

Relácie sú srdcom tmuxu. Tu nájdete všetko, čo potrebujete na jednoduché vytváranie, zobrazovanie, pripájanie a odstraňovanie relácií.

  • Vytvoriť reláciu: tmux or tmux new or tmux new-session
  • Vytvorte pomenovanú reláciu: tmux new -s <name>
  • Zoznam všetkých relácií: tmux ls
  • Priložiť k poslednej relácii: tmux a or tmux attach
  • Pripojenie ku konkrétnej relácii: tmux a -t <name>
  • Premenujte aktuálnu reláciu (z tmux): Ctrl+b $ (potom zadajte nový názov)
  • Odpojenie od relácie: Ctrl+b d
  • Ukončiť reláciu: tmux kill-session -t <name>
  • Zabiť všetkých okrem toho aktuálneho: tmux kill-session -a
  • Zabite všetkých okrem jedného konkrétneho: tmux kill-session -a -t <name>

Zobraziť všetky informácie: tmux info (zobrazuje relácie, okná, panely)
Zoznam skratiek: tmux list-keys | less

Linuxový terminál v systéme Android 17: Kompletný sprievodca novými funkciami, prispôsobeniami a aktualizáciami pre pokročilých používateľov

Tabule, okná a rozloženia: tajná omáčka tmux

Windows: Organizujte si pracovný postup

  • Vytvorte okno: Ctrl+b c
  • Premenovať aktuálne okno: Ctrl+b ,
  • Zoznam okien: Ctrl+b w
  • Prejsť na predchádzajúce/nasledujúce okno: Ctrl+b p (predchádzajúci), Ctrl+b n (ďalší)
  • Zatvoriť aktívne okno: Ctrl+b & (požiadam o potvrdenie)
  • Vymeniť/presunúť okná: Ctrl+b :swapw -s 0 -t 2 (vymeňte okná 0 a 2), Ctrl+b :swapw -t -1 (posunúť doľava)
POZRI TIEŽ  Ako sa orientovať s IP adresou krajiny, ktorú chceme, pomocou TOR

Osvedčený postup: Pre lepšiu prehľadnosť dajte oknám zmysluplné názvy (napr. nmap, poznámky, protokoly).

Panely: Dokonalý multitasking

  • Vertikálne rozdelenie: Ctrl+b %
  • Horizontálne rozdelenie: Ctrl+b "
  • Prepínanie medzi panelmi: Ctrl+b o
  • Nasledujúci/predchádzajúci panel: Ctrl+b ; (prepnúť posledný aktívny), Ctrl+b pomocou klávesov so šípkami na pohyb
  • Zobraziť číslovanie tabúľ a prepnúť: Ctrl+b qa potom zadajte číslo
  • Prepnúť priblíženie panela: Ctrl+b z
  • Zmeňte aktuálnu tablu na nové okno: Ctrl+b !
  • Zatvorenie panela: Ctrl+b x
  • Presunúť tablu doľava/doprava: Ctrl+b { (Vľavo), Ctrl+b } (správny)
  • Prepnúť rozloženia: Ctrl+b spacebar
  • Zmena veľkosti tabúľ: Ctrl+b :resize-pane -L 5 (-Ľ/-P/-U/-D pre smer a počet krokov)

Ďalšie rozloženia: Použite kláves „Meta“ (zvyčajne Alt or Esc) plus čísla na prepínanie medzi preddefinovanými rozloženiami: Meta 1 (vertikálne), Meta 2 (horizontálne), Meta 3 (hlavný panel hore), Meta 4 (hlavný panel vľavo), Meta 5 (kachličkové).

Režim kopírovania a vyrovnávacie pamäte: Nabite schránku terminálu

tmux umožňuje jednoduché kopírovanie a vkladanie v termináli, a to aj pri posúvaní veľkého množstva textu.

  • Vstúpte do režimu kopírovania: Ctrl+b
  • Hľadať dopredu/dozadu: / or ?, opakujte s n or N
  • Zobraziť všetky vyrovnávacie pamäte: Ctrl+b :list-buffers
  • Uloženie vyrovnávacej pamäte do súboru: Ctrl+b :save-buffer
  • Odstránenie vyrovnávacej pamäte: Ctrl+b :delete-buffer -b

Tip: Pre navigáciu v štýle vi v režime kopírovania pridajte toto do ~/.tmux.conf: setw -g mode-keys vi

Ak chcete zachytiť text priamo z panela: https://www.ikkaro.net/how-to-program-arduino-with-python/

Táto funkcia je neoceniteľná na získavanie protokolov, ukladanie výstupu príkazov a kopírovanie textu medzi panelmi alebo oknami bez akýchkoľvek problémov.

Konfigurácia tmux: Prispôsobte si svoj pracovný postup

~/.tmux.conf Konfiguračný súbor vám umožňuje naplno využiť výkon tmuxu. Medzi bežné nastavenia patrí zmena prefixového kľúča, premapovanie rozdelení a prispôsobenie stavového riadka. Tu je niekoľko základných príkladov:

  • Zmeňte predvolenú predponu z Ctrl+b na Ctrl+a (užitočné, ak prichádzate z GNU Screen):
    unbind C-b
    set -g prefix C-a
  • Rozdelenia premapovania:
    unbind '"'
    bind - split-window -v (použitie -v pre vertikálne rozdelenie)
  • Nastaviť vertikálne rozdelenie na | a horizontálne k -:
    unbind %
    bind | split-window -h
  • Povoliť klávesy vi v režime kopírovania:
    setw -g mode-keys vi
  • Prispôsobte si stavový riadok:
    set -g status-justify
    set -g status-left '...' (názov alebo informácie o relácii)
  • Formátovanie názvov okien (napríklad s farbami):
    setw -g window-status-format '##I'
  • Obnoviť konfiguráciu v reálnom čase:
    tmux source-file ~/.tmux.conf

Ak sa potrebujete vrátiť k predvoleným nastaveniam, jednoducho ich vymažte ~/.tmux.conf a reštartujte tmux.

Pokročilé funkcie: Synchronizácia tabúľ a vzdialený prístup

Synchronizácia tabúľ

Táto funkcia umožňuje odosielať rovnaké stlačenia klávesov do všetkých tabúľ naraz. Ideálne na spustenie rovnakého príkazu na viacerých vzdialených počítačoch:

  • Povoliť: Ctrl+b :setw synchronize-panes on
  • zakázať: Ctrl+b :setw synchronize-panes off

Ako to používať: Rozdeľte si okno, SSH do jednotlivých tablí, zapnite synchronizáciu a čokoľvek napíšete, zobrazí sa vo všetkých naraz. Pre lepšiu správu pracovného postupu si môžete pozrieť aj informácie o TFT displejoch.

Pozor: Skontrolujte, ktoré panely sú aktívne, aby ste predišli náhodným príkazom, pretože budú odoslané do všetkých.

Vzdialený prístup a spolupráca

Relácie tmux je možné zdieľať medzi rôznymi terminálmi, dokonca aj cez sieť. Ak spustíte reláciu na svojom serveri, môžete sa odpojiť, vrátiť domov a neskôr sa znova pripojiť z iného počítača a pokračovať presne tam, kde ste prestali.

POZRI TIEŽ  Ubuntu Touch: Definitívny sprievodca Linuxom na telefóne a tablete

Spolupráca v reálnom čase: K tej istej relácii sa môže pripojiť viacero používateľov, čo je užitočné pre zdieľané ladenie, učenie alebo párové programovanie. Relácie môžete tiež izolovať pomocou vlastných socketov pre zaistenie súkromia na zdieľaných systémoch.

Izolované zásuvky

  • Spustite reláciu na vlastnom sockete:
    tmux -S /tmp/.mysocket new -s mysession
  • Pripojte sa pomocou tejto zásuvky:
    tmux -S /tmp/.mysocket a

Toto je veľmi užitočné pre prevádzkovú bezpečnosť pri penetračnom testovaní, v prostrediach s viacerými používateľmi alebo keď nechcete, aby sa vaše relácie zobrazovali na sieti piso WiFi.

Spárovanie tmux s SSH: Neprerušovaný pracovný postup

Oddeliteľné relácie sú skutočnou výhodou. Správa viacerých SSH relácií sa stáva jednoduchou:

  • Vytvorte jedno okno pre každý cieľ SSH: tmux new -s engagement -n host1
  • V každom okne otvorte SSH pripojenie: ssh user@remotehost
  • Podľa potreby pridajte ďalšie okná (Ctrl+bc) a pre prehľadnosť každé z nich premenujte podľa jeho hostiteľa.
  • Odpojiť (Ctrl+b d) kedykoľvek sa chcete vrátiť do svojho shellu. Všetky SSH relácie zostávajú bezpečne uložené v tmux.
  • Neskôr sa znova spojte s: tmux a -t engagement

Podpora myši a vylepšenia používateľského rozhrania

Podporu myši môžete povoliť na výber textu, zmenu veľkosti tabúľ a prepínanie medzi oknami alebo tablami:

  • Pridajte tieto príkazy do svojho ~/.tmux.conf podľa potreby:
  • set -g mouse on (základná podpora myši)
  • set -g mouse-select-pane on
  • set -g mouse-resize-pane on
  • set -g mouse-select-window on

Príklady bežných pracovných postupov

Spustenie a obnovenie dlhotrvajúcej úlohy

  • Vytvoriť reláciu: tmux new -s mytask
  • Spustite v ňom svoj skript alebo program.
  • Odpojte, keď potrebujete zatvoriť terminál: Ctrl+b d
  • Znova sa pripojte kedykoľvek: tmux a -t mytask

Riadenie viacerých projektov

  • Jedno stretnutie na projekt: tmux new -s webapp, tmux new -s mlpipeline
  • V každom z nich je viacero okien a tabúľ pre kód, protokoly a monitorovanie.

Čistenie relácie: Žiadne stopy

  • Odstráňte nechcené relácie: tmux kill-session -t oldsession
  • Odstrániť všetky okrem aktuálneho: tmux kill-session -a
  • Odstráňte staré zásuvky: rm /tmp/.oldsocket

Dobrá OPSEC: Vždy vyčistite relácie a sockety, najmä na zdieľaných systémoch alebo po citlivej práci.

Tipy pre bezpečnosť a produktivitu

  • tmux je neoceniteľný pre bezpečnostných profesionálov: udržiavanie aktívnych reverzných shellov, riadenie úloh cracking bez strachu z odpojenia a bezpečná manipulácia s viacerými hostiteľmi jump.
  • Synchronizujte panely na vysielanie príkazov alebo spúšťanie auditov na viacerých počítačoch, ale ihneď po synchronizácii ich vypnite, aby ste sa vyhli chybám.
  • Použitie potrubná tabuľa na priebežné ukladanie výstupu z tably do protokolu (napríklad na účely súladu s predpismi, hlásenia alebo ladenia):
    Ctrl+b :pipe-pane 'cat >> ~/session.log'
  • Udržujte svoj ~/.tmux.conf prenosný súbor. Zvážte jeho export alebo správu pomocou súborov dotfiles, aby ste si mohli svoj pracovný postup vytvoriť kdekoľvek.

Pluginy tmux: Rozšírte funkčnosť ešte viac

tmux podporuje pluginy pre všetko od správy relácií až po elegantné stavové lišty. Nainštalujte si Tmux Plugin Manager (TPM) a prehliadajte pluginy, ako napríklad:

  • tmux-sensible – rozumné predvolené nastavenia pre začiatočníkov
  • tmux-vzkriesiť – obnoviť prostredie tmux po reštarte
  • tmux-continuum – nepretržité ukladanie vášho stavu
  • tmux-yank – vylepšuje integráciu schránky

Často kladené otázky

  • Ako spustím tmux? Stačí napísať tmux vo vašom termináli.
  • Môžem zdieľať reláciu medzi dvoma počítačmi alebo s kolegom? Áno! Obaja používatelia sa môžu pripojiť k tej istej relácii a spolupracovať naživo.
  • Ako môžem premapovať klávesové skratky? Úpravou ~/.tmux.conf, môžete predefinovať ľubovoľný kľúč a znova načítať.
  • Ako obnovím reláciu po odpojení SSH? Po opätovnom pripojení spustite tmux ls zobraziť aktívne relácie, potom tmux attach -t .
  • Ako povolím/zakážem podporu myši? Pridať alebo odstrániť set -g mouse on vo vašej konfigurácii a znova načítajte.

Kompletný návod na prácu s tmuxom môže zmeniť spôsob, akým pracujete v termináli. Či už ste správca systému spravujúci vzdialené servery, vývojár, ktorý chce zefektívniť svoj pracovný postup, alebo profesionál v oblasti kybernetickej bezpečnosti reagujúci na incidenty, tmux ponúka bezkonkurenčnú flexibilitu a výkon. Vďaka vyššie uvedeným stratégiám, príkazom a tipom budete pripravení zvládnuť akúkoľvek úlohu v termináli s istotou a rýchlosťou.

Pridať komentár