Saya mencoba memulai layanan yang memerlukan env. variabel yang akan diatur ke jalur tertentu. Saya mengatur variabel ini di "/etc/profile.d/". Namun ketika saya memulai layanan ini menggunakan service
perintah, itu tidak berfungsi.
layanan pria:
service runs a System V init script in as predictable environment as possible,
removing most environment variables and with current working directory set to /.
Jadi sepertinya itu service
menghapus variabel saya. Bagaimana cara mengatur variabel agar tidak dihapus. Atau itu sesuatu yang seharusnya tidak saya lakukan.
Saya bisa memulai layanan secara manual menggunakan skrip init, atau bahkan membuat hardcode path ke skrip, tapi saya ingin tahu cara menggunakannya dengan service
perintah.
Dianjurkan untuk menempatkan pengaturan konfigurasi dalam konfigurasi
/etc/sysconfig/<servicename>
yang kemudian dibaca oleh skrip init.Salam
Bram
sumber
/etc/sysconfig/<servicename>
file, Anda dapat menggunakan bashsource
untuk memuat file dari/etc/profile.d
untuk meniru lingkungan login shell.Dari
man 5 init
:Selain itu, Anda dapat melakukan
grep env /etc/init/*
untuk melihat bagaimana digunakanIni adalah output saya:
Dan untuk contoh lengkap lihat beberapa skrip itu. Di sini nginx.conf:
sumber