tmux pouzivam kazdy den na openbsd a ubuntu (zkompilovany rucne), horizontalni rozdeleni je default:
C-b-"
taky vyuzivam ukladani vystup z obrazovky do souboru - pipe-pane. vyvojova verze umi i nejaky ovladani mysi. taky jde tmux pouzit jako alternativu k cssh, nebo readonly jako vyukovy prostredek...
hlavni autor tmuxu je openbsd developer, a vytvoril taky `fdm' (fajn fetcher pro mail a archiver).
Napíšu vám to úplně polopatisticky:
ssh server
screen
(že se spustil poznáte podle jiného titulku okna)
spusťte nějaký program
Stiskněte ctrl+a d(screen se odpojí)
screen -r
(screen se znova připojí)
Dalších pár užitečných klávesových zkratek:
ctrl+a c(vytvoří se nové okno)
ctrl+a A(změní titulek okna)
ctrl+a "(zobrazí se seznam oken)
Nějaké info je i ve zdejší wiki
Presne tak, opravdu nechapu u obsesi "merakama" na pracovni plose.. opravdu (ale ruku na srdce!) potrebujete NEUSTALE vedet kolik je volne pameti a jak je vytizeny cpu? A neberu argumenty typu "jo, pred 2ma rokama sem diky tomu zjistil ze mi neco zere pamet a tak sem.. blabla".
Ja osobne povazuju prostor obrazovky za moc cenny na to abych ho zaplacal milionem meracku ktery mi neustale sdelujou kolik zeru pameti, jak bezi sit, jak silny je wifi signal, jak mam zatizenej procesor, jaka je teplota v praze ruzyni + milion "debilit", ktere ale jsou vsude, takze dost podstatna cast lidstva je presvedcena ze to je "normalni" a maji pocit ze je neco spatne kdyz to nemaji.
A abyste nerekli ze to je nekonstruktivni kritika:
Proc je spatne sledovani LIBOVOLNYCH parametru LIBOVOLNEHO systemu tim ze budu koukat na meraky?
1. nelze SPOLEHLIVE zjistit problem (kdo to sleduje kdyz jdete na zachod?)
2. pokud je meraku vice nez urcite mnozstvi (coz je individualni), dojde k zahlceni vjemy a mozek STEJNE NEPOSTREHNE jednu podstatnou zmenu
3. meraky zabiraji misto (at uz na obrazovce nebo v kokpitu letadla)
4. lze tak zaznamenat pouze rychlou zmenu, opravdu velmi pomale jevy mozek nevyhodnoti jako zmenu a ignoruje
Jak to resit? Jednoduse! Nejakym monitorovacim systemem, ktery ma nastaveny meze sledovanych parametru a teprve pri jejich prekroceni vyvola nejakou udalost, at uz je pipnuti, sirena, mail nebo popup okenko.
Nicmene vsude jsou vyjimky - a tedy pokud pocitac nepouzivate k praci, ale k frajereni se jak mate COOL system a jak hrozny h4XX0ri ste, tak pak je jasny ze cim vic conek, system statusu a jinejch hejblatek mate na obrazovce, tim lip. Jenom se ale nevymlouvejte ze to mate proto abyste neco sledovali.
Mozna se budes divit, ale ja na velkym desktopu sleduju i kontrolky disku...
Podle zvuku jsem schopen i odhadnout jestli mam zapnuty prislusny rezim prenosu pripadne jestli jsem nezapomnel zapnuty power management.
- sledovat CPUcka potrebuju k tomu abych videl jestli jsem nezapomnel aplikaci vicevlaknove nebo jestli mi nevisi nekde proces co zere cpu(typicky flash shitter nebo wine)
- sledovat pamet+swap(pac linux neni oraclis ze) je mozna jeste dulezitejsi protoze mraky i bezne pouzivanych aplikaci trpi memory leakem. Takhle se daji hned podchytit Vzhledem k tomu ze obcas stroj vytezuji az na krev a poustim hodne procesu a tak potrebuji vedet kolik si jeste muzu dovolit
- obcas kdyz je problem mrknu i na sit. Tohle mam hlavne pokud jsem na pomalych mobilnich pripojenich (neb 3G pokryti je v CR tragicke). S tim souvici i monitor Wifi
- sledovat i/o operace potrebuju abych nemusel sledovat ledku disku:)
U netbooku je pro mne displej prilis cenny a maly a tak na nem nemonitoruju nic. Vzhledem poctu bezicich procesu a zdroju je to zbytecne.
U notebooku sleduju i teploty. To je ale jen takova lehka obsese protoze slusny HW si pri prilis vysoke teplote rekne a pak je na miste servis.
Monitorovaci system pokud je mimo jadro je na pytel nebot pokud jde masina tak do kytek ze ti nestaci ani vyskocit hlaska. Navic jednoduche meraky neumi posoudit hysterezi hodnot. V posuzovani tehle paternu maji mezery i profesionalni monitorovaci systemy
Ten primer s tim letadlem trochu pokulhava. Co sleduju tak ona i moderni mala ultralehka letadla monitoruji kdejaky uhel klopeni ve vztahu k posunu zemske osy... Sice to neni dulezite ale ty pumprliky radsi budou monitorovat i teplotu sedacek kdyby to pilot potreboval. Tech zbytecnych ptakovin v kokpitech narusta. Nehlede na to ze co pilot to jine profily konfiguraci pak clovek stravi hodinu precvakavanim.
Alespon u vetsich dopravnich letadel dochazi k jakemusi zjednodusovani. Firmy jako Lockheed,Boeing a Airbus si totiz plati v tomto ohledu studie. Ne jen teoreticke ale i prakticke.
Podle meho nazoru je nejlepsi situace u vojenskych stihacek. Tam totiz na jednoduchosti a neprehlcenosti informacemi zavisi uspech misi a zivot pilota.
Nejde o h4x0rstvi, ale o tom vedet trochu co ten system dela a jaky je jeho stav.
No, na plose jsou meraky k ..., protoze pri praci plochu nevidime. Nicmene si myslim, ze je vhodne mit ty spravne meraky v nejakem statusbaru, at uz xovym nebo screenovym. A ktere jsou spravne, se pozna podle toho, ktere vam setri praci.
U mne je to %cpu, ip-adresa, stav wi-fi, datum/cas a stav baterky.
Konkretne kdykoli pouzivam wine, tak pohled na cpu-merak odhali, ze po zdanlive spravnem ukonceni zustal wine viset v busy waitu. Opravdu jsem liny kvuli tomu neco psat do terminalu, nebo nedej boze hybat mysi.
Dalsi uzitecna vec muze byt aktualni ip-adresa (kdyz si potrebujete v cizi siti poslat neco na svuj pocitac, tak spoustet dalsi terminal, nebo vyskakovat ze ssh a lezt zpet je proste prace navic), nebo stav wifi signalu (ten snad ani zduvodnovat nemusim).
Pro vsechny do pouzivaji emacs a nebo bash s emackovymi zkratkami je uz dost velky problem Ctrl+a, ktere vas nesoupne na zacatek radku. Ale nefunckni Ctrl+b, ktere se pouziva pro pohyb kurzoru vzad je uz vrazdene. (To je jako kdyz v se zapomenete a posouvate se na dalsi radek pomoci Ctrl+N v prohlizeci a pak pul hodiny zavirate nove okna).
Podle mne je premapovani tehle zakladni zkraty velmi dulezite a pokud to skutecne nejde, tak se tomuhle programu obloukem vyhnu.
tmux offers several advantages over screen:
- a clearly-defined client-server model: windows are independent entities which
may be attached simultaneously to multiple sessions and viewed from multiple
clients (terminals), as well as moved freely between sessions within the same
tmux server;
- a consistent, well-documented command interface, with the same syntax
whether used interactively, as a key binding, or from the shell;
- easily scriptable from the shell;
- multiple paste buffers;
- choice of vi or emacs key layouts;
- an option to limit the window size;
- a more usable status line syntax, with the ability to display the
first line of output of a specific command;
- a cleaner, modern, easily extended, BSD-licensed codebase.
IMHO tmux is less bloated: it uses less memory than GNU/screen.
And is much more well written.
Theo: The most impressive thing about tmux, in my view, is how frustrating the code audit was. In 2 hours, I found only one or two nits that had very minor security consequences.
It was not accepted into the tree based on license alone. It is high quality code.
Naposledy, kdyz jsem ve screenu zkousel rozdelit si okno vertikalne na dve, a to leve aby melo presne 80 znaku na sirku, musel jsem aplikovat asi 2 patche a malem jsem u toho porodil. V tmuxu staci ^B (" nebo %, cili horizontalne/vertikalne) a potom ^B (Ctrl+sipky) na resize.
Zkousel jste nekdy pracovat se screenem ve screenu? Tj. prihlasit se na 1 server, pustit screen a odtud se prihlasit jinam a pustit si screen tam? A jak se vam potom detachovaly?
A jak rychle a jak casto pouzivate ve screenu copy+paste? Jak ve screenu zabijete okno se zakouslym programem? (vivat minicom)
cat ~/.tmux.conf
set-option -g prefix ^a
# large history
set-option -g history-limit 10000
setw -g mode-mouse on
set-option -g mouse-select-pane on
# swap on C-a C-a
bind-key C-a last-window
bind-key k confirm-before kill-window
bind-key r source-file ~/.tmux.conf
bind-key v split-window -h #similar to vim's vsplit
bind-key h split-window
set-option -g default-terminal "screen-256color"
# status bar customisation
set-option -g status-bg blue
set-option -g status-fg green
# highlight status bar on activity
set -g visual-activity on
# change foreground-background for the current window
setw -g window-status-current-attr reverse
setw -g monitor-activity on
# for vim
setw -g xterm-keys on
# load average, battery, and date + time
set -g status-right "#[fg=magenta] #(cat /proc/loadavg|awk '{print $3 \" \" $2 \" \" $3}') #(acpi|awk '{print $4;}') #[fg=cyan]%d-%m #[fg=green]%H:%M"
# put the programs to start by default here
# one $SHELL is always started at 0
# focus on first window
select-window -t 0
set status-left-attr reverse
new
Jsem zvyklý používat ve screenu jak monitorování aktivity, tak monitorování ticha.
Pro shodné přepínání monitorování aktivity už jsem dal dohromady:
bind-key M setw monitor-activity
Stále mi však schází přepínání monitorování ticha.
Dal jsem dohromady jen jeho zapnutí:
bind-key _ setw monitor-silence 30
Ale nedaří se mi najít radu, jak místo pevně uvedeného '30' dát podmínku podle aktuální hodnoty - aby se na jednu klávesu přepínalo mezi 0 a 30?
Prosím, zvládne někdo s tmuxem zběhlý poradit?
* How can I blank the tmux window?
GNU screen has a feature whereby it will blank the screen after a period of
inactivity. To do the same thing in tmux, use the lock-command setting, for
example (with GNU bash):
set -g lock-command 'tput civis && read -s -n1'
This will remove the cursor and tell the shell to quit once a key has been
pressed. For zsh, use "read -s -k1".
In addition, it's possible to have both blanking and locking (for instance via
lock(1) or vlock(1)) by using the following:
bind x set lock-command '/usr/bin/vlock' \; lock-client \; set lock-command 'tput civis && read -s -n1'