Saya menjalankan kotak Arch Linux (terbaru, terbaru), dan berusaha membuat MySQL untuk memulai saat boot. Dengan paket systemd terinstal, saya memiliki systemctl tersedia, dan karena itu saya dapat melakukan hal-hal seperti ini:
systemctl start mysqld.service
systemctl [stop|status|restart] mysqld.service
Semua baik-baik saja, dan berfungsi dengan baik ketika saya ingin memulai / berhenti secara manual, namun, ketika datang untuk memulainya saat boot (dengan menggunakan 'aktifkan' pada systemctl, saya mendapatkan beberapa keluaran buruk):
[root@rudivarch ~]# systemctl enable mysqld.service
Failed to issue method call: No such file or directory
Jelas, karena perintah lain bekerja dengan baik, saya benar-benar bingung dengan ini dan telah menghabiskan banyak waktu sambil mencoba mencari tahu ... keluaran status systemctl ini:
[root@rudivarch ~]# systemctl status mysqld.service
mysqld.service
Loaded: loaded (/etc/rc.d/mysqld)
Active: inactive (dead) since Tue, 31 Jan 2012 15:32:28 +0000; 1min 25s ago
Process: 589 ExecStop=/etc/rc.d/mysqld stop (code=exited, status=0/SUCCESS)
Process: 257 ExecStart=/etc/rc.d/mysqld start (code=exited, status=0/SUCCESS)
CGroup: name=systemd:/system/mysqld.service
Adakah yang tahu mengapa 'mengaktifkan' tidak berfungsi?
sumber
@Grawity jawaban benar dan mungkin lebih baik dari ini, tapi saya menyelesaikannya kemarin pada dasarnya dengan melewati skrip rc.d ...
/lib/systemd/system/mysqld.service
sumber
Nota bene: Ingatlah untuk meletakkan file unit khusus host di bawah
/etc/systemd/system/
dan BUKAN/lib/systemd/system/
.Yang terakhir adalah untuk hal-hal khusus distro; yang pertama adalah untuk hal-hal khusus host yang Anda konfigurasikan sendiri. Ini seperti
/usr/bin/
vs/usr/local/bin/
, masing-masing.Jadi, kecuali sebuah paket menginstal file unit dengan sendirinya (di bawah
/lib/systemd/system/
), letakkan barang "custom" Anda sendiri di bawah/etc/systemd/system/
.sumber
Aktifkan adalah untuk mengaktifkan "unit" alias layanan daemon alias saat startup dari
systemd
.OpenSUSE:
sumber
Pada sistem FC15 saya, ketika saya menjalankan 'systemctl enable mysqld.service', secara otomatis kembali dengan:
Jadi coba jalankan:
/sbin/chkconfig mysqld on
sumber
Jika Anda punya ... saat mengaktifkan unit layanan Anda, salin ke / etc / systemd / system
Untuk mengaktifkan unit layanan Anda, tambahkan di bawah ... sehingga Anda dapat mengaktifkan sistem mysqld.service (ini memungkinkan di setiap namespace pengguna)
Cheers, sugatang itlog
sumber