Kirjoittaja Aihe: Pääte ja ohjelman käynnistäminen [RATKAISTU]  (Luettu 6928 kertaa)

Aliengrey

  • Käyttäjä
  • Viestejä: 539
    • Profiili
Miten ohjelma käynnistettiinkään päätteellä niin että käynnistetty ohjelma ei sammu vaikka itse pääte ikkuna suljetaan.
« Viimeksi muokattu: 31.03.16 - klo:17.06 kirjoittanut Aliengrey »

welmar

  • Käyttäjä
  • Viestejä: 1582
    • Profiili
Vs: Pääte ja ohjelman käynnistäminen
« Vastaus #1 : 31.03.16 - klo:08.02 »
Esimerkiksi näin
Koodia: [Valitse]
nohup firefox&

Aliengrey

  • Käyttäjä
  • Viestejä: 539
    • Profiili
Vs: Pääte ja ohjelman käynnistäminen
« Vastaus #2 : 31.03.16 - klo:17.05 »
Joo kiitoksia, noinhan se toimii.  :)

matsukan

  • Käyttäjä
  • Viestejä: 2152
    • Profiili
Vs: Pääte ja ohjelman käynnistäminen [RATKAISTU]
« Vastaus #3 : 31.03.16 - klo:21.51 »
bash shelli:ssä (siis siinä oletusshellissä) ilmeisesti tuota nohup ei tarvita.

siis

Koodia: [Valitse]
firefox &
riittää.

Toinen tapa on käyttää screen komentoa vaikka tyyliin  :

Koodia: [Valitse]
screen -A -m -d -S somename ./somescript.sh &
« Viimeksi muokattu: 31.03.16 - klo:21.56 kirjoittanut syrtek66 »
Pohjois-pohjanmaa
-- motto:  backupin tarve huomataan aina liian myöhään

welmar

  • Käyttäjä
  • Viestejä: 1582
    • Profiili
Vs: Pääte ja ohjelman käynnistäminen [RATKAISTU]
« Vastaus #4 : 01.04.16 - klo:00.22 »
bash shelli:ssä (siis siinä oletusshellissä) ilmeisesti tuota nohup ei tarvita.

siis

Koodia: [Valitse]
firefox &
riittää.
Niin minäkin muistelin mutta kokeilin ensin ja firefox sammui samalla kuin päätekin. Käytössä tosin Fedora.

kuutio

  • Käyttäjä
  • Viestejä: 162
    • Profiili
Vs: Pääte ja ohjelman käynnistäminen [RATKAISTU]
« Vastaus #5 : 01.04.16 - klo:08.30 »
bash shelli:ssä (siis siinä oletusshellissä) ilmeisesti tuota nohup ei tarvita.

siis

Koodia: [Valitse]
firefox &
riittää.
Niin minäkin muistelin mutta kokeilin ensin ja firefox sammui samalla kuin päätekin. Käytössä tosin Fedora.
Tämä riippuu muutamasta tekijästä, mm. käytetystä shellistä, sen versiosta, shell-optioista sekä siitä miten pääte sammutetaan/sammuu (saako se itse SIGHUP signaalin).

Itse käytän zsh-ssa (pitäisi toimia myös bashin kanssa) disown:ia, esim.
Koodia: [Valitse]
firefox & disownMikä pitää ohjelman käynnissä varmemmin shellin sammuessa.

nohup on POSIX-tapa (toimii kaikissa POSIX-shelleissä), disown toimii vain joissain (kuten bash ja zsh). nohupin kanssa joutuu usein ohjailemaan tulostetta erikseen (oletuksena tallentaa $HOME/nohup.out), minkä vuoksi pidän yleensä disownia kätevämpänä (se toimii lisäksi myös jo käynnissä olevien ohjelmien "irrottamiseen" isäntäpäätteestä).

Vähän lisälukemista (englanniksi, google löytänee lisääkin):
http://unix.stackexchange.com/questions/3886/difference-between-nohup-disown-and
http://unix.stackexchange.com/questions/84737/in-which-cases-is-sighup-not-sent-to-a-job-when-you-log-out
« Viimeksi muokattu: 01.04.16 - klo:08.33 kirjoittanut kuutio »

Aliengrey

  • Käyttäjä
  • Viestejä: 539
    • Profiili
Vs: Pääte ja ohjelman käynnistäminen [RATKAISTU]
« Vastaus #6 : 01.04.16 - klo:18.24 »
Kokeilin tuota
Koodia: [Valitse]
firefox &mutta se ei toimi. Tuo welmarin mainitsema
Koodia: [Valitse]
nohup firefox&taas toimii. Käytössä mulla on Xubuntu

matsukan

  • Käyttäjä
  • Viestejä: 2152
    • Profiili
Vs: Pääte ja ohjelman käynnistäminen [RATKAISTU]
« Vastaus #7 : 01.04.16 - klo:20.45 »
mitä tämä kertoo päätteessä ?

Koodia: [Valitse]
echo $SHELL
Pohjois-pohjanmaa
-- motto:  backupin tarve huomataan aina liian myöhään

Aliengrey

  • Käyttäjä
  • Viestejä: 539
    • Profiili
Vs: Pääte ja ohjelman käynnistäminen [RATKAISTU]
« Vastaus #8 : 01.04.16 - klo:21.01 »
Koodia: [Valitse]
echo $SHELL
Koodia: [Valitse]
/bin/bash

raimo

  • Käyttäjä
  • Viestejä: 4269
  • openSUSE Tumbleweed
    • Profiili
Vs: Pääte ja ohjelman käynnistäminen [RATKAISTU]
« Vastaus #9 : 01.04.16 - klo:21.12 »
Koodia: [Valitse]
raimo@kone-1:~$ firefox &
[1] 6702
raimo@kone-1:~$ pstree | grep firefox
        |-konsole-+-bash-+-firefox-+-{Cache I/O}
        |         |      |         |-{firefox}

Mikäli ymmärrän oikein tuota, niin jos pääte (KDE Konsole) suljetaan, sulkeutuu myös firefox-prosessi.
Tietä käyden tien on vanki. Vapaa on vain umpihanki.
Aaro Hellaakoski

kuutio

  • Käyttäjä
  • Viestejä: 162
    • Profiili
Vs: Pääte ja ohjelman käynnistäminen [RATKAISTU]
« Vastaus #10 : 01.04.16 - klo:21.27 »
Koodia: [Valitse]
raimo@kone-1:~$ firefox &
[1] 6702
raimo@kone-1:~$ pstree | grep firefox
        |-konsole-+-bash-+-firefox-+-{Cache I/O}
        |         |      |         |-{firefox}

Mikäli ymmärrän oikein tuota, niin jos pääte (KDE Konsole) suljetaan, sulkeutuu myös firefox-prosessi.
Juuri näin, tämä on myös avattu noissa mainitsemissani linkeissä.

firefox & -komento laittaa firefoxin "vain" tausta-ajoon, mikä ei kaikissa tapauksissa "suojele" sitä isäntäpäätteen sulkemiselta.
1. Firefox suljetaan, jos bash itse saa SIGHUP signaalin, kuten jos konsole suljetaan. (Tällöin bash välittää SIGHUPin myös tausta-ajossa oleville prosesseille)
2. Firefoxia ei suljeta, jos bash suljetaan suoraan (ilman) SIGHUP signaalia, esim "exit" komennolla tai ctrl+d:llä. (Tällöin SIGHUPpia ei lähetetä tausta-ajossa oleville prosesseille.)

Jos haluaa varmistaa, että firefox pysyy ajossa kaikissa tapauksissa, pitää käyttää nohuppia tai disownia (tai muiden shellien vastaavaa funktiota)

Pekken

  • Käyttäjä
  • Viestejä: 255
    • Profiili
Vs: Pääte ja ohjelman käynnistäminen [RATKAISTU]
« Vastaus #11 : 02.04.16 - klo:10.14 »
Miksi pitää käynnistää päätteellä? Eikö normisti kuvakkeesta käy? Kyllä mulla pysyy ohjelmat käynnissä, vaikka päätteen suljen!!?? Ei ymmärrä!

kuutio

  • Käyttäjä
  • Viestejä: 162
    • Profiili
Vs: Pääte ja ohjelman käynnistäminen [RATKAISTU]
« Vastaus #12 : 02.04.16 - klo:10.37 »
Miksi pitää käynnistää päätteellä? Eikö normisti kuvakkeesta käy?
Kyllä tuohon päätteeltä käynnistämiseen ihan päteviä käyttötarkoituksia löytyy, kuten skriptit/automaatio tai vaikka ssh:n yli ajetut ohjelmat/komennot.

Pekken

  • Käyttäjä
  • Viestejä: 255
    • Profiili
Vs: Pääte ja ohjelman käynnistäminen [RATKAISTU]
« Vastaus #13 : 02.04.16 - klo:11.11 »
Ok! Eli enemmän kun tavis käyttäjän tarvii tietää!?

raimo

  • Käyttäjä
  • Viestejä: 4269
  • openSUSE Tumbleweed
    • Profiili
Vs: Pääte ja ohjelman käynnistäminen [RATKAISTU]
« Vastaus #14 : 02.04.16 - klo:11.17 »
Ok! Eli enemmän kun tavis käyttäjän tarvii tietää!?

Virhetilanteissa, kun joku ohjelma toimii kuten sen ei pitäisi, päätteestä käynnistäminen on hyvä keino selvittää vian syy.
Ohjelmat kun yleisesti tulostavat tekosiaan päätteeseen. Että sikäli tavallisellekin käyttäjälle (mikä se on :) ) pääte on hyödyllinen laitos.
Tietä käyden tien on vanki. Vapaa on vain umpihanki.
Aaro Hellaakoski

Pekken

  • Käyttäjä
  • Viestejä: 255
    • Profiili
Vs: Pääte ja ohjelman käynnistäminen [RATKAISTU]
« Vastaus #15 : 02.04.16 - klo:11.26 »
Juu varmasti näin, mutta esim. itsellä toiminut Ubuntu hyvin ja päätteestä asentanut ohjelmia ja tehnyt päivityksiä, mutta isompaan osaamiseen en osaa käyttää (tulkita päätteen infoja). Mutta onneksi tälle palstalle voi lähettää päätteestä ongelma tilanteita, joita pätevät osaavat ratkoa :)

Postimies

  • Käyttäjä
  • Viestejä: 2644
    • Profiili
Vs: Pääte ja ohjelman käynnistäminen [RATKAISTU]
« Vastaus #16 : 05.04.16 - klo:22.48 »
Ok! Eli enemmän kun tavis käyttäjän tarvii tietää!?
Päätteeltä käynnistää myös ohjelmia nopeammin kuin valikoista etsimällä.
Tai vaikka Amarokin nukuttaminen ~ $sleep 120m; amarok --stop.
Tapoja käyttää päätettä on loputtomasti.
Itsellä ainakin 3 välilehteä aina auki.