Skoro wywołałem sprawę terminali, jeszcze o zupełnym drobiazgu - kolorystycznym kluczu, dzięki któremu znacząco ograniczyłem ilość pomyłek w stylu o rany, przecież to nie tą maszynę miałem zrebootować.
Chodzi o konfigurację gnome-terminala, dzięki której dla każdej z często używanych zdalnych maszyn używam innego schematu kolorystycznego. Mechanizm jest bardzo prosty ale na tyle długo sam go ignorowałem, że uznałem, iż warto go opisać.
Profile
Sprawę załatwiają odpowiednio zrobione profile terminala. Uruchamiam
dowolną metodą gnome-terminal
, z menu Edit wybieram Profiles i
klikam New (w polskiej wersji - Edycja/Profile/Nowy).
Kluczowym elementem zabawy jest ustawienie odpowiedniego polecenia
ssh
jako polecenia odpalanego w terminalu. Na przykład:
ssh -t linode.mekk.waw.pl
przy otwarciu okna w tym profilu automatycznie zaloguje mnie na
linode.mekk.waw.pl
.
Możliwe są i bardziej złożone komendy, np.
ssh -t jakis.posrednik.pl ssh oraz.cel.com
zaloguje się na jakis.posrednik.pl
i dopiero stamtąd na
oraz.cel.com
(tego typu zapisy przydają się np. gdy maszyny nie mogą się
bezpośrednio zaadresować albo gdy ruch między nimi jest filtrowany).
Opcja
-t
wymusza zaalokowanie przezssh
pseudoterminala. Podawanie jej nie zawsze jest niezbędne (czasem zostaje przyjęta domyślnie) ale lepiej ją napisać. Co się dzieje przy braku pseudoterminala można łatwo zobaczyć logując się gdziekolwiek przez ssh z podaniem-T
(dużeT
):ssh -T jakas.zdalna.maszyna
Nie będzie promptu shella (ale można napisać
ls
), nie będą działać pełnoekranowe programy terminalowe jak choćby htop a edycja wierszy poleceń toczyć się w trybie liniowym.
Czasem dodaję jeszcze -X
(umożliwia odpalanie programów X11) - to
raczej tylko w sieci lokalnej.
Zabawę domyka przydzielenie profilowi specjalnego koloru.
Z zasady terminalom maszyn produkcyjnych przydzielam stosunkowo jadowite, drażniące barwy. To są miejsca, gdzie nie powinienem bez potrzeby przesiadywać i powinienem odczuwać pewien niepokój.
Przy okazji edytowania profilu zwykle wydłużam do przynajmniej tysiąca ilość wierszy Scrollback w zakładce Scrolling (jak długa historia zostanie zachowana i będzie można ją sobie przewinąć scrollbarem). Domyślnie są tam jakieś malutkie wartości.
Uruchamianie
Powyższe od razu pozwala korzystać z menu Gnome Terminala: File/Open Terminal/nazwa profilu (Plik/Otwórz terminal/nazwa profilu) otwiera odpowiednio ubarwione nowe okno, w którym od razu jestem zalogowany, File/Open Tab robi to samo w zakładce. Jedno i drugie oczywiście wymaga, by był już otwarty jakiś terminal.
Mogę też korzystać z wiersza poleceń, komendami takimi jak:
gnome-terminal --window-with-profile=Ruterek
albo
gnome-terminal --tab-with-profile=Ruterek
(gdzie Ruterek jest nazwą profilu). Są dość długie, więc
dorabiłem sobie skrótowce. Pierwszym jest skrypt o nazwie gterm
i treści:
#!/bin/sh
gnome-terminal --window-with-profile=$1
(do uruchamiania w stylu gterm Linode
- co wywołuję z
podręcznego terminala albo z popupu Alt-F2).
Drugim są ikonki na desktopie - prawoklikam na tle ekranu, Create Launcher i po prostu wpisuję taką komendę jako uruchamiane polecenie.
Efektem jest ikonka otwierająca odpowiedni zdalny terminal.
I tyle. Drobiazg, ale od kiedy go stosuję, jeszcze nie zdarzyło mi się zatrzymać produkcyjnej bazy danych zamiast testowej.