Saya telah berhasil menginstal TeamCity ib CentOS 6.2 Minimal. Saya terjebak mencoba menjalankan skrip secara otomatis pada startup sistem:
/opt/TeamCity/bin/teamcity-server.sh start
Saya sudah googled sekitar dan mencoba berbagai metode yang semuanya tampaknya gagal. Sebagian besar metode menunjuk ke menambahkan skrip startup ke salah satu file rc.local:
/etc/rc.d/rc.local
/etc/rc.local
Dan isi dari rc.local berisi baris:
/opt/TeamCity/bin/teamcity-server.sh start
Tidak ada yang akan memulai server teamcity
Tidak ada masalah jika saya menjalankan skrip secara manual.
Tampaknya sederhana tetapi bagaimana saya mendapatkan skrip shell untuk dijalankan secara otomatis?
centos6
shell-scripting
teamcity
atp03
sumber
sumber
Jawaban:
Jika skrip start teamcity adalah skrip init yang sesuai dengan LSB (yaitu, jika skrip ini menyediakan start , stop , dan argumen lainnya ), Anda bisa menyalin skrip ke
/etc/init.d
folder dan menjalankan (sebagai root):Tautan simbolis untuk file juga harus OK. Jadi coba (sebagai root):
Jika tidak dimulai pada inisialisasi, tetapi mulai secara manual tanpa masalah, Anda harus memeriksa:
Untuk mencetak konten PATH Anda cukup jalankan:
Untuk memeriksa apakah alasan skrip tidak dimulai adalah PATH, coba:
Perintah ini akan menghapus PATH Anda sementara dan menjalankan perintah. Jika perintah memerlukan beberapa info spesifik pada PATH itu akan gagal (hati-hati untuk menjalankan persis seperti yang dinyatakan di atas, ADA ruang antara PATH = dan sisa perintah).
sumber
dalam perintah Fedora 17
katakan: service teamcity-server tidak mendukung chkconfig Anda harus menambahkan header seperti:
hanya setelah itu jalankan perintah pertama.
sumber
/etc/init.d/
:-)Ketika skrip dijalankan secara manual, skrip ini bekerja dengan benar. Tetapi, ketika dijalankan secara otomatis itu tidak bekerja.
Saya telah menemukan pelakunya: TeamCity berjalan di bawah pengguna
teamcity
. Itu harus ada dalam/etc/sudoers
file dan Anda harus menambahkan, menggunakanvisudo
baris seperti ini:sumber