Saya baru saja memutakhirkan dari server Ubuntu 14 ke versi 15. Saya mengalami kesulitan membuat skrip pemula saya berfungsi setelah peningkatan, dan membaca bahwa systemd adalah default baru. Saya jauh dari ahli linux, jadi tolong mudahkan saya :-)
Berikut ini skrip pemula saya sebelumnya:
description "NZBGet upstart script"
setuid robert
setgid robert
start on runlevel [2345]
stop on runlevel [016]
respawn
expect fork
script
exec nzbget -D
end script
pre-stop script
exec nzbget -Q
end script
Berdasarkan halaman wiki pemula untuk systemd , saya menggunakan tabel yang disediakan di sana untuk memetakan hal-hal sedekat mungkin dalam file layanan systemd baru saya:
[Unit]
Description=NZBGet Service
[Service]
Type=forking
ExecStart=/usr/local/bin/nzbget -D
ExecStop=/usr/local/bin/nzbget -Q
Restart=on-failure
File ini terletak di /home/robert/.config/systemd/user/nzbget.service
. Untuk memulai layanan secara manual, saya telah melakukan:
$ systemctl --user start nzbget
Ini sangat bagus. Namun, ketika saya keluar dari sesi SSH saya, layanan dimatikan. Juga, ini tidak dimulai saat bootup atau login pengguna. Saya ingin berperilaku sama seperti yang dilakukan sebagai layanan pemula: Saya ingin itu mulai saat boot, berjalan terus-menerus, dan sebagai pengguna tertentu.
Apa yang harus saya lakukan untuk mendapatkan konfigurasi ini?
systemctl enable
perintah, ini tidak jelas bagi saya pada awalnya. Juga mengaktifkan memberi saya beberapa peringatan tentang[Install]
bagian yang hilang . Saya mengabaikannya, tapi saya tidak yakin apakah ini akan memengaruhi kemampuannya untuk memulai saat boot.