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

  • fufko

    fufko

    27 ŞUBAT 2006
  • jedimasterkyle

    jedimasterky

    11 ŞUBAT 2006
  • SuicideSheeep

    SuicideSheee

    8 Ocak 2012