GNU/Linux >> Belajar Linux >  >> Ubuntu

Tidak Dapat Memulai Aplikasi Sebagai Layanan, Tetapi Menjalankan Sebagai Proses Mandiri Cukup Berfungsi?

Untuk layanan meskipun file pid ada, tetapi masih ketika mencoba memulai layanan, gagal mengatakan:

$ sudo service cassandra start
* could not access pidfile for Cassandra

Saya memverifikasi izin folder di bawah /var/run (yang pemiliknya adalah root) dan subfolder cassandra dimiliki oleh pengguna cassandra, tetapi layanan tetap tidak dapat mengakses file pid meskipun saya memverifikasi bahwa file pid ada. (Juga pid dialokasikan). Jadi mengapa dikatakan tidak dapat mengakses pidfile?

Dan menjalankan cassandra sebagai proses mandiri hanya berfungsi, tetapi tidak hanya menggunakan service cassandra start

$ sudo ls -l /var/run/cassandra 
total 4 
-rw-r--r-- 1 cassandra cassandra 4 Mar 18 07:33 cassandra.pid
$ sudo su
# ls -ld /var/run/cassandra 
dr--r----- 2 cassandra cassandra 60 Mar 18 07:38 /var/run/cassandra

Bagaimana cara membuat ini berfungsi menggunakan sudo service cassandra start ?

Jawaban yang Diterima:

Anda harus menghapus /var/run/cassandra folder maka ia memiliki izin yang salah:

sudo rm -rf /var/run/cassandra

Atau Anda dapat memperbaiki izin secara manual:

sudo chmod 750 /var/run/cassandra

Kemudian mulai Cassandra sebagai layanan:

sudo service cassandra start

Beberapa penjelasan

Petunjuk tentang izin file dapat Anda temukan di sini.

  • Aman untuk menghapus folder itu karena dibuat ulang dengan izin dan konten yang tepat. Tapi jangan hapus setelah berfungsi dengan benar. Ini dapat mengakibatkan hilangnya data atau perilaku yang salah.

  • chmod 750 mendekripsi sebagai rwxr-x— izin. Ini memungkinkan read-write-execute ke pengguna, read-execute ke grup dan tidak ada apa-apa untuk orang lain. Untuk Cassandra, cukup dengan mengatur hak akses saja.


Ubuntu
  1. Layanan Systemctl Habis Saat Mulai?

  2. Apache/Mysql Tidak Berjalan. Salah?

  3. Linux:proses menjadi layanan

  1. Aplikasi boot musim semi sebagai layanan + Opsi VM

  2. Hentikan program yang berjalan saat startup di Linux

  3. Pemula :memulai layanan setelah proses non-pemula

  1. Instal Apache Cassandra di Ubuntu 20.04 - Proses Langkah demi Langkah?

  2. Mulai, Hentikan, atau Mulai Ulang Layanan di CentOS 8 - Proses Langkah demi Langkah?

  3. Pastikan Sebuah Proses Selalu Berjalan?