Page Index Toggle Pages: [1] 2  Send TopicPrint
Hot Topic (More than 10 Replies) Moje linuxowe problemy (Read 4698 times)
Varus
Forum Administrator
******
Offline


3dfx Collector

Posts: 3779
Location: Opole
Joined: 08. May 2012
Gender: Male
Moje linuxowe problemy
15. Oct 2017 at 22:13
Print Post  
Nie chciałem wątku zaśmiecać więc robię nowy.

Mam problem że skryptem w linuxie, a raczej wyświetleniem go. Mam dwa połowicznie rozwiązania, ale mnie nie zadowalają.

Chcąc mieć podgląd skryptu na ekranie, zaraz po uruchomieniu systemu (nie ma X-ów, Ubuntu) wrzuciłem go do odpalania do init.d i komendą ./skrypt.sh > /dev/tty1

Działa to fajnie, bez logowania, ale nie jestem w stanie zobaczyć tego, jak łączę się z zewnątrz, poprzez ssh.

I teraz kolejna myśl, dodałem tmuxa i uruchamiam skrypt w nim. Mogę go wywołać z ssh i widzę co się dzieje, ale na komputerze oczywiście po starcie mam ekran logowania. Muszę ręcznie się zalogować i wywołać tmuxa.

Jak pogodzić te dwie rzeczy?
  

The Administrator.
Back to top
WWW  
IP Logged
 
kazeobi
Senior Member
****
Offline



Posts: 3328
Location: Warszawa
Joined: 14. Jan 2017
Gender: Male
Re: Moje linuxowe problemy
Reply #1 - 15. Oct 2017 at 23:30
Print Post  
Może wypchnac to netcatem na jakiś port, a później zarówno w tmux jak i ibit.d to odczytywać?
  

]
Back to top
 
IP Logged
 
Varus
Forum Administrator
******
Offline


3dfx Collector

Posts: 3779
Location: Opole
Joined: 08. May 2012
Gender: Male
Re: Moje linuxowe problemy
Reply #2 - 15. Oct 2017 at 23:47
Print Post  
Init.d to tylko żeby ładowało skrypt przy starcie systemu z prawami roota. Nie potrzebne jest logowanie. Jak przez port chcesz to wepchnąć? Mnie chodzi tylko o to jak wywalić działający już skrypt, na ekran "widzialny".

Ręcznie jak się zalogujesz w konsoli i odpalisz skrypt, to go widzisz i tyle. Przy starcie jak on odpala się w powłoce to już go nie widać. Nawet po zalogowaniu nie umiem się do niego dostać. To częściowo ominąłem właśnie tmuxem. Odpalam w nim skrypt komendami.

Czyli przy starcie systemu odpalany jest tmux, potem wysyłana komenda z keysem na tą konsole:
./skrypt.sh > /dev/tty2
sleep 10
chvt 2

Włączam kompa i po 20 sekundach od razu widzę działający skrypt.

Jeśli chce coś pokombinować, to zmieniam pulpit i tu wiadomo... Login hasło itp. Potem komenda tmux attach, no I tu widzę, że jest odpalany skrypt i wysłany na tty2, bez tego co się dzieje.

Tu mi to nie przeszkadza. Ale dostając się na kompa poprzez ssh, co mogę zrobić? Wszystko i nic. Tmux attach wyświetla mi info, że skrypt jest odpalany na tty2, ale tam się już nie przełączę.

A jeśli przy starcie systemu w tmuxie odpalę skrypt bez wywalania go na tty2 to poprzez ssh go wywołam. Ale z komputera z linuxem już nie mam tego komfortu, że włączę kompa i po 20 sekundach widzę skrypt. Tylko już trzeba najpierw ręcznie się zalogować i odpalić tmuxa.
  

The Administrator.
Back to top
WWW  
IP Logged
 
Forsaken
Full Member
***
Offline


I Love YaBB 2.5

Posts: 225
Joined: 06. Jul 2013
Gender: Male
Re: Moje linuxowe problemy
Reply #3 - 16. Oct 2017 at 00:26
Print Post  
Nie wiem czy dobrze rozumiem co chcesz uzyskać, ale może screen byłby pomocny (You need to Login or Register to view media files and links)
  
Back to top
 
IP Logged
 
Varus
Forum Administrator
******
Offline


3dfx Collector

Posts: 3779
Location: Opole
Joined: 08. May 2012
Gender: Male
Re: Moje linuxowe problemy
Reply #4 - 16. Oct 2017 at 07:14
Print Post  
Próbowałem też screena. Te same opcje daje mi tmux. Nie udało mi się tego zrobić ani jednym ani drugim.
  

The Administrator.
Back to top
WWW  
IP Logged
 
kazeobi
Senior Member
****
Offline



Posts: 3328
Location: Warszawa
Joined: 14. Jan 2017
Gender: Male
Re: Moje linuxowe problemy
Reply #5 - 16. Oct 2017 at 09:01
Print Post  
Faktycznie, ciezko zeby dwa netcaty sluchaly na jednym porcie...

a moze named pipes? (wycenzurowalem nieudane proby uzycia polecenia tee Smiley )
  

]
Back to top
 
IP Logged
 
Jenot
Senior Member
****
Offline


Jenot

Posts: 1778
Location: Chełm
Joined: 15. Jan 2015
Gender: Male
Re: Moje linuxowe problemy
Reply #6 - 16. Oct 2017 at 22:07
Print Post  
Nie wiem czy dobrze zrozumiałem, ale chodzi Ci o to, żeby po wykonaniu skryptu (nawet jeśli uruchamia się przy inicie) sprawdzić co wywalił na stdout i stderr? Jeśli tak, to może pomoże dodanie czegoś takiego na początku Twojego skrypt.sh:
Code
exec 1> >(logger -s -t $(basename $0)) 2>&1 


A potem po zalogowaniu przez ssh wystarczy
Code
cat /var/log/syslog |grep skrypt.sh 


Nie ma to wpływu na wyrzucanie stdout na ekran, czyli na swoim /dev/tty2 będziesz miał to samo co w syslogu, chociaż ja preferuję jednak używanie do tego tty, na których nie pojawia się login:

Albo jeszcze prościej: nohup skrypt.sh, tylko wtedy stdout nie jest wyświetlany na tty, wszystko idzie do nohup.out. Ale zawsze po zalogowaniu możesz zrobić tail -F nohup.out i widzisz na bieżąco co się dzieje.
  

ATC-5220, K6-III 400, 512MB RAM, Voodoo3 3000 AGP, GUS MAX 1MB, Terratec EWS64 XL, AWE32 CT2760, 3x40GB HDD, DVD TSSTcorp, FreeDOS, OS/2 Warp 4, Win95 OSR2
Back to top
GTalk  
IP Logged
 
Varus
Forum Administrator
******
Offline


3dfx Collector

Posts: 3779
Location: Opole
Joined: 08. May 2012
Gender: Male
Re: Moje linuxowe problemy
Reply #7 - 17. Oct 2017 at 17:38
Print Post  
Chodzi o to, że po starcie systemu mam mieć działający skrypt widoczny na tty bez logowania.
I jak dostaje się na tą maszynę przez ssh to też chce widzieć co wyświetla ten skrypt. Nie mogę tych dwóch rzeczy pogodzić.

Albo mam skrypt uruchomiony na tty bez logowania i nie mogę go podejrzeć przez ssh, albo mogę go podejrzeć przez ssh, ale wtedy na maszynie muszę się zalogować i odpalić tmuxa żeby go widzieć.
  

The Administrator.
Back to top
WWW  
IP Logged
 
Jenot
Senior Member
****
Offline


Jenot

Posts: 1778
Location: Chełm
Joined: 15. Jan 2015
Gender: Male
Re: Moje linuxowe problemy
Reply #8 - 17. Oct 2017 at 18:00
Print Post  
No to OK. Dopisz tylko to co powyżej do skryptu. Skrypt uruchamiaj  tak jak uruchamiałeś z przekierowaniem na tty. Do .bash_profile dopisz coś w stylu:
Code
tail -f /var/log/syslog |grep --line-buffered skrypt.sh 


Po zalogowaniu przez ssh będziesz mial na ekranie to co chcesz (o ile oczywiście masz uprawnienia do czytania pliku syslog).
  

ATC-5220, K6-III 400, 512MB RAM, Voodoo3 3000 AGP, GUS MAX 1MB, Terratec EWS64 XL, AWE32 CT2760, 3x40GB HDD, DVD TSSTcorp, FreeDOS, OS/2 Warp 4, Win95 OSR2
Back to top
GTalk  
IP Logged
 
Varus
Forum Administrator
******
Offline


3dfx Collector

Posts: 3779
Location: Opole
Joined: 08. May 2012
Gender: Male
Re: Moje linuxowe problemy
Reply #9 - 17. Oct 2017 at 19:56
Print Post  
No właśnie, uprawnienia to nie problem. Ale wnioskuję, że to pozwoli mi czytać działający skrypt, wpisywany w logi. A ja muszę mieć wpływ też na ten skrypt. Czyli np wciskam z klawiatury klawisz i skrypt mi zareaguje.

Np coś takiego. Piszesz skrypt, który po uruchomieniu wyświetla Ci co 10min w nowej linijce aktualną godzinę. Dodatkowo, po naciśnięciu klawisza C z klawiatury, wyświetla Ci godzinę z momentu naciśnięcia klawisza.

I taki skrypt chce, żeby działał zaraz po starcie na tty1 bez logowania.

Jak zaloguje się na kompa z zewnątrz przez ssh, też chce wywołać ten działający skrypt i móc w niego ingerować, naciskaniem klawisza C.

To chyba dokładnie odwzorowuje to czego potrzebuje.
  

The Administrator.
Back to top
WWW  
IP Logged
 
Jenot
Senior Member
****
Offline


Jenot

Posts: 1778
Location: Chełm
Joined: 15. Jan 2015
Gender: Male
Re: Moje linuxowe problemy
Reply #10 - 18. Oct 2017 at 21:57
Print Post  
OK, jeśli to program interaktywny a nie zwykły skrypt, który tylko cośtam wywala na ekran to pozostaje screen. Robisz tak:
Na początku skryptu umieszczasz linię:
Code
exec 1> >(logger -s -p mojskrypt.output -t $(basename $0)) 2>&1  



W rc.local, czy gdzie tam uruchamiasz skrypt wpisujesz:
Code
screen -dm /path/to/skrypt.sh 



W konfigu rsyslog (pewnie  w /etc/rsyslog.d/50-default.conf) dodajesz linię:
Code
mojskrypt.*    /dev/tty12 



Output ze skryptu masz pod Alt-F12, jak się zalogujesz przez ssh to screen -r i pracujesz ze skryptem, jedyna wada to to, że na tty12 nie masz interakcji ze skryptem (musisz się lokalnie zalogować i zrobić screen -r), ale to dla mnie akurat byłaby zaleta - raczej nie chcę, żeby mi ktoś wyszedł ze skryptu uruchomionego na roocie do shella. Wink
  

ATC-5220, K6-III 400, 512MB RAM, Voodoo3 3000 AGP, GUS MAX 1MB, Terratec EWS64 XL, AWE32 CT2760, 3x40GB HDD, DVD TSSTcorp, FreeDOS, OS/2 Warp 4, Win95 OSR2
Back to top
GTalk  
IP Logged
 
Varus
Forum Administrator
******
Offline


3dfx Collector

Posts: 3779
Location: Opole
Joined: 08. May 2012
Gender: Male
Re: Moje linuxowe problemy
Reply #11 - 18. Oct 2017 at 22:02
Print Post  
Brzmi sensownie. Spróbuję jeszcze dodatkowo odpalać to wszystko przez tmuxa. Wtedy co prawda tak samo z lokalnego nie będę mieć interakcji z skryptem, ale odpalając tmuxa będę mógł w nim wydawać komendy np na tty1 a rezultaty oglądać na tty2.

Sprawdzę to w weekend i dam znać czy działa.

Nie jestem zaawansowanym użytkownikiem linuxa, wydaje mi się, że nie do końca to zrozumiałem Cheesy

mojskrypt.output vs skrypt.sh vs mojskrypt.* ?


PS.
bawiłem się też trochę ze screenem, ale na to nie wpadłem Wink
Dzięki, mam nadzieję, że zadziała
  

The Administrator.
Back to top
WWW  
IP Logged
 
WhitemanFX
Senior Member
****
Offline


3DFX maniac

Posts: 1839
Location: Toruń
Joined: 14. Dec 2013
Gender: Male
Re: Moje linuxowe problemy
Reply #12 - 21. Oct 2017 at 23:57
Print Post  
"
można dodać do tego jak się loguje, żeby wrzucało output skryptu do motd (message of the day)
wtedy będzie miał wynik skryptu po zalogowaniu po ssh
on chce czy nie chce się logować

"

Taka rada od kumpla na szybko. Nie wiem czy dobrze zrozumiał porblem.
  

Whiteman
(You need to Login or Register to view media files and links)

AMD K6 III 450 MHZ Socket7 Voodoo 2 creative 8MB
Back to top
IP Logged
 
WhitemanFX
Senior Member
****
Offline


3DFX maniac

Posts: 1839
Location: Toruń
Joined: 14. Dec 2013
Gender: Male
Re: Moje linuxowe problemy
Reply #13 - 22. Oct 2017 at 00:01
Print Post  
"

to ja bym dał coś takiego ./skrypt.sh > /etc/motd do .bashrc
czyli loguje się
a to przy jego logowaniu wrzuca output komendy do ekranu powitalnego
pytanie czy wcześniej się zaloguje
czy będzie ekran powitalny Cheesy


"
  

Whiteman
(You need to Login or Register to view media files and links)

AMD K6 III 450 MHZ Socket7 Voodoo 2 creative 8MB
Back to top
IP Logged
 
Varus
Forum Administrator
******
Offline


3dfx Collector

Posts: 3779
Location: Opole
Joined: 08. May 2012
Gender: Male
Re: Moje linuxowe problemy
Reply #14 - 15. Nov 2017 at 17:59
Print Post  
WhitemanFX wrote on 22. Oct 2017 at 00:01:
"

to ja bym dał coś takiego ./skrypt.sh > /etc/motd do .bashrc
czyli loguje się
a to przy jego logowaniu wrzuca output komendy do ekranu powitalnego
pytanie czy wcześniej się zaloguje
czy będzie ekran powitalny Cheesy


"


To chyba nawiązanie do trybu graficznego. W konsoli też jest ekran powitalny?
  

The Administrator.
Back to top
WWW  
IP Logged
 
Page Index Toggle Pages: [1] 2 
Send TopicPrint
 
  « Board Index ‹ Board  ^Top