alphasec academy

ssh -t drg@host "screen -dRS foo" - i zrywane sesje SSH nie straszne

Dodatkowe informacje

Czy czasem zdarza Wam się, że działacie coś na zdalnym hoście po ssh i nagle zrywa Wam połączenie? Musicie wtedy onelinera pisać od nowa, albo usuwać pliky wymiany czy przywracać część plików. Powyższy oneliner, który zaprzęga
screen
-a do pracy jest jednym z tricków, który pozwoli temu zaradzić. Rozbijmy go na części pierwsze:
  • ssh -t drg@host
    - połącz się z hostem host jako użytkownik drg wymuszając allokację pseudoterminala (opcja
    -t
    ) co jest wymagane przy uruchomianiu programów typu
    screen
    ,
  • "screen -dRS foo"
    - po podłączeniu uruchom polecenie
    screen -dRS foo
    , którego opcje spowodują:
    • -d
      - odłącz sesję, jeśli już jakaś jest podłączona do tego
      screen
      -a,
    • -R
      - podłącz się do sesji, a jeśli nie istniała, utwórz ją,
    • -S foo
      - nazwij aktualną sesję foo, żeby jednoznacznie wskazać sesję, którą dotyczą parametry
      -d
      i
      -R
      .
Dzięki temu, po zestawieniu połączenia, automatycznie uruchomi się
screen
i podłączy do sesji o wskazanej nazwie, a jeśli nie istniała, stworzy ją.
Oczywiście równie dorze, możemy najpierw standardowo podłączyć się po ssh, a potem, jeśli potrzebujemy, wydać polecenie podłączającej do danej sesji nazwanej
screen
-a, np.:
screen -dRS foo
.
Możemy mieć oczywiście wiele różnie nazwanych sesji.

Subskrybuj

Jeśli chcesz otrzymywać nowe, mięsiste protipy na maila, a także zostać czasem powiadomiony o wartościowych wydarzeniach - dołącz do subskrybentów.