Bir hizmeti başlangıçta çalışacak şekilde nasıl yapılandırabilirim

El ile başlatırsam iyi çalışan bir daemonum var service komut:

ricardo@ricardo-laptop:~$ sudo service minidlna start                    * Starting minidlna minidlna                                                              [ OK ] 

ancak bilgisayar yeniden başlatıldığında otomatik olarak başlatılacak şekilde yapılandırılmamıştır.

Hiç kimse PC'ye giriş yapmamış olsa bile, otomatik olarak başlatılacak şekilde nasıl yapılandırabilirim?

sudo update-rc.d minidlna defaults

Bu, hizmeti otomatik başlatma sistemine eklemelidir. Ama eğer alırsan:

System start/stop links for /etc/init.d/minidlna already exist.

Komutu yap

sudo update-rc.d minidlna enable

P.S.: Daha fazla ayrıntı için güncelleme-rc için man sayfasına bakın.d komutu yazarak man update-rc.d

  • Başlangıçta bir daemon başlatmak için:

    update-rc.d service_name defaults
  • Kaldırmak:

    update-rc.d -f service_name remove

>defaults = varsayılan çalışma seviyeleri 2,3,4 ve 5

Örnek:

update-rc.d tomcat7 defaults

Bazen önyükleme işleminde bir komut dosyası çalıştırmanız gerekir, örneğin önyükleme işleminde bir iptables yapılandırması çalıştırın. Bu nedenle, her yeniden başlatmada komut dosyasını manuel olarak çalıştırmanız gerekmez.

Komut dosyanızı Ubuntu'da önyükleme işleminde şu adrese ekleyerek çalıştırabilirsiniz: /etc/init.d/rc.local dosya. Aşağıdaki adımlara bakın.

  1. Açık /etc/rc.local bu komutla dosya:

    vim /etc/rc.local
  2. Önyükleme işleminde çalıştırmak istediğiniz komut dosyanızı oraya ekleyin, örneğin:

    sh /home/ivan/iptables.sh echo 'Iptable Configured!'
  3. Bu dosyada bulunan yorumları gözden geçirin ve sonunda bir çıkış 0 olduğundan emin olun.

  4. Dosyaları kaydedin. Ve komut dosyanız önyükleme işlemi sırasında çalışacaktır.

Ubuntu 15.10'dan beri (resp. Debian 8 "jessie"), hizmetinizi yapılandırmak için aşağıdaki komutu kullanmanız gerekir minidlna başlangıçta çalıştırmak için:

sudo systemctl enable minidlna.service

Ve önyükleme sırasında yeniden başlatılmasını devre dışı bırakmak için:

sudo systemctl disable minidlna.service

Bu, bulabileceğiniz tüm hizmet adı başvurularıyla çalışır ls /lib/systemd/system/*.service.

Ubuntu sürüm 18.04 TLS'DE bu güncellemeyi buldum-rc.başlat komut dosyasında şöyle görünen belirli bir yorum bloğu yoksa d iyi çalışmaz:

### BEGIN INIT INFO# Provides: myprogram# Required-Start: $ local_fs $ remote_fs $ syslog $ network $ time# Required-Stop: $ local_fs $ remote_fs $ syslog $ network# Default-start: 2 3 4 5# Default-Stop: 0 1 6# Short-Description: myprogram some description### END INIT INFO

@user154721 update-rc’ye hangi argümanları verdiniz.d otomatik başlatmanın çalışmasını sağlamak için?
Çeşitli seçenekler denedim ama şansım yaver gitmedi.

Otomatik başlatma programları otomatik başlatma bildirimlerinde veya ‘*’ seçeneğinde yapılandırılır.hizmetçeşitli konumlardaki dosyaların yanı sırainit.d’ veya ‘crontab’. Bakınız: upstart - How to start application after login on CentOS? - Unix & Linux Stack Exchange