...

Hogyan fussanak a programok a Linux terminál bezárása után is

A Linux egyik erőssége a parancsok végrehajtásának rugalmassága a terminálon keresztül. Azonban egy gyakori kihívás, amivel a felhasználók szembesülnek, hogy a programok továbbra is fussanak a terminálablak bezárása után is.

Ebben a útmutatóban különböző módszereket vizsgálunk meg a programok háttérben való futtatására, lehetővé téve a parancsok végrehajtását egy nyitott terminálmenet nélkül.

A terminálmenetek megértése:

Amikor egy program elindul a terminálon, a jelenlegi menetben fut. A terminál bezárása általában megszünteti a menetet és az összes kapcsolódó folyamatot. Ennek a korlátnak a leküzdésére a felhasználók több stratégiát alkalmazhatnak a folyamatok leválasztására a termináltól, és azokat életben tartani még a terminálablak bezárása után is.

Tehát egyszerűbben, ha terminálból indítunk egy programot, és be akarjuk zárni a terminált, akkor is van lehetőségünk arra, hogy a program tovább fusson.

1. módszer: nohup parancs használata:

A nohup parancs (rövidítés a "no hang up" kifejezésből) egy sokoldalú eszköz a folyamatok leválasztására a termináltól. Egyszerűen illessze be a nohup-ot a parancs elé, és utána egy ampersand (&), így:

nohup your_command &

Ez a parancs közli a Linuxszal, hogy figyelmen kívül hagyja a "hang-up" jelet, ami lehetővé teszi a folyamatnak, hogy háttérben tovább fusson.

2. módszer: disown parancs használata:

Egy másik megközelítés a disown parancs használata egy feladat eltávolításához a shell feladattáblázatából. Egy parancs végrehajtása után gépelje be:

your_command & disown

Ez leválasztja a folyamatot, immunissá téve azt a hang-up jelekkel szemben.

3. módszer: screen vagy tmux:

Egy átfogóbb megoldás érdekében fontoljuk meg terminál multiplexerek, mint például a screen vagy a tmux használatát. Ezek a eszközök virtuális terminálmeneteket hoznak létre, amelyek lehetővé teszik, hogy tetszés szerint leválassza és visszacsatlakozzon a folyamatokhoz.

Screen használata:

    # Indítsa el az új screen menetet
    screen
    # Fusson le a parancs
    your_command
    # Válasszon le a screen menetről: Nyomja meg a Ctrl + A-t, majd a D-t
    # Későbbi újracsatlakozás: screen -r
  

Tmux használata:

    # Indítsa el az új tmux menetet
    tmux
    # Fusson le a parancs
    your_command
    # Válasszon le a tmux menetről: Nyomja meg a Ctrl + B-t, majd a D-t
    # Későbbi újracsatlakozás: tmux attach-session
  

4. módszer: időzített feladatokhoz at vagy cron:

Olyan feladatokhoz, amelyeket meghatározott időpontokban kell végrehajtani, használja az at parancsot vagy állítson be egy cron feladatot. Ezek az eszközök lehetővé teszik a feladatok ütemezését, amelyek még a terminál ablak bezárása után is fennmaradnak.

At használata:

    # Ütemezzen feladatot az at segítségével
    echo "your_command" | at now + 1 minute
  

Cron használata:

    # Szerkessze a crontab fájlt
    crontab -e
    # Adjon hozzá egy ütemezett feladatot
    # Példa: Fusson minden nap 2 órakor
    0 2 * * * your_command
  

A Linux számos lehetőséget kínál a programok háttérben való futtatására, mindegyik más-más forgatókönyvnek megfelelően. Legyen szó egyszerű megoldásokról, mint a nohup és a disown, vagy összetettebb lehetőségekről, mint a screen vagy a tmux, a módszerek megértése lehetővé teszi, hogy kiaknázhassuk a Linux parancssori képességeinek teljes potenciálját. Válassza ki azt a módszert, amely illeszkedik a munkafolyamatához.

Hozzászólások(0)

A hozzászóláshoz be kell jelentkezned.

Bejelentkezeés