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

  • BachelorsPadTv

    BachelorsPad

    17 Ocak 2012
  • Snazzy Labs

    Snazzy Labs

    9 Aralık 2008
  • thenewboston

    thenewboston

    4 ŞUBAT 2008