Saya mencoba membuat skrip pemula sederhana untuk server timpeak, tetapi tidak dapat membuatnya berfungsi.
Ketika saya mengatakan initctl memulainya hanya dijalankan tetapi tidak pernah menyelesaikan atau bahkan memancarkan pesan apa pun. Hal yang sama terjadi untuk berhenti .
Untuk memastikan saya tidak melakukan kesalahan apa pun, saya telah menyalin skrip cron dan mencoba menjalankannya, tetapi itu terjadi sama.
apa yang saya lakukan salah di sini?
MEMPERBARUI:
inilah skrip saya untuk TS3:
# myservice - myservice job file
description "my service description"
author "Me <[email protected]>"
# Stanzas
#
# Stanzas control when and how a process is started and stopped
# See a list of stanzas here: http://upstart.ubuntu.com/wiki/Stanzas#respawn
# When to start the service
start on runlevel [2345]
# When to stop the service
stop on runlevel [016]
# Automatically restart process if crashed
respawn
# Essentially lets upstart know the process will detach itself to the background
expect fork
# Start the process
script
emit going into TS3 dir
chdir /home/danizmax/teamspeak3-server_linux-x86/
emit starting TS3
exec su -c "/home/danizmax/teamspeak3-server_linux-x86/ts3server_startscript.sh start" danizmax &
emit done
end script
Saya mencoba bahkan dengan skrip paling sederhana, dan itu juga tidak berhasil:
description "regular background program processing daemon"
start on runlevel [2345]
stop on runlevel [!2345]
expect fork
respawn
exec echo example
console output
Terima kasih untuk bantuannya.
Jawaban:
ada sejumlah keanehan dalam pekerjaan pemula Anda yang membuat saya menggaruk-garuk kepala.
1) emit bukan program yang saya tahu, jadi kecuali Anda telah menambahkannya ke jalur sistem, itu mungkin menyebabkan kesalahan. Apakah maksud Anda 'gema'? Itu mungkin juga tidak membantu, karena itu akan pergi ke konsol sistem yang mungkin tidak terlihat.
2) Dengan asumsi bait 'emit' bekerja, Anda mengatakan 'berharap garpu' tetapi kemudian benar-benar bercabang dua . Sekali untuk 'skrip', dan sekali lagi ketika skrip timpeak garpu untuk latar belakang itu sendiri.
3) Anda "su" untuk menjalankan skrip, tetapi start-stop-daemon sebenarnya lebih sederhana untuk kebanyakan kasus:
Dengan 11.10, Anda tidak perlu melakukan
chdir
skrip in, tidak yakin apakah itu ditambahkan setelah versi pemula apa pun yang Anda miliki. Periksaman 5 init
katachdir
Juga, kesalahan kemungkinan akan dilaporkan di / var / log / syslog. Anda dapat meningkatkan level kesalahan sedikit dengan menjalankan
man initctl
untuk lebih banyak level log.sumber