Hapus layanan dari pemula

9

Saya telah menginstal mysql (dari repos) pada mesin pengembangan (laptop) dan saya tidak perlu daemon berjalan pada setiap boot. Saya telah menyalin /etc/init/mysql.conf ke /etc/init/mysql.conf.old dan kemudian menghapus semua yang mengikuti baris "mulai". Namun, setelah reboot, saya tidak bisa lagi memulai mysqld melalui pemula:

$ sudo service mysql start
start: Unknown job: mysql

Ini juga gagal (mencoba apa pun pada saat ini):

$ sudo service mysql restart
stop: Unknown job: mysql
start: Unknown job: mysql

Ini adalah skrip pemula saya:

# /etc/init/mysql.conf
....
start on
stop on starting rc RUNLEVEL=[016]

Ini adalah skrip default:

# /etc/init/mysql.conf.old
....
start on runlevel [2345]
stop on starting rc RUNLEVEL=[016]

Semua yang saya baca sampai sekarang menunjukkan bahwa ini adalah bagaimana layanan dapat dicegah mulai saat boot. Apakah ada cara yang lebih baik untuk melakukan ini atau apakah saya membuat kesalahan dalam skrip pemula?

UPDATE : Saya telah memindahkan file conf cadangan dari / etc / init dan reboot berpikir bahwa mungkin ada konflik tetapi pemula masih mengatakanUnknown job: mysql

xst
sumber
Periksa / var / log / syslog, ini mungkin akan memberi tahu Anda ada masalah sintaks di /etc/init/mysql.conf. Anda juga dapat mencoba 'init-checkconf /etc/init/mysql.conf'
SpamapS

Jawaban:

17

Jika Anda menggunakan Ubuntu 11.04 atau lebih baru, Anda dapat menggunakan manualkata kunci dan file .override di / etc / init untuk menonaktifkan mulai otomatis:

sudo sh -c 'echo manual >> /etc/init/mysql.override'

manualsecara efektif menghilangkan start onbait dari konfigurasi pekerjaan.

Jika Anda menggunakan Ubuntu 10,04, Anda dapat melakukan ini:

sudo sh -c 'echo start on never >> /etc/init/mysql.conf'

Yang terakhir start on dalam file akan menimpa yang sebelumnya, jadi ini harus bekerja, meskipun diasumsikan tidak ada peristiwa yang dipanggil never.

SpamapS
sumber
0

Dari pos ini : Bagian "mulai" perlu lengkap dan benar dalam sintaks.

start on runlevel [!0123456]

Baris ini berarti mengeksekusi ketika level run tidak dalam [0,1,2,3,4,5,6] (itu adalah satu-satunya runlevel, jadi ini tidak pernah dijalankan).

Opsi lain menggunakan chkconfigper posting ini .

xst
sumber