SORU
27 Aralık 2008, CUMARTESİ


En iyi yöntem farklı bir kullanıcı olarak Linux hizmet çalıştırmak için

RHEL kutudan açılışta hizmetleri root başlangıç için varsayılan. Eğer yanlış hatırlamıyorsam, aynı /etc/init.d ınit scriptleri kullanan diğer Linux dağıtımları için de geçerlidir.

Senin yerine işlemleri kendi seçtiğim (statik) bir kullanıcı olarak çalıştırmak için en iyi yolu nedir sizce?

Vardım tek yöntemi gibi bir şey kullanmak için:

 su my_user -c 'daemon my_cmd &>/dev/null &'

Ama bu biraz dağınık... gibi görünüyor

Sihirli bazı bit otomatik olarak Hizmetler Diğer başlatmak için kolay bir mekanizma sağlar saklanmış, kök olmayan kullanıcılar var mı?

DÜZENLEME:Bu durumda başlıyorum süreçleri de Python komut dosyaları veya Java programları olduğunu söylemeliydim. Oldukça çevrelerindeki yerel bir sarıcı yazmak istemiyorum, ne yazık ki Black anlaşılacağı gibi setuid() çağrı yapamaz oldum.

CEVAP
27 Aralık 2008, CUMARTESİ


Debian biz pıd-dosyalar işleme start-stop-daemon yardımcı kullanımı, kullanıcı değiştirme, arka plana daemon koyarak ve çok daha fazlası.

Zaten /etc/init.d/functions, btw. tanımlanan () kullandığınız RedHat, ama daemon yardımcı aşina değilim her yerde de programın uıd değiştirebilirsiniz, ya da start-stop-daemon, eşdeğer olarak anılan, ya da senin gibi zaten doğru.

Eğer net etrafınıza bakarsanız, kullanabileceğiniz çeşitli hazır ambalajı var. Hatta bazıları zaten RedHat paketlenmiş olabilir. Örneğin daemonize bir göz atın.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ASUS Campus Life

    ASUS Campus

    18 Mart 2013
  • metal571

    metal571

    30 Mayıs 2006
  • newport83

    newport83

    19 HAZİRAN 2006