Nowe posty

Autor Wątek: Logowanie sesji screena  (Przeczytany 7318 razy)

varez

  • Gość
Logowanie sesji screena
« dnia: 2008-09-09, 21:59:33 »
Witam wszystkich..
Z gory powiem co trzeba: google przeszukiwałem, bezskutecznie, z linuksem jeszcze sie dobrze nie poznaliśmy, ale podstawowe minimum znam :)
A teraz do rzeczy: potrzebuję logować sesję screena do pliku, jak to zrobic, wywolując screena z shella, bo na googlach znalazłem tylko wersje ze musze odpalic "screen" i dopiero potem cos tam, no i moj programik ktory bedzie dzialal w tle..
Konkretnie to odpalam hlds-a (Half-Life Dedicated Server)..

Z góry dzięki!
Pozdrawiam
~varez

PS. Mam nadzieję, że to odpowiednia sekcja forum..

Offline ultr

  • Users
  • Guru
  • *****
  • Wiadomości: 1177
    • Zobacz profil
Logowanie sesji screena
« Odpowiedź #1 dnia: 2008-09-09, 23:09:31 »
To znaczy chodzi o logowanie tego co wyświetla program do pliku?

./hlds > log.txt
Lub >> jeżeli ma dodawać.

Możesz też:
./hlds | tee log.txt
Dzięki czemu output będzie wysyłany i do pliku, i na konsolę.

varez

  • Gość
Logowanie sesji screena
« Odpowiedź #2 dnia: 2008-09-10, 09:57:37 »
tj. jak mam to napisac? bo chce tego hldsa w screenie odpalic..
no i odpalajac pisze:
 
screen -A -m -d -S hlds ./hlds_run +master -game cstrike +maxplayers 10 +map fy_snow -debug

i dopisac po prostu na koncu  | tee log.txt ? do loga moge podac sciezke absolutna? tj np /var/www/logs/log.txt ?

Offline ultr

  • Users
  • Guru
  • *****
  • Wiadomości: 1177
    • Zobacz profil
Logowanie sesji screena
« Odpowiedź #3 dnia: 2008-09-10, 12:08:36 »
Dopisanie na końcu nie bardzo zadziała, bo będzie dotyczyło całego polecenia (screen), a nie tylko tego, które ma zostać uruchomione w screenie.

Ja bym zrobił plik uruchamiający serwer z logowaniem:
#!/bin/sh
./hlds_run +master -game cstrike +maxplayers 10 +map fy_snow -debug | tee screen.txt
Oczywiście trzeba nadać prawa wykonywania:
chmod a+x hlds_log.sh
i uruchamiał:
/usr/bin/screen -dmS serwerek ./hlds_log.sh
Tę komendę najlepiej też wstawić do jakiegoś skryptu, żeby za każdym razem jej nie pisać.
Albo zrobić sobie alias np. "uruchomserver" i dopisać go do ~/.bashrc.

Ścieżka do loga może być bezwzględna, tylko user z którym odpalasz serwer musi mieć prawa zapisu (do katalogu, albo przynajmniej do tego pliku jeżeli będzie on istniał cały czas). Oczywiście, jeżeli nie jest to konieczne, nie odpalaj serwera hl jako root.

varez

  • Gość
Logowanie sesji screena
« Odpowiedź #4 dnia: 2008-09-10, 18:07:09 »
dzieki, jak dzis wieczorkiem bede mial czas to to sprawdze :)

btw: czego nie odpalac hlds jako root? wszystko robie na roocie, poki co w uzytkownikow i zabezpieczenia nie zagladam..