Zostawianie screena.
Aby zostawić screena musisz mieć 2 rzeczy:
1. Musisz mieć konto
shellowe.
2. Musisz mieć taka możliwość na koncie.
Co to jest screen
Screen (inaczej sesja) to proces (program), który zostaje
aktywny nawet po twoim wylogowaniu się z systemu (z konta). Najczęściej na
screenach zostawia się programy klienckie IRC (i to będzie tutaj
omówione), BitchX i np.555ex3.irc, ale można go oczywiście wykorzystywać
do innych celów. Na przykład, jeżeli masz coś dużego do sciagniecia na
konto a administrator nie pozwala na więcej niż jedno połączenie z danego
IP, możesz, download władować na screena.
Screenow, generalnie, można mięć dowolna ilość. Chyba ze zostaną one
ograniczone przez:
a). admina
b). moc procesora na serwerze
Do rzeczy....
Sprawa jest bajecznie prosta:
+ logujemy się na konto (telnet or
SSH) i wpisujemy: screen.
+ powinien się pojawić ekran informacyjny.
Wciskamy [Enter]
+ teoretycznie, w tej chwili powróciłeś z powrotem do
domyślnej powłoki systemu,
jednak to, co dalej zrobisz, będzie już
działało pod kontrola programu screen.
+ Możesz odpalić np. BitchX'a:
BitchX serwe.irc.pl nick niestety nie na wszystkich
serverach jest
bitchx :(
OK, jesteś na IRCu. Żeby zachować screena, musisz jeszcze wcisnąć:
Ctrl+A
Ctrl+D. Pojawi się wtedy napis:
[detached]
$
W momencie, kiedy będziesz chciał wrócić do pozostawionej
sesji, musisz wydać polecenie: screen -r Żeby zabić screena, musisz
najpierw zakończyć uruchomiony proces, a później wcisnąć Ctrl+D albo
wpisać exit.
Pojawi się napis:
[screen is terminating]
$
i koniec :)
Co zrobić, jeżeli jest więcej screenow.
Jeżeli chcemy postawić kilka screenów to nie ma problemu
po prostu powtarzamy opisana wyżej czynność kilka razy. Natomiast problem
pojawia się, gdy chcemy któryś z kilku screenów wyłączyć.
Wydajemy, standardowo polecenie: screen -r. Jeżeli jest ich więcej,
pojawi nam się cos takiego:
$ screen -r
There are several suitable screens
on:
7432.pts-6.costam (Detached)
7976.pts-9.costam
(Detached)
Type "screen [-d] -r [pid.]tty.host" to resume one of
them.
$
Żeby przywołać konkretna sesje, musimy znać jej PID (numerek w
pierwszej kolumnie), albo pamiętać, który był pierwszy. Jeżeli wiesz, to
wystarczy napisać:
screen -r xxxx (oczywiście w miejsce 'xxxx' trzeba wstawić właściwą
cyfrę :) i po kłopocie.
Jeżeli po wydaniu komendy screen -r nie pojawi ci się coś
w tym stylu jak powyżej, a chcesz się dowiedzieć, jakie pidy maja
poszczególne screeny, wydaj polecenie: ps -x. Wylistuje ci ono wszystkie
procesy, które masz w danej chwili uruchomione.
$ ps -x
PID TTY STAT TIME COMMAND
469 tty1 SW 0:00
[bash]
2148 tty2 S 0:00 -bash
7008 tty3 S 0:00 -bash
7623 pts/0 S
0:00 -bash
7635 ? S 0:00 SCREEN
7636 ttya1 S 0:00 /bin/bash
7721
? S 0:00 SCREEN
7722 ttya2 S 0:00 /bin/bash
7778 pts/0 R 0:00 ps
-x
$
Piszesz, screen -r PID i jestes na interesujacej cie sesji. Zabijanie
screenów też niczym się nie różni (Ctrl+D or exit).
Niby bot, czyli screen ze skryptem. Instalacja 555ex3.irc
Niektóre serwery nie udostępniają czegoś takiego jak
bitchx. Ale nie rozpaczaj, jeżeli masz dostęp do screena możesz wgrać
skrypt 555ex3.irc . Wystarczy ze
rozpakujesz go u siebie na kompie i przeniesiesz na konto. Następnie
piszesz na koncie :
screen
irc
/server [tutaj wpisz jakiś
servek]
Na razie uruchomiłeś klijęta irc bez żadnych skryptów teraz musisz
napisać :
/load 555ex3.irc
Teraz powinno się pojawić echo ze ładuje skrypt Jeżeli
wszystko się uda napisz /fhelp, aby uzyskać pomoc Teraz możesz się bawić,
dopisywać do niego swoich friendow itd...