Müzakirə

Linux Python Script Arka Planda Çalıştırma

Başladan CyberReis · 28 avq 2026 04:11 · 3 Baxış · 0 Cavablar
Mövzunu Açan #0
Python scriptlerini Linux sistemlerde arka planda çalıştırmak, genellikle sunucu uygulamaları veya uzun süreli işlemler için gereklidir. Bu işlem, terminalden çıkarken scriptin çalışmaya devam etmesini sağlar. Arka planda çalıştırma işlemi için birkaç farklı yöntem bulunmaktadır. İşte en yaygın yöntemler:

  • nohup Komutu:
    nohup (no hang up) komutu, terminalden çıkıldığında bile çalışmaya devam etmesini sağlar. Kullanım şekli şöyle:
    CODE
    12  
    nohup python script.py &  
    

    Bu komut, script.py adlı Python dosyasını arka planda başlatır ve terminalden çıkıldığında bile çalışmaya devam eder. Çıktılar nohup.out dosyasına kaydedilir.

  • & Operatörü:
    Bir başka basit yöntem, scripti arka planda çalıştırmak için komutun sonuna & eklemektir:
    CODE
    12  
    python script.py &  
    

    Bu yöntemle script, terminalden bağımsız olarak çalışır, ancak terminal kapatıldığında sonlanabilir.

  • screen veya tmux Kullanımı:
    screen ve tmux gibi terminal çoklayıcıları, oturumları yönetmek için idealdir. Bu araçlar, bir terminal oturumu açmanıza ve bu oturumu arka planda çalıştırmanıza olanak sağlar. Örneğin, screen ile yeni bir oturum başlatmak için:
    CODE
    123  
    screen -S mysession  
    python script.py  
    

    Ardından Ctrl+A ve D tuşlarına basarak oturumu arka plana alabilirsiniz. Oturuma tekrar erişmek için:
    CODE
    12  
    screen -r mysession  
    


  • systemd Servisi:
    Uzun süreli çalışan Python uygulamaları için systemd servisi oluşturmak, scriptlerinizi yönetmenin en iyi yollarından biridir. Servis dosyası genellikle /etc/systemd/system/ dizinine kaydedilir. Aşağıda basit bir örnek verilmiştir:
    CODE
    1234567891011  
    [Unit]  
    Description=My Python Script  
    
    [Service]  
    ExecStart=/usr/bin/python /path/to/script.py  
    WorkingDirectory=/path/to  
    Restart=always  
    
    [Install]  
    WantedBy=multi-user.target  
    

    Bu dosyayı my_script.service olarak kaydettikten sonra, servisi etkinleştirmek için:
    CODE
    123  
    sudo systemctl enable my_script.service  
    sudo systemctl start my_script.service  
    

Bu yöntemlerden biri veya birkaçı, Python scriptlerinizi Linux ortamında arka planda çalıştırmak için etkili bir yol sunar. Her yöntemin kendi avantajları ve dezavantajları vardır, bu nedenle kullanım amacınıza uygun olanı seçmek önemlidir.

Cavab vermək üçün daxil olmalısınız.

0 sitat seçildi