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

  • Kevin Bruckert

    Kevin Brucke

    30 Aralık 2006
  • LG Mobile Global

    LG Mobile Gl

    2 EYLÜL 2010
  • Theodore Leaf

    Theodore Lea

    29 AĞUSTOS 2006